muteByUserID method
Mute the seat by targetUserID
.
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: mute ZegoLiveAudioRoomControllerSeatImpl.muteStateNotifier ZegoLiveAudioRoomControllerSeatImpl.muteLocally ZegoLiveAudioRoomControllerSeatImpl.muteLocallyByUserID ZegoLiveAudioRoomControllerSeatImpl.getUserByIndex ZegoLiveAudioRoomAudioVideoEvents.onMicrophoneTurnOnByOthersConfirmation
Implementation
Future<bool> muteByUserID(
String targetUserID, {
bool muted = true,
}) async {
ZegoLoggerService.logInfo(
'muteByUserID, targetUserID:$targetUserID, muted:$muted',
tag: 'audio room',
subTag: 'controller.seat',
);
final targetIndex =
private.seatManager?.getIndexByUserID(targetUserID) ?? -1;
if (-1 == targetIndex) {
ZegoLoggerService.logInfo(
'mute $targetUserID, but user is not on seat',
tag: 'audio room',
subTag: 'controller.seat',
);
return false;
}
return await private.seatManager?.muteSeat(
targetIndex,
muted: muted,
) ??
false;
}