信令类消息格式
即时通讯服务预定义了信令消息,仅用于 SDK 在实现自身业务功能时使用。开发者不需要对其做任何处理。
命令消息
即时通讯服务定义了 ObjectName 为 RC:CmdMsg
的命令消息。与命令提醒消息(RC:CmdNtf
)的区别是命令消息不存储,也不会在界面上显示。
调用服务端 API 发送消息时,必须指定 ObjectName,并将对应类型的消息内容 JSON 对象序列化为 JSON String,放入 API 接口的 content
字段中。客户端 SDK 中已内置该消息类型,可直接调用相关方法发送。
运营平台向终端发送指令信息时可使用此命令消息。
命令消息包含的「消息内容」为 JSON 对象,结构如下:
{
"name":"AtPerson",
"data":"{\"sourceId\":\"9527\"}"
}
内容结构参数
命令消息内容结构参数如下表所示:
名称 | 类型 | 必传 | 说明 |
---|---|---|---|
name | String | 是 | 命令名称,可以自行定义。 |
data | String | 是 | 命令的内容。 |
客户端默认属性
- 不会在客户端本地存储
- 不 计入会话消息未读数
- 默认未支持远程推送通知:即时通讯服务端没有为该消息类型预置推送通知标题和通知内容。如果需要在收件人不在线触发远程推送通知,请在发送消息时传入自定义的推送通知内容。
撤回命令消息
即时通讯服务定义了 ObjectName 为 RC:RcCmd
的撤回命令消息。
客户端 SDK 中已内置该消息类型。调用客户端撤回消息的 API 时,SDK 内部发送该消息。不建议客户直接发送该消息。
内容结构参数
命令消息内容结构参数如下表所示:
名称 | 类型 | 必传 | 说明 |
---|---|---|---|
MessageUId | String | 是 | 消息 UID,为服务端生成的全局唯一 ID。 |
TargetId | String | 是 | 会话 ID。 |
ChannelId | String | 是 | 超级群频道 ID。 |
SentTime | String | 是 | 消息发送时间。 |
ConversationType | String | 是 | 会话类型。 |
isAdmin | boolean | 是 | 是否是管理员操作。 |
isDelete | boolean | 是 | 指定移动端接收方是否需要从本地删除原始消息记录。为 false 时,移动端不会删除原始消息记录,会将消息内容替换为撤回提示(小灰条通知)。为 true 时,移动端会删除原始消息记录,不显示撤回提示(小灰条通知)。Web 端撤回消息接口从 SDK 5.3.1 版本开始支持该参数。 |
客户端默认属性
- 不会在客户端本地存储
- 不计入会话消息未读数
- 默认已支持远程消息推送:
- 推送通知标题:单聊与系统会话消息的推送标题默认为发送者昵称。群组与超级群的推送标题默认为群名称。默认使用注册用户或创建群组时传入即时通讯服务端的数据。您可以在发送消息时自行指定推送标题。发消息时指定的推送标题具有最高优先级。
- 推送通知内容:默认中文推送内容为固定字符串:[撤回了一条消息]。如果为群聊或超级群消息,会带上发送者昵称前缀,例如:发送者昵称:[撤回了一条消息]。可在撤回消息时自定义推送内容。
已读通知消息
即时通讯服务定义了 ObjectName 为 RC:ReadNtf
的已读通知消息。
调用服务端 API 发送消息时,必须指定 ObjectName,并将对应类型的消息内容 JSON 对象序列化为 JSON String,放入 API 接口的 content
字段中。客户端 SDK 中已内置该消息类型,可直接调用相关方法发送。
用来发送消息已经被接收到的状态消息,客户端收到消息后不计入未读消息数、不存储,此类型消息没有 Push 通知。
已读通知消息包含的「消息内容」为 JSON 对象,结构如下:
{
"lastMessageSendTime":1408706337,
"messageUId":"XXXXXX",
"type":1
}
内容结构参数
已读通知消息内容结构参数如下表所示:
名称 | 类型 | 必传 | 说明 |
---|---|---|---|
lastMessageSendTime | Int | 是 | 已读的最后一条消息的发送时间。 |
messageUId | String | 是 | 已读的最后一条消息的 UId,消息唯一标识。详见表格下方的 messageUId 说明。 |
type | Int | 是 | 会话类型,目前该消息只支持单聊会话,类型为 1。 |
messageUId
说明
- 从 Web 端发出的已读通知消息默认包含
messageUId
字段。 - 从 Android / iOS 等移动端发出的已读通知消息默认不含
messageUId
字段。
客户端默认属性
- 不会在客户端本地存储
- 不计入会话消息未读数
- 默认未支持远程推送通知:即时通讯服务端没有为该消息类型预置推送通知标题和通知内容。如果需要在收件人不在线触发远程推送通知,请在发送消息时传入自定义的推送通知内容。
群聊已读回执请求消息
即时通讯服务定义了 ObjectName 为 RC:RRReqMsg
的群聊已读回执请求消息。
调用服务端 API 发送消息时,必须指定 ObjectName,并将对应类型的消息内容 JSON 对象序列化为 JSON String,放入 API 接口的 content
字段中。客户端 SDK 中已内置该消息类型,可直接调用相关方法发送。
群组中发送一条消息,需要获取此条消息的已读回执时,可向群组中发送已读请求消息。用户收到此条消息后,当指定消息已读后,会向消息发送用户发送已读状态消息。
群聊已读回执请求消息包含的「消息内容」为 JSON 对象,结构如下:
{
"messageUId":"596E-P5PG-4FS2-7OJK"
}
内容结构参数
群聊已读回执请求消息内容结构参数如下表所示:
名称 | 类型 | 必传 | 说明 |
---|---|---|---|
messageUId | String | 是 | 需要请求已读回执消息的消息 ID |
客户端默认属性
- 不会在客户端本地存储
- 不计入会话消息未读数
- 默认未支持远程推送通知:即时通讯服务端没有为该消息类型预置推送通知标题和通知内容。如果需要在收件人不在线触发远程推送通知,请在发送消息时传入自定义的推送通知内容。
群聊已读回执响应消息
即时通讯服务定义了 ObjectName 为 RC:RRRspMsg
的群聊已读回执响应消息。
调用服务端 API 发送消息时,必须指定 ObjectName,并将对应类型的消息内容 JSON 对象序列化为 JSON String,放入 API 接口的 content
字段中。客户端 SDK 中已内置该消息类型,可直接调用相关方法发送。
用来发送群组中已读的消息状态,客户端收到消息后不计入未读消息数、不存储。
群聊已读回执响应消息包含的「消息内容」为 JSON 对象,结构如下:
{
"receiptMessageDic":{"wX7zFv8dR":["BJN3-LSG0-7MUC-OR7A"]}
}
内容结构参数
群聊已读回执响应消息内容结构参数如下表所示:
名称 | 类型 | 必传 | 说明 |
---|---|---|---|
receiptMessageDic | String | 是 | 需要回执的消息的字典,Key 为发送者 userId ,Value 是该用户需要回执的消息的 MessageUId 的数组。 |
客户端默认属性
- 不会在客户端本地存储
- 不计入会话消息未读数
- 默认未支持远程推送通知:即时通讯服务端没有为该消息类型预置推送通知标题和通知内容。如果需要在收件人不在线触发远程推送通知,请在发送消息时传入自定义的推送通知内容。
多端已读状态同步消息
即时通讯服务定义了 ObjectName 为 RC:SRSMsg
的多端已读状态同步消息。
调用服务端 API 发送消息时,必须指定 ObjectName,并将对应类型的消息内容 JSON 对象序列化为 JSON String,放入 API 接口的 content
字段中。客户端 SDK 中已内置该消息类型,可直接调用相关方法发送。
用户多端时,一端消息已读后,同步到另一端的已读通知消息。
多端已读状态同步消息包含的「消息内容」为 JSON 对象,结构如下:
{
"lastMessageSendTime":1610941689734
}
内容结构参数
多端已读状态同步消息内容结构参数如下表所示:
名称 | 类型 | 必传 | 说明 |
---|---|---|---|
lastMessageSendTime | Int | 是 | 已读的最后一条消息的发送时间 |
客户端默认属性
- 不会在客户端本地存储
- 不计入会话消息未读数
- 默认未支持远程推送通知:即时通讯服务端没有为该消息类型预置推送通知标题和通知内容。如果需要在收件人不在线触发远程推送通知,请在发送消息时传入自定义的推送通知内容。
聊天室属性通知消息
即时通讯服务定义了 ObjectName 为 RC:chrmKVNotiMsg
的聊天室属性通知消息。
调用服务端 API 发送消息时,必须指定 ObjectName,并将对应类型的消息内容 JSON 对象序列化为 JSON String,放入 API 接口的 content
字段中。客户端 SDK 中已内置该消息类型,可直接调用相关方法发送。
聊天室属性通知消息包含的「消息内容」为 JSON 对象,结构如下:
{
"type":1,
"key":"name",
"value":"主播",
"extra":""
}
内容结构参数
聊天室属性通知消息内容结构参数如下表所示:
名称 | 类型 | 必传 | 说明 |
---|---|---|---|
type | Int |