Event

data class Event<out EX : EventExtra>(val d: Event<EX>, val sn: Int) : Signal(source)

信令0 - Event

  • 方向: server->client

  • 说明: 在正常连接状态下,收到的消息事件等。 参数列表: 具体参见 Event

注意:该消息会有 sn, 代表消息序号, 针对当前 session 的消息的序号, 客户端需记录该数字,并按顺序接收消息, resume 时需传入该参数才能完成。

注意事项:

  • 收到消息时需要按照 sn 顺序处理, 服务端会尽可能保证 sn 的顺序性

  • 假设收到消息的 sn 出现乱序, 需要先存入暂存区 (buffer) 等待正确的 sn 消息处理后再从暂存区顺序处理

  • 假设收到了一条已处理过的 sn 的消息, 则直接抛弃不处理

  • 客户端需要存储当前已处理成功的最大的 sn, 待心跳 ping 时回传服务端, 如果服务端发现当前客户端最新处理成功的消息 sn 落后于最新消息 (丢包等异常情况), 服务端将会按照客户端指定的 sn 将之后所有最新的消息重传给客户端.

  • 消息内容与 webhook 保持一致

{
"s": 0,
"d": {
// 参见event
},
"sn": 1000
}

Constructors

Link copied to clipboard
constructor(d: Event<EX>, sn: Int)

Properties

Link copied to clipboard
open override val d: Event<EX>

信令数据。

Link copied to clipboard
val data: Event<EX>

d 的别名。

Link copied to clipboard
open override val s: Int

信令类型。

Link copied to clipboard
val sn: Int