After a Room Is Created

Feature Overview

The App backend can view information about the room created by the user in real time through this callback, including notifications of successful room creation in the app backend, allowing for actions such as data synchronization.

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

App users successfully create a room through the client.
App administrators successfully create a room through the RESTful API.

Callback Trigger Time

After the room is created successfully.

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 Room.CallbackAfterCreateRoom
contenttype
Fixed value is JSON
ClientIP
Client IP, format 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":"Room.CallbackAfterCreateRoom",
"Operator_Account":"admin",
"RoomInfo":{
"RoomId":"tandy-test-rest",
"RoomName":"tandy-test-rest",
"RoomType":"Meeting",
"Owner_Account":"user3",
"MaxMemberCount":300,
"MaxSeatCount":16,
"IsVideoDisabled":true,
"IsAudioDisabled":true,
"IsMessageDisabled":true,
"IsScreenSharingDisabled":true,
"IsCloudRecordingDisabled":true,
"CustomInfo":"custom123",
"ScheduleStartTime":1703589922,
"ScheduleEndTime":1703593522,
"RoomStatus":"Running",
"IsSeatEnabled":true,
"TakeSeatMode":"ApplyToTake",
"CreateTime":1703589922
},
"ScheduleInviteeList_Account":["user2", "user3", "user3"],
"EventTime":1703589922780
}

Request Packet Field Description

Field
Type
Description
CallbackCommand
String
Callback command
Operator_Account
String
Operator UserID initiating the request to create a group
RoomId
String
Room ID
RoomName
String
Room name
RoomType
String
Room type: conference (meeting room)
Owner_Account
String
Host ID
MaxMemberCount
Integer
Maximum number of room members
ScheduleStartTime
Integer
Scheduled meeting start time
ScheduleStartTime
Integer
Scheduled meeting end time
IsVideoDisabled
Bool
Mute all video
IsAudioDisabled
Bool
Mute all audio
IsMessageDisabled
Bool
Disable all members from sending text messages
IsScreenSharingDisabled
Bool
Disable screen sharing
IsCloudRecordingDisabled
Bool
Disable cloud recording
CustomInfo
String
Custom definition fields
RoomStatus
String
Room Status: None, NotStarted, Running
IsSeatEnabled
Bool
Whether to support seat position.
MaxSeatCount
Integer
Maximum number of seats
TakeSeatMode
String
Seat Mode: None (off), FreeToTake (open mic), ApplyToTake (mic on request)
CreateTime
Integer
Scheduled meeting start time
EventTime
Integer
Event trigger timestamp in milliseconds

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

RESTful API:Create a Room