rtcRoom$onAudioPublishStateChanged$info$state$reason method

FutureOr<void> rtcRoom$onAudioPublishStateChanged$info$state$reason(
  1. dynamic rtcRoom,
  2. dynamic streamId,
  3. dynamic info,
  4. dynamic state,
  5. dynamic reason,
)
override

@detail callback brief Callback on the publishing state change of the audio stream. @param rtcRoom The ByteRTCRoom instance. @param streamId Stream ID. @param info Stream information. @param state Room state code. See ByteRTCPublishState{@link #ByteRTCPublishState} for more. @param reason See ByteRTCPublishStateChangeReason{@link #ByteRTCPublishStateChangeReason} for more.

Implementation

FutureOr<void> rtcRoom$onAudioPublishStateChanged$info$state$reason(
    dynamic rtcRoom,
    dynamic streamId,
    dynamic info,
    dynamic state,
    dynamic reason) async {
  if ($instance == null || $instance is! IRTCRoomEventHandler) {
    return;
  }
  return ($instance as IRTCRoomEventHandler).onAudioPublishStateChanged?.call(
      streamId.toString(),
      t_PublishState.ios_to_code($p_i.ByteRTCPublishState.values
          .firstWhere((t) => t.$value == state || t.name == state)),
      t_PublishStateChangeReason.ios_to_code($p_i
          .ByteRTCPublishStateChangeReason.values
          .firstWhere((t) => t.$value == reason || t.name == reason)));
}