muteLocallyByUserID method

Future<bool> muteLocallyByUserID(
  1. String targetUserID, {
  2. bool muted = true,
})

Mute the seat by targetUserID locally. After mute, if you want to un-mute, you can set muted to false.

And on side of the user at the targetIndex seat, return true/false in the callback of ZegoLiveAudioRoomAudioVideoEvents.onMicrophoneTurnOnByOthersConfirmation to open microphone or not.

Related APIs: muteStateNotifier muteLocally getUserByIndex ZegoLiveAudioRoomControllerSeatHostImpl.mute ZegoLiveAudioRoomControllerSeatHostImpl.muteByUserID ZegoLiveAudioRoomAudioVideoEvents.onMicrophoneTurnOnByOthersConfirmation

example: Mute/UnMute users on the $targetIndex

 ZegoUIKitPrebuiltLiveAudioRoomController().seat.muteLocallyByUserID(
   $userID,
   muted: ! ZegoUIKitPrebuiltLiveAudioRoomController().seat.mutedStateNotifier(
     $userSeatIndex,
     isLocal: true,
   ).value,
 );

Implementation

Future<bool> muteLocallyByUserID(
  String targetUserID, {
  bool muted = true,
}) async {
  ZegoLoggerService.logInfo(
    'muteLocalByUserID, targetUserID:$targetUserID, muted:$muted',
    tag: 'audio room',
    subTag: 'controller.seat',
  );

  return await ZegoUIKit().muteUserAudio(targetUserID, muted);
}