聊天室管理类,负责聊天室加入和退出、聊天室列表获取以及成员权限管理等。

Hierarchy

  • Native
    • ChatRoomManager

Constructors

Properties

_roomListeners: Set<ChatRoomEventListener>
_roomSubscriptions: Map<string, EmitterSubscription>
TAG: string = 'ChatRoomManager'

Methods

  • 设置聊天室自定义属性。

    Parameters

    • params: {
          attributes: {
              [x: string]: string;
          }[];
          deleteWhenLeft?: boolean;
          overwrite?: boolean;
          roomId: string;
      }

      roomId 聊天室 ID。

      • attributes 要设置的聊天室自定义属性,为键值对(key-value)结构。 在键值对中,key 为属性名,不超过 128 字符;value 为属性值,不超过 4096 字符。 每个聊天室最多有 100 个属性,每个应用的聊天室属性总大小不超过 10 GB。Key 支持以下字符集:
        • 26 个小写英文字母 a-z;
      • 26 个大写英文字母 A-Z;
      • 10 个数字 0-9;
      • “_”, “-”, “.”。
      • deleteWhenLeft: 当前成员退出聊天室是否自动删除该自定义属性。
        • (Default)true:是
        • false:否
      • overwrite: 是否覆盖其他成员设置的属性 key 相同的属性。
        • true:是
        • (Default)false:否
      • attributes: {
            [x: string]: string;
        }[]
      • Optional deleteWhenLeft?: boolean
      • Optional overwrite?: boolean
      • roomId: string

    Returns Promise<Map<string, string>>

    若某些属性设置失败,SDK 返回键值对(key-value)结构的属性集合,在每个键值对中 key 为属性 key,value 为失败原因。

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 添加聊天室管理员。

    仅聊天室所有者有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • admin: string

      聊天室管理员的用户 ID。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 将成员加入聊天室白名单。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • members: string[]

      要加入聊天室白名单的成员用户 ID 列表。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 将指定成员加入聊天室黑名单。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • members: string[]

      要被加入聊天室黑名单的成员用户 ID。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 修改聊天室描述信息。

    仅聊天室所有者有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • description: string

      修改后的聊天室描述信息。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 修改聊天室名称。

    仅聊天室所有者有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • subject: string

      聊天室新名称

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 转让聊天室所有者权限。

    仅聊天室所有者有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • newOwner: string

      新聊天室所有者的用户 ID。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 创建聊天室。

    Parameters

    • subject: string

      聊天室名称。

    • Optional description: string

      聊天室描述。

    • Optional welcome: string

      新成员加入时的欢迎消息。

    • Optional members: string[]

      被邀请加入的成员用户 ID 列表。

    • maxCount: number = 300

      聊天室最大人数。

    Returns Promise<ChatRoom>

    聊天室实例。

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 解散聊天室。

    仅聊天室所有者有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 从服务器获取白名单列表。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    Returns Promise<string[]>

    白名单列表。

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 从服务器获取聊天室公告内容。

    Parameters

    • roomId: string

      聊天室 ID。

    Returns Promise<undefined | string>

    聊天室公告内容。

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 从服务器获取聊天室数据。

    Parameters

    • roomId: string

      聊天室 ID。

    • Optional keys: string[]

      要获取的聊天室自定义属性的属性 key 列表。若将该参数设置为 null 或留空,调用该方法会获取聊天室所有自定义属性。

    Returns Promise<Map<string, string>>

    聊天室自定义属性,键值对格式。

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 从服务器获取黑名单列表。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • pageNum: number = 1

      当前页码,从 1 开始。

    • pageSize: number = 200

      期望每页获取的名单数量。

    Returns Promise<string[]>

    聊天室黑名单用户 ID 列表。

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 从服务器获取聊天室详情。

    默认不包含聊天室成员列表。

    Parameters

    • roomId: string

      聊天室 ID。

    Returns Promise<undefined | ChatRoom>

    聊天室详情。如果聊天室不存在,返回 undefined

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 获取聊天室成员用户 ID 列表。

    Parameters

    • roomId: string

      聊天室 ID。

    • cursor: string = ''

      开始取数据的游标位置。首次调用 cursor 传空字符串或 "null",SDK 按照用户加入聊天室时间的倒序获取数据。

    • pageSize: number = 200

      每页期望返回的成员数。

    Returns Promise<ChatCursorResult<string>>

    聊天室成员的用户 ID 列表和 cursor。详见 ChatCursorResult

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 分页从服务器获取聊天室禁言名单。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • pageNum: number = 1

      当前页码,从 1 开始。

    • pageSize: number = 200

      期望每页获取的名单数量。

    Returns Promise<string[]>

    禁言成员的用户 ID 列表。

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 从服务器分页获取公开聊天室。

    Parameters

    • pageNum: number = 1

      当前页码,从 1 开始。

    • pageSize: number = 200

      每页期望返回的聊天室数量。

    Returns Promise<ChatPageResult<ChatRoom>>

    获取的聊天室列表。详见 ChatPageResult

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 根据聊天室 ID 从本地数据库获取聊天室。

    Parameters

    • roomId: string

      聊天室 ID。

    Returns Promise<undefined | ChatRoom>

    聊天室实例。如果聊天室不存在,返回 undefined

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 查询指定成员是否在聊天室白名单中。

    Parameters

    • roomId: string

      聊天室 ID。

    Returns Promise<boolean>

    指定成员是否在聊天室白名单中。

    • true:是;
    • false:否。

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 加入聊天室。

    退出聊天室见: leaveChatRoom

    Parameters

    • roomId: string

      要加入的聊天室的 ID。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 退出聊天室。

    Parameters

    • roomId: string

      要退出的聊天室 ID。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 禁言聊天室所有成员。

    仅聊天室所有者或者管理员有权限调用该方法。

    该方法对聊天室所有者、管理员和在白名单中的成员无效。

    Parameters

    • roomId: string

      聊天室 ID。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 将聊天室中指定成员禁言。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • muteMembers: string[]

      要禁言的成员的用户 ID。

    • duration: number = -1

      禁言时长,单位为毫秒。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 删除聊天室自定义属性。

    Parameters

    • params: {
          forced?: boolean;
          keys: string[];
          roomId: string;
      }

      roomId: 聊天室 ID。

      • keys: 要删除的聊天室自定义属性的 key 列表。
      • forced: 是否删除其他成员设置的属性 key 相同的自定义属性。
        • true:是
        • (默认)false:否
      • Optional forced?: boolean
      • keys: string[]
      • roomId: string

    Returns Promise<Map<string, string>>

    若某些属性设置失败,SDK 返回键值对(key-value)结构的属性集合,在每个键值对中 key 为属性 key,value 为失败原因。

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 移除聊天室管理员权限。

    Parameters

    • roomId: string

      聊天室 ID。

    • admin: string

      要被移除管理员权限的成员用户 ID。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 将成员移出聊天室。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • members: string[]

      要被移出聊天室的成员用户 ID。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 将聊天室成员从白名单中移除。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • members: string[]

      要移除聊天室白名单的成员用户 ID 列表。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • Parameters

    • event: NativeEventEmitter

    Returns void

  • 将指定用户从聊天室黑名单中移除。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • members: string[]

      要被移除聊天室黑名单的用户 ID 列表。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 解除聊天室全员禁言。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 取消对指定聊天室成员的禁言。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • unMuteMembers: string[]

      要取消禁言的成员的用户 ID。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • 更新聊天室公告。

    仅聊天室所有者或者管理员有权限调用该方法。

    Parameters

    • roomId: string

      聊天室 ID。

    • announcement: string

      修改后的聊天室公告内容。

    Returns Promise<void>

    Throws

    如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError

  • Type Parameters

    • T

    Parameters

    • method: string
    • Optional args: {}

      Returns Promise<T>

    • Parameters

      • result: any

      Returns void

    Generated using TypeDoc