Skip to content
On this page

Room Videochat Settings API

EndpointMethodDescription
room:videochat:setRoomVideochatModewebsocketSet room videochat mode
room:videochat:setRoomVideochatTypewebsocketSet room videochat type
room:videochat:setRoomVideochatEnginewebsocketSet room videochat engine
room:videochat:setRoomVideochatExcludeListenerswebsocketSet room videochat exclude listeners
room:videochat:setRoomVideochatUsePresentationBoardwebsocketSet room videochat use presentation board
room:videochat:setRoomVideochatEnableStreamingwebsocketSet room videochat enable streaming
room:videochat:setRoomVideochatNotificationModewebsocketSet room videochat notification mode
room:videochat:setRoomVideochatAutoPromotionwebsocketSet room videochat auto promotion
room:videochat:setRoomVideochatLimitwebsocketSet room videochat limit

Set room videochat mode

Method: websocket

Endpoint: room:videochat:setRoomVideochatMode

Request:

{
    "data": {
        "roomId": string
        "videochatMode": string  // videochat/conference
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Set room videochat type

Method: websocket

Endpoint: room:videochat:setRoomVideochatType

Description: Only for admin accounts.

Request:

{
    "data": {
        "roomId": string
        "videochatType": string  // twilio only (peer-to-peer/group/group-small)
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Set room videochat engine

Method: websocket

Endpoint: room:videochat:setRoomVideochatEngine

Description: Only for admin accounts.

Request:

{
    "data": {
        "roomId": string
        "videochatEngine": string  // twilio/agora/livekit
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Set room videochat exclude listeners

Method: websocket

Endpoint: room:videochat:setRoomVideochatExcludeListeners

Request:

{
    "data": {
        "roomId": string
        "excludeListeners": bool  // don't show non-promoted videochat users
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Set room videochat use presentation board

Method: websocket

Endpoint: room:videochat:setRoomVideochatUsePresentationBoard

Request:

{
    "data": {
        "roomId": string
        "usePresentationBoard": bool  // use presentation board as share screen media
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Set room videochat enable streaming

Method: websocket

Endpoint: room:videochat:setRoomVideochatEnableStreaming

Request:

{
    "data": {
        "roomId": string
        "enableStreaming": bool  // enable videochat streaming to non participants
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Set room videochat notification mode

Method: websocket

Endpoint: room:videochat:setRoomVideochatNotificationMode

Description: 0 - server default, 1 - do not show, 2 - show, 3 - show and sound

Request:

{
    "data": {
        "roomId": string
        "notificationMode": int
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Set room videochat auto promotion

Method: websocket

Endpoint: room:videochat:setRoomVideochatAutoPromotion

Request:

{
    "data": {
        "roomId": string
        "autoPromotion": {
            "useCustomSettings": bool  // if false, videochat will use server default settings
            "autoPromotionLimit": int  // limit of participants with automatic voice permissions
            "autoDemoteOnLimit": bool  // demote participants that were automatically promoted
        }
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Set room videochat limit

Method: websocket

Endpoint: room:videochat:setRoomVideochatLimit

Request:

{
    "data": {
        "roomId": string
        "limitSettings": {
            "useCustomSettings": bool  // if false, videochat will use server default settings
            "videochatLimit": int  // amount of identities allowed in videochat (0 means unlimited)
        }
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}