TUIRoomEngineObserver
TUIRoomEngine 事件回调
onError
当发生错误事件时触发,表示 SDK 抛出的不可恢复的错误,例如进入房间失败或设备开启失败等。
说明:
OnError onError = (TUIError errorCode, String message) {}
参数  | 类型  | 描述  | 
errorCode  | 错误码 onLiveRoomInfoChanged  | |
message  | String  | 错误信息  | 
onKickedOffLine
当用户被移下线时触发。
说明:
OnKickedOffLine onKickedOffLine = (String message) {}
参数  | 类型  | 描述  | 
message  | String  | 被移下线的描述  | 
onUserSigExpired
userSig 过期事件,用户的凭证过期时触发。说明:
OnUserSigExpired onUserSigExpired = () {}
onRoomNameChanged
房间名称改变时触发。
说明:
OnRoomNameChanged onRoomNameChanged = (String roomId, String roomName) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
roomName  | String  | 房间名称  | 
onAllUserMicrophoneDisableChanged
所有用户的麦克风禁用状态改变时触发。
说明:
OnAllUserMicrophoneDisableChanged onAllUserMicrophoneDisableChanged = (String roomId, bool isDisable) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
isDisable  | bool  | 是否被禁用  | 
onAllUserCameraDisableChanged
所有用户的摄像头禁用状态改变时触发。
说明:
OnAllUserCameraDisableChanged onAllUserCameraDisableChanged = (String roomId, bool isDisable) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
isDisable  | bool  | 是否被禁用  | 
onSendMessageForAllUserDisableChanged
所有用户的发送消息权限改变时触发。
说明:
OnSendMessageForAllUserDisableChanged onSendMessageForAllUserDisableChanged = (String roomId, bool isDisable) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
isDisable  | bool  | 是否被禁用  | 
onScreenShareForAllUserDisableChanged
所有用户的屏幕共享权限改变时触发。
说明:
OnScreenShareForAllUserDisableChanged onScreenShareForAllUserDisableChanged =(String roomId, bool isDisable) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
isDisable  | bool  | 是否被禁用  | 
onRoomDismissed
房间被解散时触发。
说明:
OnRoomDismissed onRoomDismissed = (String roomId, TUIRoomDismissedReason reason) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
reason  | TUIRoomDismissedReason  | 解散原因  | 
onKickedOutOfRoom
用户被房主/管理员踢出房间触发。
说明:
OnKickedOutOfRoom onKickedOutOfRoom = (String roomId, String message) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
message  | String  | 被移出的描述  | 
onRoomSeatModeChanged
房间上麦模式发生变化时触发。
说明:
OnRoomSeatModeChanged onRoomSeatModeChanged =(String roomId, TUISeatMode seatMode) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
seatMode  | 上麦模式  | 
onRoomUserCountChanged
房间内人数发生变化时触发。
说明:
OnRoomUserCountChanged onRoomUserCountChanged =(String roomId, int userCount) {};
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
userCount  | int  | 房间人数  | 
onRemoteUserEnterRoom
远端用户进入房间时触发。
说明:
OnRemoteUserEnterRoom onRemoteUserEnterRoom = (String roomId, TUIUserInfo userInfo) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
userInfo  | 用户信息  | 
onRemoteUserLeaveRoom
远端用户离开房间时触发。
说明:
OnRemoteUserLeaveRoom onRemoteUserLeaveRoom = (String roomId, TUIUserInfo userInfo) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
userInfo  | 用户信息  | 
onUserInfoChanged
当房间内用户信息发生变化时触发。
说明:
OnUserInfoChanged onUserInfoChanged = (TUIUserInfo userInfo, List<TUIUserInfoModifyFlag> modifyFlagList) {};
参数  | 类型  | 描述  | 
userInfo  | TUIUserInfo  | 用户信息  | 
  |   |   | 
modifyFlagList  | List<TUIUserInfoModifyFlag>  | TUIUserInfo变更标志位列表  | 
onUserVideoStateChanged
当用户的视频状态改变时触发。
说明:
OnUserVideoStateChanged onUserVideoStateChanged = (String userId, TUIVideoStreamType streamType, bool hasVideo, TUIChangeReason reason) {}
参数  | 类型  | 描述  | 
userId  | String  | 用户 ID  | 
streamType  | 视频流类型  | |
hasVideo  | bool  | 是否有视频流  | 
reason  | 视频流发生变化原因  | 
onUserAudioStateChanged
当用户的音频状态改变时触发。
说明:
OnUserAudioStateChanged onUserAudioStateChanged = (String userId, bool hasAudio, TUIChangeReason reason) {}
参数  | 类型  | 描述  | 
userId  | String  | 用户 ID  | 
hasAudio  | bool  | 是否有音频流  | 
reason  | 视频流发生变化原因  | 
onUserVoiceVolumeChanged
当用户的音量改变时触发。
说明:
OnUserVoiceVolumeChanged onUserVoiceVolumeChanged = (Map<String, int> volumeMap) {}
参数  | 类型  | 描述  | 
volumeMap  | Map  | 用户音量 Map key:userId value:用于承载所有正在说话的用户的音量大小。取值范围 0 - 100  | 
onSendMessageForUserDisableChanged
当用户的发送消息权限改变时触发。
说明:
OnSendMessageForUserDisableChanged onSendMessageForUserDisableChanged = (String roomId, String userId, bool isDisable) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
userId  | String  | 用户 ID  | 
isDisable  | bool  | 是否被禁止发送文本消息  | 
onUserNetworkQualityChanged
当用户的网络质量改变时触发。
说明:
OnUserNetworkQualityChanged onUserNetworkQualityChanged = (Map<String, TUINetwork> networkMap) {}
参数  | 类型  | 描述  | 
networkMap  | Map  |  用户网络状态 Map key:userId value:网络状况  | 
onUserScreenCaptureStopped
用户的屏幕分享停止时触发。
说明:
OnUserScreenCaptureStopped onUserScreenCaptureStopped = (int reason) {}
参数  | 类型  | 描述  | 
reason  | int  | 停止原因 0:用户主动停止 1:屏幕窗口关闭导致停止 2:表示屏幕分享的显示屏状态变更(如接口被拔出、投影模式变更等)  | 
onRoomMaxSeatCountChanged
房间内最大麦位数发生变化事件(仅在会议类型房间生效)。
OnRoomMaxSeatCountChanged onRoomMaxSeatCountChanged = (String roomId, int maxSeatCount) {}
参数  | 类型  | 描述  | 
roomId  | String  | 房间 ID  | 
maxSeatCount  | int  | 房间内最大麦位数量  | 
onSeatListChanged
当麦位列表改变时触发。
说明:
OnSeatListChanged onSeatListChanged = (List<TUISeatInfo> seatList, List<TUISeatInfo> seatedList, List<TUISeatInfo> leftList) {}
参数  | 类型  | 描述  | 
seatList  | 目前麦上最新的用户列表,包含新上麦的用户  | |
seatedList  | 新上麦的用户列表  | |
leftList  | 新下麦的用户列表  | 
onKickedOffSeat
当用户被踢下麦时触发。
说明:
OnKickedOffSeat onKickedOffSeat = (int seatIndex, TUIUserInfo operateUser) {}
参数  | 类型  | 描述  | 
seatIndex  | int  | 麦位编号  | 
operateUser  | TUIUserInfo  | 操作者的信息  | 
onRequestReceived
当收到其他用户的请求时触发。
说明:
OnRequestReceived onRequestReceived = (TUIRequest request) {}
参数  | 类型  | 描述  | 
request  | 请求内容  | 
onRequestCancelled
当其他用户取消请求时触发。
说明:
OnRequestCancelled onRequestCancelled = (TUIRequest request, TUIUserInfo operateUser) {}
参数  | 类型  | 描述  | 
request  | TUIRequest  | 请求信息  | 
operateUser  | TUIUserInfo  | 取消信令的用户信息  | 
onRequestProcessed
收到请求被其他管理员/房主处理时触发。
说明:
OnRequestProcessed onRequestProcessed = (TUIRequest request, TUIUserInfo operateUser) {};
参数  | 类型  | 描述  | 
request  | TUIRequest  | 请求信息  | 
operateUser  | TUIUserInfo  | 取消信令的用户信息  |