• 製品
  • 価格
  • リソース
  • サポート
このページは現在英語版のみで提供されており、日本語版も近日中に提供される予定です。ご利用いただきありがとうございます。

TUIRoomEvents

TUIRoomEvents is the event interface of the audio and video call component.

Event list

EVENT
Description
error event
kick out of room event
User Disconnected Event
userSig expired event
Host destroy room event
Room name change event
Room speech mode modification event This event is deprecated since version 2.0.0 This event is deleted since version 2.5.0
Microphone mode change event
Number of users in room change event
Camera usage permission change event for all members
Microphone usage permission change event for all members
Message sending status change event for all members
Maximum microphone slots in room change event
Remote user enters room event
Remote user exits room event
User information change event
User role change event (deprecated since v2.5.0)
User video status change event
User audio status change event
User message sending status event
User volume change event
User network quality change event
Microphone position list change event
User kicked off seat event
Request received event
Request processed event
Request cancellation event
Receive text message event, this API is deprecated since version v2.0.0
Receive custom messages event, this API is deprecated since version v2.0.0
device change event
screen sharing stop event
When a user ends screen sharing using the browser's built-in stop sharing button, that user will receive the onUserScreenCaptureStopped event to modify the screen sharing status.
Screen sharing disabled event for all users in the room. This API is supported since v2.2.0.
Video autoplay failure event
room metadata change event

onError

error event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onError, (error) => {
console.log('TUIRoomError error', error);
})
The parameters are listed in the table below:
Parameter
Type
Description
code
number
Error Code
message
string
Error Message

onKickedOutOfRoom

kick out of room event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onKickedOutOfRoom, ({ roomId, reason, message }) => {
console.log('roomEngine.onKickedOutOfRoom', roomId, message);
});
The parameters are listed in the table below:
Parameter
Type
Description
roomId
string
room number
reason
TUIKickedOutOfRoomReason
Reason for user being kicked out of room
message
string
kick out of room info

onKickedOffLine

User Disconnected Event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onKickedOffLine, ({ message }) => {
console.log('roomEngine.onKickedOffLine', message);
});
The parameters are listed in the table below:
Parameter
Type
Description
roomId
string
room number
message
string
User login information on other devices

onUserSigExpired

userSig expired event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onUserSigExpired, () => {
console.log('roomEngine.onUserSigExpired');
});

onRoomDismissed

Host destroy room event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRoomDismissed, ({ roomId }) => {
console.log('roomEngine.onRoomDismissed', roomId);
});
The parameters are listed in the table below:
Parameter
Type
Description
roomId
string
room number

onRoomNameChanged

Room name change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRoomNameChanged, ({ roomId, roomName }) => {
console.log('roomEngine.onRoomNameChanged', roomId, roomName);
});
The parameters are listed in the table below:
Parameter
Type
Description
roomId
string
room number
roomName
string
room name

onRoomSpeechModeChanged

Room schema modification event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRoomSpeechModeChanged, ({ roomId, speechMode }) => {
console.log('roomEngine.onRoomSpeechModeChanged', roomId, speechMode);
});
The parameters are listed in the table below:
Parameter
Type
Description
roomId
string
room number
speechMode
TUISpeechMode
speech mode
Note:
Note: this API is deprecated since version v2.0.0; deleted since version v2.5.0.

onRoomSeatModeChanged

Microphone mode change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRoomSeatModeChanged, ({ roomId, seatMode }) => {
console.log('roomEngine.onRoomSeatModeChanged', roomId, seatMode);
});
The parameters are listed in the table below:
Parameter
Type
Description
roomId
string
room number
seatMode
TUISeatMode
Room microphone mode

onRoomUserCountChanged

Number of users in room change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRoomUserCountChanged, ({ roomId, userCount }) =>{
console.log('roomEngine.onRoomUserCountChanged', roomId, userCount);
});
The parameters are listed in the table below:
Parameter
Type
Description
roomId
string
room number
userCount
number
number of users

onAllUserCameraDisableChanged

Camera usage permission change event for all members
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onAllUserCameraDisableChanged, ({ isDisable }) => {
console.log('roomEngine.onAllUserCameraDisableChanged', isDisable);
});
The parameters are listed in the table below:
Parameter
Type
Description
isDisabled
boolean
Camera allowed or not

onAllUserMicrophoneDisableChanged

Microphone usage permission change event for all members
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onAllUserMicrophoneDisableChanged, ({ isDisable }) => {
console.log('roomEngine.onAllUserMicrophoneDisableChanged', isDisable);
});
The parameters are listed in the table below:
Parameter
Type
Description
isDisabled
boolean
Whether microphone use is allowed

onSendMessageForAllUserDisableChanged

Message sending status change event for all members
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onSendMessageForAllUserDisableChanged, ({ isDisable }) => {
console.log('roomEngine.onSendMessageForAllUserDisableChanged', isDisable);
});
The parameters are listed in the table below:
Parameter
Type
Description
isDisable
boolean
Whether sending text messages is allowed

onRoomMaxSeatCountChanged

Maximum microphone slots in room change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRoomMaxSeatCountChanged, ({ maxSeatNumber }) => {
console.log('roomEngine.onRoomMaxSeatCountChanged', maxSeatNumber);
});
The parameters are listed in the table below:
Parameter
Type
Description
maxSeatNumber
number
Maximum number of microphones

onRemoteUserEnterRoom

Remote user enters room event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRemoteUserEnterRoom, ({ roomId, userInfo }) => {
console.log('roomEngine.onRemoteUserEnterRoom', roomId, userInfo);
});
The parameters are listed in the table below:
Parameter
Type
Description
roomId
string
room number
userInfo
TUIUserInfo
User information

onRemoteUserLeaveRoom

Remote user exits room event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRemoteUserLeaveRoom, ({ roomId, userInfo }) => {
console.log('roomEngine.onRemoteUserLeaveRoom', roomId, userInfo);
});
The parameters are listed in the table below:
Parameter
Type
Description
roomId
string
room number
userInfo
TUIUserInfo
User information

onUserInfoChanged

User information change event in the room
Note:
Note: This API is supported since v2.5.0.
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onUserInfoChanged, ({ userInfo }) => {
console.log('roomEngine.onUserInfoChanged', userInfo);
});
The parameters are listed in the table below:
Parameter
Type
Description
userInfo
TUIUserInfo
User information after changing

onUserRoleChanged

User role change event
Note:
Note: This API is deprecated since version v2.5.0. Please use the 'onUserInfoChanged' event.
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onUserRoleChanged, ({ userId, userRole }) => {
console.log('roomEngine.onUserRoleChanged', userId, userRole);
});
The parameters are listed in the table below:
Parameter
Type
Description
userId
string
User ID
userRole
TUIRole
User role after change

onUserVideoStateChanged

User video status change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onUserVideoStateChanged, ({ userId, streamType, hasVideo, reason }) => {
console.log('roomEngine.onUserVideoStateChanged', userId, streamType, hasVideo, reason);
});
The parameters are listed in the table below:
Parameter
Type
Description
userId
string
User ID
streamType
TUIVideoStreamType
User Type
hasVideo
boolean
Whether there is a video stream
reason
TUIChangeReason
Reason for change Self perform / Host perform

onUserAudioStateChanged

User audio status change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onUserAudioStateChanged, ({ userId, hasAudio, reason }) => {
console.log('roomEngine.onUserAudioStateChanged', userId, hasAudio, reason);
});
The parameters are listed in the table below:
Parameter
Type
Description
userId
string
User ID
hasVideo
boolean
Whether there is an audio stream
reason
TUIChangeReason
Reason for change, Self perform / Host perform

onSendMessageForUserDisableChanged

Camera usage permission modify event for members
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onSendMessageForAllUserDisableChanged, ({ isDisable }) => {
console.log('roomEngine.onSendMessageForAllUserDisableChanged', isDisable);
});
The parameters are listed in the table below:
Parameter
Type
Description
isDisable
boolean
Whether sending text messages is allowed

onUserVoiceVolumeChanged

User volume change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onUserVoiceVolumeChanged, ({ userVolumeList }) => {
userVolumeList.forEach(userVolume => {
console.log('roomEngine.onUserVoiceVolumeChanged', userVolume.userId, userVolume.volume);
})
});
The parameters are listed in the table below:
Parameter
Type
Description
userVolumeList
Array.<object>
The volume of all users in the room, including userId and volume info, with a volume interval of 1–100.

onUserNetworkQualityChanged

User network quality change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onUserNetworkQualityChanged, ({ userNetworkList }) => {
userNetworkList.forEach(userNetwork => {
console.log('roomEngine.onUserNetworkQualityChanged', userNetwork.userId, userNetwork.quality, userNetwork.upLoss, userNetwork.downLoss, userNetwork.delay);
})
});
The parameters are listed in the table below:
Parameter
Type
Description
userNetworkList
Array.<TUINetwork>
Network quality information list

onSeatListChanged

Microphone position list change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onSeatListChanged, ({ seatList, seatedList, leftList }) => {
console.log('roomEngine.onSeatListChanged',seatList, seatedList, leftList);
});
The parameters are listed in the table below:
Parameter
Type
Description
seatList
Array.<TUISeatInfo>
microphone position list
seatedList
Array.<TUISeatInfo>
Newly-added microphone position information
leftList
Array.<TUISeatInfo>
Exiting microphone position information

onKickedOffSeat

Microphone position list change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onKickedOffSeat, ({ userId }) => {
console.log('roomEngine.onKickedOffSeat', userId);
});
The parameters are listed in the table below:
Parameter
Type
Description
userId
String
User ID kicked off the mic

onRequestReceived

Request received event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRequestReceived, ({ request }) => {
console.log('roomEngine.onRequestReceived', request);
});
The parameters are listed in the table below:
Parameter
Type
Description
request
TUIRequest
Request received

onRequestProcessed

Request processed event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRequestProcessed, ({ request }) => {
console.log('roomEngine.onRequestProcessed', request);
});
The parameters are listed in the table below:
Parameter
Type
Description
request
TUIRequest
Request received

onRequestCancelled

Request cancellation event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRequestCancelled, ({ requestId, userId }) => {
console.log('roomEngine.onRequestCancelled', requestId, userId);
});
The parameters are listed in the table below:
Parameter
Type
Description
requestId
string
Request ID.
userId
string
User ID for cancel request

onReceiveTextMessage

receive text message event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onReceiveTextMessage, ({ roomId, message }) => {
console.log('roomEngine.onReceiveTextMessage', roomId, message);
});
The parameters are listed in the table below:
Parameter
Type
Description
roomId
string
room ID
message
TUIMessage
Receives a text message.
Note:
This API is deprecated since version v2.0.0, please use TIM Instance to listen to message events.

onReceiveCustomMessage

Receive Custom Messages Event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onReceiveCustomMessage, ({ roomId, message }) => {
console.log('roomEngine.onReceiveCustomMessage', roomId, message);
});
The parameters are listed in the table below:
Parameter
Type
Description
roomId
string
room ID
message
TUIMessage
Receive Custom Messages
Note:
This API is deprecated since version v2.0.0, please use TIM Instance to listen to message events.

onDeviceChange

device change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onDeviceChange, ({ deviceId, type, state }) => {
console.log('roomEngine.onDeviceChange', deviceId, type, state);
});
The parameters are listed in the table below:
Parameter
Type
Description
deviceId
string
Device ID
type
TRTCDeviceType
Device Type
state
TRTCDeviceState
Device change status

onUserScreenCaptureStopped

Screen sharing stop event. When a user ends screen sharing using the browser's built-in stop sharing button, that user will receive the onUserScreenCaptureStopped event to modify the screen sharing status.
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onUserScreenCaptureStopped, () => {
console.log('roomEngine.onUserScreenCaptureStopped', deviceId, type, state);
});

onScreenShareForAllUserDisableChanged

Screen sharing disabled event for all users in the room
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onScreenShareForAllUserDisableChanged, ({ isDisable }) => {
console.log('roomEngine.onScreenShareForAllUserDisableChanged', isDisable);
});

onAutoPlayFailed

Video autoplay failure event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onAutoPlayFailed, ({userId, resume}) => {
console.log('roomEngine.onAutoPlayFailed', userId, resume);
});

onRoomMetadataChanged

room metadata change event
const roomEngine = new TUIRoomEngine();
roomEngine.on(TUIRoomEvents.onRoomMetadataChanged, ({key, value}) => {
console.log('TUIRoomEvents.onRoomMetadataChanged', key, value);
});