本文档详细说明机器人回调时传递的数据结构,适用于所有第三方平台集成(如 Coze、Dify 等)。
回调事件类型说明
回调事件类型及其触发条件请参考文档 回调事件类型列表。
回调消息类型说明
objectName 表示回调事件 的消息类型。仅支持以下消息类型:
参数结构说明
基础字段
| 参数路径 | 类型 | 说明 |
|---|
type | String | 事件类型 |
timestamp | Number | 事件触发时间(Unix 毫秒) |
bot.userId | String | 机器人用户 ID |
bot.name | String | 机器人名称 |
bot.profileUrl | String | 机器人头像 URL |
bot.type | String | 机器人类型 |
bot.metadata.{key} | String | 机器人自定义元数据,采用 Map key 扁平化方式 |
message:private 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 来源用户 ID |
data.toUserId | String | 接收方 ID,通常为机器人自身 ID |
data.objectName | String | 消息类型,例如文本消息 RC:TxtMsg、图片消息 RC:ImgMsg |
data.channelType | String | 会话类型。PERSON(二人会话)、PERSONS(讨论组会话)、GROUP(群组会话)、TEMPGROUP(聊天室会话)、CUSTOMERSERVICE(客服会话)、NOTIFY(系统通知)、MC(应用公众服务)、MP(公众服务)、 ULTRAGROUP(超级群服务) |
data.msgTimestamp | Number | 消息时间戳 |
data.msgUID | String | 消息唯一 ID |
data.extraContent | String | 附加消息内容 |
message:group_mentioned 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 来源用户 ID |
data.toUserId | String | 群聊 ID |
data.objectName | String | 消息类型,例如文本消息 RC:TxtMsg、图片消息 RC:ImgMsg |
data.channelType | String | 会话类型。PERSON(二人会话)、PERSONS(讨论组会话)、GROUP(群组会话)、TEMPGROUP(聊天室会话)、CUSTOMERSERVICE(客服会话)、NOTIFY(系统通知)、MC(应用公众服务)、MP(公众服务)、 ULTRAGROUP(超级群服务) |
data.msgTimestamp | Number | 消息时间戳 |
data.msgUID | String | 消息唯一 ID |
data.extraContent | String | 附加消息内容 |
message:private:proxy 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 来源用户 ID |
data.toUserId | String | 接收方 ID,被代聊用户 |
data.objectName | String | 消息类型,例如文本消息 RC:TxtMsg、图片消息 RC:ImgMsg |
data.channelType | String | 会话类型。PERSON(二人会话)、PERSONS(讨论组会话)、GROUP(群组会话)、TEMPGROUP(聊天室会话)、CUSTOMERSERVICE(客服会话)、NOTIFY(系统通知)、MC(应用公众服务)、MP(公众服务)、 ULTRAGROUP(超级群服务) |
data.msgTimestamp | Number | 消息时间戳 |
data.msgUID | String | 消息唯一 ID |
data.extraContent | String | 附加消息内容 |
message:private_recall 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 来源用户 ID |
data.fromUserName | String | 来源用户昵称 |
data.channelType | String | 会话类型。PERSON(二人会话)、PERSONS(讨论组会话)、GROUP(群组会话)、TEMPGROUP(聊天室会话)、CUSTOMERSERVICE(客服会话)、NOTIFY(系统通知)、MC(应用公众服务)、MP(公众服务)、 ULTRAGROUP(超级群服务) |
data.msgTimestamp | Number | 消息撤回时间戳 |
data.msgUID | String | 撤回的消息唯一 ID |
data.extra | String | 附加内容字段 |
data.isDelete | Number | 指定移动端接收方是否需要在本地删除原始消息记录并显示撤回消息提示,默认为 0。0:移动端接收方仅将原始消息内容替换为撤回提示(小灰条通知),不删除该原始消息记录;1:移动端接收方会删除原始消息记录,不显示撤回提示(小灰条通知)。 |
data.isAdmin | Number | 是否为管理员,默认为 0,设为 1 时,IMKit 收到此条消息后,小灰条默认显示为"管理员撤回了一条消息"。 |
message:group_mentioned_recall 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 来源用户 ID |
data.fromUserName | String | 来源用户昵称 |
data.toUserId | String | 群聊 ID |
data.groupName | String | 群聊名称 |
data.channelType | String | 会话类型。PERSON(二人会话)、PERSONS(讨论组会话)、GROUP(群组会话)、TEMPGROUP(聊天室会话)、CUSTOMERSERVICE(客服会话)、NOTIFY(系统通知)、MC(应用公众服务)、MP(公众服务)、 ULTRAGROUP(超级群服务) |
data.msgTimestamp | Number | 消息撤回时间戳 |
data.msgUID | String | 撤回的消息唯一 ID |
data.extra | String | 附加内容字段 |
data.isDelete | Number | 指定移动端接收方是否需要在本地删除原始消息记录并显示撤回消息提示,默认为 0。0:移动端接收方仅将原始消息内容替换为撤回提示(小灰条通知),不删除该原始消息记录;1:移动端接收方会删除原始消息记录,不显示撤回提示(小灰条通知)。 |
data.isAdmin | Number | 是否为管理员,默认为 0,设为 1 时,IMKit 收到此条消息后,小灰条默认显示为"管理员撤回了一条消息"。 |
message:private_read 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 已读消息的用户 ID |
data.fromUserName | String | 已读消息的用户昵称 |
data.msgUIDs | Array[String][String] | 已读消息 ID 列表 |
data.msgTimestamp | Number | 消息已读时间,Unix 毫秒时间戳 |
message:group_read 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 已读消息的用户 ID |
data.fromUserName | String | 已读消息的用户昵称 |
data.groupId | String | 群聊 ID |
data.groupName | String | 群聊名称 |
data.msgUIDs | Array[String][String] | 已读消息 ID 列表 |
data.msgTimestamp | Number | 消息已读时间,Unix 毫秒时间戳 |
group:bot_join 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 操作者用户 ID |
data.fromUserName | String | 操作者用户昵称 |
data.groupId | String | 群聊 ID |
data.groupName | String | 群聊名称 |
data.msgTimestamp | Number | 加入时间,Unix 毫秒时间戳 |
group:bot_left 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 操作者用户 ID |
data.fromUserName | String | 操作者用户昵称 |
data.groupId | String | 群聊 ID |
data.groupName | String | 群聊名称 |
data.msgTimestamp | Number | 离开时间,Unix 毫秒时间戳 |
group:dismiss 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 操作者用户 ID |
data.fromUserName | String | 操作者用户昵称 |
data.groupId | String | 群聊 ID |
data.groupName | String | 群聊名称 |
data.msgTimestamp | Number | 解散时间,Unix 毫秒时间戳 |
group:user_join 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 操作者用户 ID |
data.fromUserName | String | 操作者用户昵称 |
data.groupId | String | 群聊 ID |
data.groupName | String | 群聊名称 |
data.msgTimestamp | Number | 加入时间,Unix 毫秒时间戳 |
data.userInfos | JSONArray | 加入用户的对象集合 |
data.userInfos[i].userId | String | 加入用户的 ID |
data.userInfos[i].userName | String | 加入用户的昵称 |
data.userInfos[i].isBot | Number | 是否为机器人,0:否,1:是 |
group:user_left 类型
| 参数路径 | 类型 | 说明 |
|---|
data.fromUserId | String | 操作者用户 ID |
data.fromUserName | String | 操作者用户昵称 |
data.groupId | String | 群聊 ID |
data.groupName | String | 群聊名称 |
data.msgTimestamp | Number | 离开时间,Unix 毫秒时间戳 |
data.userInfos | JSONArray | 退出用户的对象集合 |
data.userInfos[i].userId | String | 退出用户的 ID |
data.userInfos[i].userName | String | 退出用户的昵称 |
data.userInfos[i].isBot | Number | 是否为机器人,0:否,1:是 |
使用说明
以上参数会根据不同的第三方平台集成方式,以不同的格式传递给对应的平台。具体的参数传递方式和使用方法,请参考各平台的集成文档: