After the Seat List Is Changed
Feature Overview
The app backend can view microphone position list change messages in real-time through this callback.
Notes
To enable the callback, a callback URL must be configured and the switch corresponding to this callback protocol activated. For configuration methods, see Third-party Callback Configuration document.
During this callback, the Room backend initiates an HTTP POST request to the app backend.
After receiving the callback request, the app backend must check whether the SDKAppID contained in the request URL is consistent with its own SDKAppID.
Scenarios that may trigger this callback
App user mutes/unmutes microphone.
Operate microphone position lock.
Callback Trigger Time
After microphone position information changes.
API description
Sample request URL
In the following example, the callback URL configured in the app is
https://www.example.com
.
Example:https://www.example.com?SdkAppid=$SDKAppID&CallbackCommand=$CallbackCommand&contenttype=json&ClientIP=$ClientIP&OptPlatform=$OptPlatform
Request parameters
Parameter | Description |
https | The request protocol is HTTPS, and the request method is POST |
www.example.com | Callback URL |
SdkAppid | SDKAppID assigned by the Chat console when an application is created |
CallbackCommand | Fixed to Mic.CallbackAfterSeatInfoChanged |
contenttype | Fixed value: JSON |
ClientIP | Client IP, such as 127.0.0.1 |
OptPlatform | Client platform, refer to Webhook Overview: Callback Protocol for the meaning of OptPlatform parameters |
Sample request packets
{"CallbackCommand":"Mic.CallbackAfterSeatInfoChanged","RoomId":"rid-123","SeatList":[{// Seat Number"Index": 1,// If the current microphone position is occupied, the corresponding user's ID will be returned. Otherwise, this field will not be set"Member_Account": 144115233775727695,// false: Mic access allowed true: Mic access prohibited"IsTakenDisabled": false,// false: Pushing video stream allowed true: Pushing video stream prohibited"IsVideoDisabled": false,// false: Allow audio stream push true: Prohibit audio stream push"IsAudioDisabled": false}]"EventTime":1670574414123// Millisecond level, event trigger timestamp}
Request packet fields
Field | Type | Description |
CallbackCommand | String | Callback command |
RoomId | String | Room ID |
SeatList | Array | Microphone Position List |
Index | Integer | Microphone Position Number |
Member_Account | String | The user ID on the microphone position. If not available, this field will not be set |
IsTakenDisabled | Bool | Lock Microphone Position |
IsVideoDisabled | Bool | Prohibit microphone video stream |
IsAudioDisabled | Bool | Prohibit microphone audio stream |
Response packet example
A callback response packet is sent after the app backend synchronizes the data.
{"ActionStatus": "OK","ErrorInfo": "","ErrorCode": 0 // Ignore callback result}
Response Packet Field Description
Field | Type | Attribute | Description |
ActionStatus | String | Mandatory | The result of the request process: OK indicates success; FAIL indicates failure |
ErrorCode | Integer | Mandatory | Error Code, here 0 means to ignore the response result |
ErrorInfo | String | Mandatory | Error message |