audienceRejectCoHostInvitation method

Future<bool> audienceRejectCoHostInvitation({
  1. String customData = '',
})

Implementation

Future<bool> audienceRejectCoHostInvitation({
  String customData = '',
}) async {
  ZegoLoggerService.logInfo(
    'customData:$customData',
    tag: 'live-streaming-coHost',
    subTag: 'controller, audienceRejectCoHostInvitation',
  );

  if (null == private.hostManager ||
      null == private.connectManager ||
      null == private.prebuiltConfig) {
    ZegoLoggerService.logInfo(
      'params is not valid, can not invite, '
      'hostManager:${private.hostManager}, '
      'connectManager:${private.connectManager}, '
      'prebuiltConfig:${private.prebuiltConfig}, ',
      tag: 'live-streaming-coHost',
      subTag: 'controller, audienceRejectCoHostInvitation',
    );

    return false;
  }

  if (private.hostManager!.notifier.value?.id.isEmpty ?? true) {
    ZegoLoggerService.logInfo(
      'host(${private.hostManager!.notifier.value?.id}) is null',
      tag: 'live-streaming-coHost',
      subTag: 'controller, audienceRejectCoHostInvitation',
    );

    return false;
  }

  if (LiveStatus.living != private.connectManager!.liveStatusNotifier.value) {
    ZegoLoggerService.logInfo(
      'not living now',
      tag: 'live-streaming-coHost',
      subTag: 'controller, audienceRejectCoHostInvitation',
    );
  }

  return ZegoUIKit()
      .getSignalingPlugin()
      .refuseInvitation(
        inviterID: private.hostManager!.notifier.value?.id ?? '',
        data: customData,
      )
      .then((result) {
    ZegoLoggerService.logInfo(
      'result:$result',
      tag: 'live-streaming-coHost',
      subTag: 'controller, audienceRejectCoHostInvitation',
    );

    private.events?.coHost.audience.onActionRefuseInvitation?.call();

    if (result.error != null) {
      showDebugToast('error:${result.error}');
    }

    return result.error == null;
  });
}