channelTransFormMap top-level property

Map<String, ChannelTransFormer> channelTransFormMap
final

Implementation

final Map<String, ChannelTransFormer> channelTransFormMap = {
  DelegateMethod.kNERtcOnError:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onError(values['channel_tag'], values['error_code']);
  },
  DelegateMethod.kNERtcOnWarning:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onWarning(values['channel_tag'], values['warn_code']);
  },
  DelegateMethod.kNERtcOnApiCallExecuted:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onApiCallExecuted(values['channel_tag'], values['api_name'] ?? '',
        values['error'] ?? 0, values['message'] ?? '');
  },
  DelegateMethod.kNERtcOnJoinChannel:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onJoinChannel(
        values['channel_tag'],
        values['result'],
        values['cid']?.toInt() ?? 0,
        values['elapsed'] ?? 0,
        values['uid']?.toInt() ?? 0);
  },
  DelegateMethod.kNERtcOnReconnectingStart:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onReconnectingStart(values['channel_tag']);
  },
  DelegateMethod.kNERtcOnConnectionStateChange:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onConnectionStateChanged(
        values['channel_tag'], values['state'], values['reason']);
  },
  DelegateMethod.kNERtcOnRejoinChannel:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onReJoinChannel(
        values['channel_tag'], values['result'], values['cid']?.toInt() ?? 0);
  },
  DelegateMethod.kNERtcOnLeaveChannel:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onLeaveChannel(values['channel_tag'], values['result']);
  },
  DelegateMethod.kNERtcOnDisconnect:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onDisconnect(values['channel_tag'], values['reason']);
  },
  DelegateMethod.kNERtcOnClientRoleChanged:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onClientRoleChange(
        values['channel_tag'], values['oldRole'], values['newRole']);
  },
  DelegateMethod.kNERtcOnUserJoined:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    UserJoinedEvent event = UserJoinedEvent(uid: values['uid']);
    if (values.containsKey('join_extra_info')) {
      final joinExtraInfo = values['join_extra_info'] as String;
      if (joinExtraInfo.isNotEmpty) {
        event.joinExtraInfo = NERtcUserJoinExtraInfo(customInfo: joinExtraInfo);
      }
    }
    sink_.onUserJoined(values['channel_tag'], event);
  },
  DelegateMethod.kNERtcOnUserLeave:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    UserLeaveEvent event =
        UserLeaveEvent(uid: values['uid'], reason: values['reason']);
    if (values.containsKey('leave_extra_info')) {
      final leaveExtraInfo = values['leave_extra_info'] as String;
      if (leaveExtraInfo.isNotEmpty) {
        event.leaveExtraInfo =
            NERtcUserLeaveExtraInfo(customInfo: leaveExtraInfo);
      }
    }
    sink_.onUserLeave(values['channel_tag'], event);
  },
  DelegateMethod.kNERtcOnUserAudioStart:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onUserAudioStart(values['channel_tag'], values['uid']);
  },
  DelegateMethod.kNERtcOnUserAudioStop:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onUserAudioStop(values['channel_tag'], values['uid']);
  },
  DelegateMethod.kNERtcOnUserAudioMute:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onUserAudioMute(values['channel_tag'], values['uid'], values['mute']);
  },
  DelegateMethod.kNERtcOnUserSubStreamAudioStart:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onUserSubStreamAudioStart(values['channel_tag'], values['uid']);
  },
  DelegateMethod.kNERtcOnUserSubStreamAudioStop:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onUserSubStreamAudioStop(values['channel_tag'], values['uid']);
  },
  DelegateMethod.kNERtcOnUserSubStreamAudioMute:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onUserSubStreamAudioMute(
        values['channel_tag'], values['uid'], values['mute']);
  },
  DelegateMethod.kNERtcOnUserVideoStart:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onUserVideoStart(
        values['channel_tag'], values['uid'], values['max_profile']);
  },
  DelegateMethod.kNERtcOnUserVideoStop:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onUserVideoStop(values['channel_tag'], values['uid']);
  },
  DelegateMethod.kNERtcOnUserVideoMute:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    UserVideoMuteEvent event =
        UserVideoMuteEvent(uid: values['uid'], muted: values['mute']);
    event.streamType = values['videoStreamType'];
    sink_.onUserVideoMute(values['channel_tag'], event);
  },
  DelegateMethod.kNERtcOnUserSubVideoStreamStart:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onUserSubStreamVideoStart(
        values['channel_tag'], values['uid'], values['max_profile']);
  },
  DelegateMethod.kNERtcOnUserSubVideoStreamStop:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onUserSubStreamVideoStop(values['channel_tag'], values['uid']);
  },
  DelegateMethod.kNERtcOnScreenCaptureStatus:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onScreenCaptureStatus(values['channel_tag'], values['status']);
  },
  DelegateMethod.kNERtcOnScreenCaptureSourceDataUpdate:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    final captureRectMap = values['capture_rect'] as Map<String, dynamic>;
    final captureRect = Rectangle(
        x: captureRectMap['x'] as int,
        y: captureRectMap['y'] as int,
        width: captureRectMap['width'] as int,
        height: captureRectMap['height'] as int);
    final data = ScreenCaptureSourceData(
        type: values['type'] as int,
        sourceId: 0,
        status: values['status'] as int,
        action: values['action'] as int,
        captureRect: captureRect,
        level: values['level'] as int);
    sink_.onScreenCaptureSourceDataUpdate(values['channel_tag'], data);
  },
  DelegateMethod.kNERtcOnFirstAudioDataReceived:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onFirstAudioDataReceived(values['channel_tag'], values['uid']);
  },
  DelegateMethod.kNERtcOnFirstVideoDataReceived:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    FirstVideoDataReceivedEvent event =
        FirstVideoDataReceivedEvent(uid: values['uid']);
    event.streamType = values['stream_type'];
    sink_.onFirstVideoDataReceived(values['channel_tag'], event);
  },
  DelegateMethod.kNERtcOnRemoteVideoSizeChanged:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onRemoteVideoSizeChanged(
        values['channel_tag'],
        values['uid'] ?? values['userId'],
        values['type'] ?? values['videoType'],
        values['width'],
        values['height']);
  },
  DelegateMethod.kNERtcOnLocalVideoRenderSizeChanged:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onLocalVideoRenderSizeChanged(values['channel_tag'],
        values['videoType'], values['width'], values['height']);
  },
  DelegateMethod.kNERtcOnFirstAudioFrameDecoded:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onFirstAudioFrameDecoded(values['channel_tag'], values['uid']);
  },
  DelegateMethod.kNERtcOnFirstVideoFrameDecoded:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    FirstVideoFrameDecodedEvent event = FirstVideoFrameDecodedEvent(
        uid: values['uid'], width: values['width'], height: values['height']);
    event.streamType = values['streamType'];
    sink_.onFirstVideoFrameDecoded(values['channel_tag'], event);
  },
  DelegateMethod.kNERtcOnFirstVideoFrameRender:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onFirstVideoFrameRender(
        values['channel_tag'],
        values['uid'] ?? values['userID'],
        values['streamType'],
        values['width'],
        values['height'],
        values['elapsedTime']);
  },
  DelegateMethod.kNERtcOnLocalAudioVolumeIndication:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onLocalAudioVolumeIndication(
        values['channel_tag'], values['volume'], values['enable_vad']);
  },
  DelegateMethod.kNERtcOnRemoteAudioVolumeIndication:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    if (values['volume_info'] == null) return;
    final List<dynamic> volumeInfos = values['volume_info'];
    RemoteAudioVolumeIndicationEvent event =
        RemoteAudioVolumeIndicationEvent(totalVolume: values['total_volume']);
    List<AudioVolumeInfo> infos = volumeInfos.map((item) {
      final map = item as Map<String, dynamic>;
      return AudioVolumeInfo(
          uid: map['uid'] as int,
          volume: map['volume'] as int,
          subStreamVolume: map['sub_stream_volume'] as int);
    }).toList();
    event.volumeList = infos;
    event.totalVolume = values['total_volume'];
    sink_.onRemoteAudioVolumeIndication(values['channel_tag'], event);
  },
  DelegateMethod.kNERtcOnAddLiveStreamTask:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    print(
        "onAddLiveStreamTask, task_id: ${values['task_id']}, url: ${values['url']}, error_code: ${values['error_code']}");
  },
  DelegateMethod.kNERtcOnUpdateLiveStreamTask:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    print(
        "onUpdateLiveStreamTask, task_id: ${values['task_id']}, url: ${values['url']}, error_code: ${values['error_code']}");
  },
  DelegateMethod.kNERtcOnRemoveLiveStreamTask:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    print(
        "onRemoveLiveStreamTask, task_id: ${values['task_id']}, error_code: ${values['error_code']}");
  },
  DelegateMethod.kNERtcOnLiveStreamStateChanged:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onLiveStreamState(values['channel_tag'], values['task_id'] ?? '',
        values['url'] ?? '', values['state']);
  },
  DelegateMethod.kNERtcOnRecvSEIMsg:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onRecvSEIMsg(
        values['channel_tag'], values['uid'], values['data'] ?? '');
  },
  DelegateMethod.kNERtcOnMediaRelayStateChanged:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onMediaRelayStatesChange(
        values['channel_tag'], values['state'], values['channel_name'] ?? '');
  },
  DelegateMethod.kNERtcOnMediaRelayEvent:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onMediaRelayReceiveEvent(values['channel_tag'], values['event'],
        values['error'], values['channel_name'] ?? '');
  },
  DelegateMethod.kNERtcOnLocalPublishFallbackToAudioOnly:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onLocalPublishFallbackToAudioOnly(
        values['channel_tag'], values['is_fallback'], values['stream_type']);
  },
  DelegateMethod.kNERtcOnRemoteSubscribeFallbackAudioOnly:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onRemoteSubscribeFallbackToAudioOnly(values['channel_tag'],
        values['uid'], values['is_fallback'], values['stream_type']);
  },
  DelegateMethod.kNERtcOnMediaRightChange:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    sink_.onMediaRightChange(values['channel_tag'], values['is_audio_banned'],
        values['is_video_banned']);
  },
  DelegateMethod.kNERtcOnLabFeatureCallback:
      (NERtcSubChannelEventSink sink_, Map<String, dynamic> values) {
    final param = values['param'];
    Map<Object?, Object?> paramMap;
    if (param is Map) {
      paramMap = Map<Object?, Object?>.from(param);
    } else if (param is String && param.isNotEmpty) {
      try {
        paramMap = Map<Object?, Object?>.from(jsonDecode(param));
      } catch (e) {
        paramMap = {};
      }
    } else {
      paramMap = {};
    }
    sink_.onLabFeatureCallback(
        values['channel_tag'], values['key'] ?? '', paramMap);
  },
};