功能说明
App 后台可以通过该回调实时查看麦位列表变更消息。
注意事项
要启用回调,必须配置回调 URL,并打开本条回调协议对应的开关,配置方法详见 第三方回调配置 文档。
回调的方向是Room 后台向 App 后台发起 HTTP POST 请求。
App 后台在收到回调请求之后,务必校验请求 URL 中的参数 SDKAppID 是否是自己的 SDKAppID。
可能触发该回调的场景
App 用户上下麦。
操作麦位锁定。
回调发生时机
麦位信息变更之后。
接口说明
请求 URL 示例
以下示例中 App 配置的回调 URL 为
https://www.example.com
。
示例:https://www.example.com?SdkAppid=$SDKAppID&CallbackCommand=$CallbackCommand&contenttype=json&ClientIP=$ClientIP&OptPlatform=$OptPlatform
请求参数说明
参数 | 说明 |
https | 请求协议为 HTTPS,请求方式为 POST |
www.example.com | 回调 URL |
SdkAppid | 创建应用时在即时通信 IM 控制台分配的 SDKAppID |
CallbackCommand | 固定为 Mic.CallbackAfterSeatInfoChanged |
contenttype | 固定值为 JSON |
ClientIP | 客户端 IP,格式例如:127.0.0.1 |
OptPlatform |
请求包示例
{"CallbackCommand":"Mic.CallbackAfterSeatInfoChanged","Operator_Account":"user1","RoomId":"rid-123","SeatList":[{// 麦位编号"Index": 1,// 如果当前麦位有人占用,则返回对应用户的 ID"Member_Account": 144115233775727695,// false:允许上麦 true:禁止上麦"IsTakenDisabled": false,// false:允许推视频流 true:禁止推视频流"IsVideoDisabled": false,// false:允许推音频流 true:禁止推音频流"IsAudioDisabled": false}]"EventTime":1670574414123//毫秒级别,事件触发时间戳}
请求包字段说明
字段 | 类型 | 说明 |
CallbackCommand | String | 回调命令 |
Operator_Account | String | 发起请求的操作者 UserID |
RoomId | String | 房间 ID |
SeatList | Array | 麦位列表 |
Index | Integer | 麦位号 |
Member_Account | String | 麦位上的用户 ID,空表示麦上没有用户 |
IsTakenDisabled | Bool | 麦位锁定 |
IsVideoDisabled | Bool | 禁止麦位视频流 |
IsAudioDisabled | Bool | 禁止麦位音频流 |
应答包示例
App 后台同步数据后,发送回调应答包。
{"ActionStatus": "OK","ErrorInfo": "","ErrorCode": 0 // 忽略回调结果}
应答包字段说明
字段 | 类型 | 属性 | 说明 |
ActionStatus | String | 必填 | 请求处理的结果: OK:表示处理成功 FAIL:表示失败 |
ErrorCode | Integer | 必填 | 错误码,此处填0表示忽略应答结果 |
ErrorInfo | String | 必填 | 错误信息 |
参考
第三方回调简介