onRoomStateChangedWithReason method

FutureOr<void> onRoomStateChangedWithReason(
  1. dynamic roomId,
  2. dynamic uid,
  3. dynamic state,
  4. dynamic reason,
)
override

@hidden @detail callback @author shenpengliang @brief 房间状态改变回调,加入房间、异常退出房间、发生房间相关的警告或错误时会收到此回调。 @param roomId 房间 ID。 @param uid 用户 ID。 @param state 房间状态码。参见 RoomState{@link #RoomState}。
- 0: 加入房间成功。 - 1: 加入房间失败、异常退房、发生房间相关的警告或错误。 - 2: 离开房间。 @param reason 房间状态发生变化的原因。参见 RoomStateChangeReason{@link #RoomStateChangeReason}。

Implementation

FutureOr<void> onRoomStateChangedWithReason(
    dynamic roomId, dynamic uid, dynamic state, dynamic reason) async {
  if ($instance == null || $instance is! IRTCRoomEventHandler) {
    return;
  }
  return ($instance as IRTCRoomEventHandler)
      .onRoomStateChangedWithReason
      ?.call(
          roomId.toString(),
          uid.toString(),
          t_RoomState.android_to_code($p_a.RoomState.values
              .firstWhere((t) => t.$value == state || t.name == state)),
          t_RoomStateChangeReason.android_to_code($p_a
              .RoomStateChangeReason.values
              .firstWhere((t) => t.$value == reason || t.name == reason)));
}