operatingUser method

  1. @override
Future<void> operatingUser({
  1. required String roomId,
  2. required ChatroomUserOperationType type,
  3. required String userId,
})
override

Description Various operations of group owners or administrators on users.

  • Parameters:
    • roomId: chatroom id
    • userId: user id
    • type: ChatroomUserOperationType
    • completion: callback,what if success or error.

Implementation

@override
Future<void> operatingUser({
  required String roomId,
  required ChatroomUserOperationType type,
  required String userId,
}) async {
  switch (type) {
    case ChatroomUserOperationType.mute:
      await Client.getInstance.chatRoomManager.muteChatRoomMembers(
        roomId,
        [userId],
        duration: -1,
      );
      ChatroomContext.instance.muteList.add(userId);
      break;
    case ChatroomUserOperationType.unmute:
      await Client.getInstance.chatRoomManager.unMuteChatRoomMembers(
        roomId,
        [userId],
      );
      ChatroomContext.instance.muteList.remove(userId);
      break;
    case ChatroomUserOperationType.kick:
      await Client.getInstance.chatRoomManager.removeChatRoomMembers(
        roomId,
        [userId],
      );
      break;
    default:
      break;
  }
}