onVideoSubscribeStateChanged method

FutureOr<void> onVideoSubscribeStateChanged(
  1. dynamic streamId,
  2. dynamic streamInfo,
  3. dynamic state,
  4. dynamic reason,
)
override

@detail callback @valid since 3.60. @region 房间管理 @author xuyiling.x10 @brief 视频订阅状态发生改变回调。 @param streamId 流 ID,用于标识特定的视频流。 @param streamInfo 流信息结构体,包含房间 ID、用户 ID 等详细信息,参看 StreamInfo{@link #StreamInfo}。 @param state 订阅状态码,参看 SubscribeState{@link #SubscribeState}。 @param reason 视频订阅状态改变的具体原因,参看 SubscribeStateChangeReason{@link #SubscribeStateChangeReason}。 @note 当调用 subscribeStreamVideo{@link #RTCRoom#subscribeStreamVideo} 后会收到该通知。 @order 0

Implementation

FutureOr<void> onVideoSubscribeStateChanged(dynamic streamId,
    dynamic streamInfo, dynamic state, dynamic reason) async {
  if ($instance == null || $instance is! IRTCRoomEventHandler) {
    return;
  }
  return ($instance as IRTCRoomEventHandler)
      .onVideoSubscribeStateChanged
      ?.call(
          streamId.toString(),
          t_SubscribeState.android_to_code($p_a.SubscribeState.values
              .firstWhere((t) => t.$value == state || t.name == state)),
          t_SubscribeStateChangeReason.android_to_code($p_a
              .SubscribeStateChangeReason.values
              .firstWhere((t) => t.$value == reason || t.name == reason)));
}