IRTSRoomEventHandler class

Inheritance
  • Object
  • NativeClass
  • NativeObserverClass
  • IRTSRoomEventHandler
Implementers

Constructors

IRTSRoomEventHandler([NativeClassOptions? options])

Properties

$instance ↔ dynamic
getter/setter pairinherited
$resource → NativeResource
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
ready Future<void>
Whether the instance is initialized
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

destroy() → void
inherited
emit(String name, List args) → dynamic
inherited
nativeCall<T>(String method, [List? args, NativeMethodMeta? meta]) Future<T>
Call instance method
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onLeaveRoom(RTCRoomStats stats) FutureOr<void>
@detail callback @brief 离开房间成功回调。
用户调用 leaveRoom{@link #RTSRoom#leaveRoom} 方法后,SDK 会停止所有的发布订阅流,并在释放所有通话相关的音视频资源后,通过此回调通知用户离开房间成功。 @param stats 保留参数,目前为空。 @note - 用户调用 leaveRoom{@link #RTSRoom#leaveRoom} 方法离开房间后,如果立即调用 destroy{@link #RTSRoom#destroy} 销毁房间实例或 destroyRTCEngine{@link #RTCEngine#destroyRTCEngine} 方法销毁 RTC 引擎,则将无法收到此回调事件。 - 离开房间后,如果 App 需要使用系统音视频设备,则建议在收到此回调后再初始化音视频设备,否则可能由于 SDK 占用音视频设备导致初始化失败。
onRoomBinaryMessageReceived(long msgid, String uid, ByteBuffer message) FutureOr<void>
@detail callback @author hanchenchen.c @brief 收到房间内广播二进制消息的回调。
房间内其他用户调用 sendRoomBinaryMessage{@link #RTSRoom#sendRoomBinaryMessage} 发送广播二进制消息时,收到此回调。 @param msgid 消息编号 @param uid 消息发送者 ID @param message 收到的二进制消息内容
onRoomMessageReceived(long msgid, String uid, String message) FutureOr<void>
@detail callback @author hanchenchen.c @brief 接收到房间内广播消息的回调。
房间内其他用户调用 sendRoomMessage{@link #RTSRoom#sendRoomMessage} 发送广播消息时,收到此回调。 @param msgid 消息编号 @param uid 消息发送者 ID @param message 收到的消息内容
onRoomMessageSendResult(long msgid, int error) FutureOr<void>
@detail callback @brief 调用 sendRoomMessage{@link #RTSRoom#sendRoomMessage} 或 sendRoomBinaryMessage{@link #RTSRoom#sendRoomBinaryMessage} 向房间内群发文本或二进制消息后,消息发送方会收到该消息发送结果回调。 @param msgid 本条消息的 ID。 @param error 消息发送结果,详见 RoomMessageSendResult{@link #RoomMessageSendResult}
onRoomStateChanged(String roomId, String uid, int state, String extraInfo) FutureOr<void>
@detail callback @brief 房间状态改变回调,加入房间、异常退出房间、发生房间相关的警告或错误时会收到此回调。 @param roomId 房间 ID。 @param uid 用户 ID。 @param state 房间状态码。
- 0: 加入房间成功。 - !0: 加入房间失败、异常退房、发生房间相关的警告或错误。具体原因参看 ErrorCode{@link #ErrorCode} 及 WarningCode{@link #WarningCode}。 @param extraInfo 额外信息,如 {"elapsed":1187,"join_type":0}
join_type 表示加入房间的类型,0为首次进房,1为重连进房。
elapsed 表示加入房间耗时,即本地用户从调用 joinRoom{@link #RTCRoom#joinRoom} 到加入房间成功所经历的时间间隔,单位为 ms。
onUserBinaryMessageReceived(long msgid, String uid, ByteBuffer message) FutureOr<void>
@detail callback @author hanchenchen.c @brief 收到来自房间中其他用户通过 sendUserBinaryMessage{@link #RTSRoom#sendUserBinaryMessage} 发来的点对点二进制消息时,会收到此回调。 @param msgid 消息编号 @param uid 消息发送者的用户 ID。 @param message 收到的二进制消息内容。
onUserJoined(UserInfo userInfo) FutureOr<void>
@detail callback @brief 远端可见用户加入房间,或房内不可见用户切换为可见的回调。
1.远端用户调用 setUserVisibility{@link #RTCRoom#setUserVisibility} 方法将自身设为可见后加入房间时,房间内其他用户将收到该事件。
2.远端可见用户断网后重新连入房间时,房间内其他用户将收到该事件。
3.房间内隐身远端用户调用 setUserVisibility{@link #RTCRoom#setUserVisibility} 方法切换至可见时,房间内其他用户将收到该事件。
4.新进房用户也会收到进房前已在房内的可见用户的进房回调通知。 @param userInfo 用户信息。参看 UserInfo{@link #UserInfo}。
onUserLeave(String uid, int reason) FutureOr<void>
@detail callback @brief 远端用户离开房间,或切至不可见时,房间内其他用户会收到此事件 @param uid 离开房间,或切至不可见的的远端用户 ID。 @param reason 用户离开房间的原因:
- 0: 远端用户调用 leaveRoom{@link #RTSRoom#leaveRoom} 主动退出房间。 - 1: 远端用户因 Token 过期或网络原因等掉线。详细信息请参看连接状态提示 - 2: 远端用户调用 setUserVisibility{@link #RTCRoom#setUserVisibility} 切换至不可见状态。 - 3: 服务端调用 OpenAPI 将该远端用户踢出房间。
onUserMessageReceived(long msgid, String uid, String message) FutureOr<void>
@detail callback @author hanchenchen.c @brief 收到来自房间中其他用户通过 sendUserMessage{@link #RTSRoom#sendUserMessage} 发来的点对点文本消息时,会收到此回调。 @param msgid 消息编号 @param uid 消息发送者的用户 ID。 @param message 收到的文本消息内容。
onUserMessageSendResult(long msgid, int error) FutureOr<void>
@detail callback @brief 向房间内单个用户发送文本或二进制消息后(P2P),消息发送方会收到该消息发送结果回调。 @param msgid 本条消息的 ID。 @param error 文本或二进制消息发送结果,详见 UserMessageSendResult{@link #UserMessageSendResult} @note 调用 sendUserMessage{@link #RTSRoom#sendUserMessage} 或 sendUserBinaryMessage{@link #RTSRoom#sendUserBinaryMessage} 接口,才能收到此回调。
registerEvent(String name, dynamic method) → void
inherited
sendInstanceGet<T>(String property) Future<T>
Get instance property
inherited
sendInstancePropertiesGet(dynamic nativeClass) Future<Map<String, dynamic>>
Get instance properties
inherited
sendInstanceSet(String property, dynamic value) Future<void>
Set instance property
inherited
toString() String
A string representation of this object.
inherited
updateInstance(dynamic instance) → void
inherited
updateResource(NativeResource resource) → void
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

codegen_$namespace → dynamic
no setter