功能说明
App 后台可以通过该回调实时查看房间用户上下线状态变更。
注意事项
要启用回调,必须配置回调 URL,并打开本条回调协议对应的开关,配置方法详见 第三方回调配置 文档。
回调的方向是 Live 后台向 App 后台发起 HTTP POST 请求。
App 后台在收到回调请求之后,务必校验请求 URL 中的参数 SDKAppID 是否是自己的 SDKAppID。
房间一旦解散后,该房间对应的成员状态变更回调就会立刻停止。
可能触发该回调的场景
用户调用 SDK 接口进入房间,离开房间。
用户房间心跳超时和心跳恢复。
回调发生时机
房间创建成功之后。
接口说明
请求 URL 示例
以下示例中 App 配置的回调 URL 为
https://www.example.com。
示例:https://www.example.com?SdkAppid=$SDKAppID&CallbackCommand=$CallbackCommand&contenttype=json
请求参数说明
参数 | 说明 |
https | 请求协议为 HTTPS,请求方式为 POST。 |
www.example.com | 回调 URL。 |
SdkAppid | 创建应用时在即时通信 IM 控制台分配的 SDKAppID。 |
CallbackCommand | 固定为 Live.CallbackAfterMemberStateChanged。 |
contenttype | 固定值为 JSON。 |
请求包示例
{"CallbackCommand":"Live.CallbackAfterMemberStateChanged","RoomId":"room_id","EventType":"Online", //Online, Offline 上下线两种"EventCause":"Enter", //分为以下四种 进房 Enter, 退房 Leave, 心跳断线 HeartbeatInterrupt, 心跳恢复 HeartbeatRecover"MemberList":[{"Member_Account": "jared"},{"Member_Account": "tommy"}],"EventTime":1703589922780}
请求包字段说明
字段 | 类型 | 说明 |
CallbackCommand | String | 回调命令。 |
RoomId | String | 房间 ID。 |
EventType | String | 事件类型,分为房间成员上线和下线两种:Online,Offline。 |
EventCause | String | 事件缘由,分为以下四种 进房 Enter,退房 Leave,心跳断线 HeartbeatInterrupt,心跳恢复 HeartbeatRecover。 |
MemberList | Array | 涉及的成员列表。 |
Member_Account | String | 账号 ID。 |
EventTime | Integer | 事件触发的毫秒级别时间戳。 |
应答包示例
App 后台同步数据后,发送回调应答包。
{"ActionStatus": "OK","ErrorInfo": "","ErrorCode": 0 // 忽略回调结果}
应答包字段说明
字段 | 类型 | 属性 | 说明 |
ActionStatus | String | 必填 | 请求处理的结果,OK 表示处理成功,FAIL 表示失败。 |
ErrorCode | Integer | 必填 | 错误码,此处填0表示忽略应答结果。 |
ErrorInfo | String | 必填 | 错误信息。 |
参考
第三方回调简介