After the Seat List Is Changed

Feature Overview

The App backend can view 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.
The direction of the callback is from the Room backend to the App backend via an HTTP POST request.
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

Pick App user on the seat/Kick user off the seat.
Lock the seat position.

Callback Trigger Time

After the seat 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
The SDKAppID assigned by the Chat console when an app is created
CallbackCommand
Fixed as Mic.CallbackAfterSeatInfoChanged
contenttype
Fixed value: JSON
ClientIP
Client IP, such as 127.0.0.1
OptPlatform
Client Platform. For the value, refer to the meaning of the OptPlatform parameter of Webhook Overview: Callback Protocol.

Sample Request Packets

{
"CallbackCommand":"Mic.CallbackAfterSeatInfoChanged",
"Operator_Account":"user1",
"RoomId":"rid-123",
"SeatList":[
{
// Seat Number
"Index": 1,
// If the seat is currently occupied, return the user's ID
"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 Field Description

Field
Type
Description
CallbackCommand
String
Callback command
Operator_Account
String
UserID of the requester
RoomId
String
Room ID
SeatList
Array
The list of the seat
Index
Integer
The number of the seat
Member_Account
String
User ID on the seat position, empty indicates no user on the seat
IsTakenDisabled
Bool
Lock the seat position
IsVideoDisabled
Bool
Disable microphone video stream
IsAudioDisabled
Bool
Disable microphone audio stream

Sample Response Packets

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 for success, FAIL for failure.
ErrorCode
Integer
Mandatory
Error code, 0 means to ignore the response result
ErrorInfo
String
Mandatory
Error message

Reference