群组管理类,用于管理群组的创建,删除及成员管理等操作。

Hierarchy

  • BaseManager
    • ChatGroupManager

Constructors

Properties

_eventEmitter?: NativeEventEmitter
TAG: string = 'ChatGroupManager'

Methods

  • 接受入群邀请。

    Parameters

    • groupId: string

      群组 ID。

    • inviter: string

      邀请人的用户 ID。

    Returns Promise<void>

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

  • 同意入群申请。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • userId: string

    Returns Promise<void>

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

  • 添加群组管理员。

    仅群主可调用此方法。管理员不可调用该方法。

    Parameters

    • groupId: string

      群组 ID。

    • admin: string

      设置为群组管理员的成员用户 ID。

    Returns Promise<void>

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

  • 将成员加入群组白名单。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • members: string[]

      要加入群组白名单的用户 ID 列表。

    Returns Promise<void>

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

  • 添加群组监听器。

    Parameters

    Returns void

  • 向群组中添加新成员。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • members: string[]

      要加入的成员列表。

    • Optionalwelcome: string

      (可选) 欢迎消息。

    Returns Promise<void>

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

  • 屏蔽群消息。

    屏蔽群消息的用户仍是群成员,但无法接收群消息。

    Parameters

    • groupId: string

      群组 ID。

    Returns Promise<void>

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

  • 将成员加入群组的黑名单列表。

    成功调用该方法后,该用户会先被移除出群组,然后加入群组黑名单。该用户无法接收、发送群消息,也无法申请再次加入群组。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • members: string[]

      要加入群组黑名单的成员的用户 ID 列表。

    Returns Promise<void>

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

  • 修改群组描述。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • description: string

      新的群组描述。

    Returns Promise<void>

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

  • 修改群组名称。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • groupName: string

      新的群组名称。

    Returns Promise<void>

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

  • 转移群主权限。

    仅群主可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • newOwner: string

      新群主的用户 ID。

    Returns Promise<void>

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

  • 创建群组。

    群组创建成功后,会更新内存及数据库中的数据,多端多设备会收到相应的通知事件,然后将群组更新到内存及数据库中。

    可通过设置 ChatGroupEventListener 监听相关事件。

    Parameters

    • options: ChatGroupOptions

      群组创建时需设置的选项。该参数可选,不可为 null。详见 ChatGroupOptions. 群组的其他选项如下: - 群组最大成员数,默认值为 200; - 群组类型,详见 ChatGroupStyle。默认值为 ChatGroupStyle#PrivateOnlyOwnerInvite,即私有群,仅群主可邀请用户入群; - 邀请入群是否需要对方同意,默认为 false,即邀请后直接入群; - 群详情扩展。

    • groupName: string

      群组名称。该参数可选,不设置传 null

    • Optionaldesc: string

      群组描述。该参数可选,不设置传 null

    • OptionalinviteMembers: string[]

      群成员列表。可选参数。该参数不可为 null

    • OptionalinviteReason: string

      成员入群的邀请信息。该参数可选,不设置传 null

    Returns Promise<ChatGroup>

    创建成功的群组实例。

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

  • 拒绝入群邀请。

    Parameters

    • groupId: string

      群组 ID。

    • inviter: string

      邀请人的用户 ID。

    • Optionalreason: string

      拒绝理由。

    Returns Promise<void>

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

  • 拒绝用户的入群申请。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • username: string

      申请入群的用户 ID。

    • Optionalreason: string

      拒绝理由。

    Returns Promise<void>

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

  • 解散群组。

    仅群主可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    Returns Promise<void>

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

  • 下载群共享文件。

    Parameters

    • groupId: string

      群组 ID。

    • fileId: string

      群共享文件 ID。

    • savePath: string

      群共享文件保存地址。

    • Optionalcallback: ChatGroupFileStatusCallback

      (可选)下载结果回调。

    Returns Promise<void>

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

  • 从服务器分页获取群组白名单列表。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    Returns Promise<string[]>

    群组白名单列表。

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

  • 从服务器获取群组公告。

    所有群成员都可以调用该方法。

    Parameters

    • groupId: string

      群组 ID。

    Returns Promise<string>

    群组公告。

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

  • 从服务器分页获取群组黑名单列表。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • pageSize: number = 200

      每页获取的数量。

    • pageNum: number = 1

      当前页码,从 1 开始。

    Returns Promise<string[]>

    群组黑名单列表。

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

  • 从服务器分页获取群共享文件。

    Parameters

    • groupId: string

      群组 ID。

    • pageSize: number = 200

      每页获取的群共享文件数量。

    • pageNum: number = 1

      当前页面,从 1 开始。

    Returns Promise<ChatGroupSharedFile[]>

    群共享文档列表。

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

  • 从服务器获取群组详情。

    Parameters

    • groupId: string

      群组 ID。

    • isFetchMembers: boolean = false

      是否获取群组成员信息: - true:是;该方法最多可获取 200 个成员的信息。如需获取所有群组成员的信息,可调用 fetchMemberListFromServer。 - false:否。

    Returns Promise<undefined | ChatGroup>

    群组实例。如果群组不存在,返回 undefined

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

  • 获取已加入的群组数目。

    Returns Promise<number>

    已加入群组的数目。

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

  • 以分页方式从服务器获取当前用户已加入的群组。

    此操作只返回群组列表,不包含群组的所有成员信息。如果要更新某个群组包括成员的全部信息,需要再调用 #fetchMemberListFromServer。

    Parameters

    • pageSize: number

      每页期望返回的群组数。[1, 20]

    • pageNum: number

      当前页码,从 0 开始。

    Returns Promise<ChatGroup[]>

    当前用户已加入的群组列表

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

  • 获取单个群成员所有自定义属性。

    Parameters

    • groupId: string

      群组 ID。

    • member: string

      要获取的自定义属性的群成员的用户 ID。

    Returns Promise<undefined | Record<string, string>>

    成员属性。

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

  • 从服务器分页获取群组成员。

    Parameters

    • groupId: string

      群组 ID。

    • pageSize: number = 200

      每页获取的群组成员数量。

    • Optionalcursor: string

      开始取数据的游标位置。首次调用时传 null,按成员加入群组时间的倒序获取。

    Returns Promise<ChatCursorResult<string>>

    群组成员列表以及下次查询的 cursor。详见 ChatCursorResult

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

  • 根据指定的属性 key 获取多个群成员的自定义属性。

    Parameters

    • groupId: string

      群组 ID。

    • members: string[]

      要获取自定义属性的群成员的用户 ID 数组。

    • OptionalattributeKeys: string[]

      要获取自定义属性的 key 的数组。若 keys 为空数组或不传则获取这些群成员的所有自定义属性。

    Returns Promise<Map<string, Record<string, string>>>

    指定成员指定关键字的属性。

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

  • 从服务器分页获取群组禁言列表。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • pageSize: number = 200

      每页获取的禁言成员数量。

    • pageNum: number = 1

      当前页码,从 1 开始。

    Returns Promise<string[]>

    群组禁言列表。

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

  • 分页从服务器获取公开群组。

    Parameters

    • pageSize: number

      每页期望返回的群组数。

    • Optionalcursor: string

      开始取数据的游标位置。首次调用时传 null,按群组创建时间的倒序获取。

    Returns Promise<ChatCursorResult<ChatGroupInfo>>

    群组列表以及用于下次查询的 cursor。

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

  • 根据群组 ID,从内存中获取群组对象。

    Parameters

    • groupId: string

      群组 ID。

    Returns Promise<undefined | ChatGroup>

    群组实例。如果群组不存在,返回 undefined

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

  • 从本地数据库获取当前用户已加入的群组。

    Returns Promise<ChatGroup[]>

    群组列表。

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

  • 邀请用户加入群组。

    该方法只适用于以下三种类型的群组: PrivateOnlyOwnerInvitePrivateMemberCanInvitePublicJoinNeedApproval。 对于 PrivateOnlyOwnerInvite 类型,只有群主可以邀请其他用户加入群组。 对于 PrivateMemberCanInvite 类型,所有成员都可以邀请其他用户加入群组。 对于 PublicJoinNeedApproval 类型,所有成员都可以邀请其他用户加入群组,但邀请后需要群主或群管理员审批。

    Parameters

    • groupId: string

      群组 ID。

    • members: string[]

      受邀用户的用户 ID 列表。

    • Optionalreason: string

      邀请理由。

    Returns Promise<void>

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

  • 从服务器查询该用户是否在群组白名单上。

    Parameters

    • groupId: string

      群组 ID。

    Returns Promise<boolean>

    该用户是否在群白名单上。

    • true:是。
    • false:否。

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

  • 加入公开群组。

    若群组无需群主或管理员验证,可直接加入。

    若群组需要群主或管理员验证,用户需等待请求批准后才能加入。群组类型详见 ChatGroupStyle

    Parameters

    • groupId: string

      群组 ID。

    Returns Promise<void>

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

  • 主动退出群组。

    Parameters

    • groupId: string

      群组 ID。

    Returns Promise<void>

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

  • 禁言全体群成员。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    Returns Promise<void>

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

  • 禁言群组成员。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • members: string[]

      要禁言的成员用户 ID 列表。

    • duration: number = -1

      禁言时长。预留参数。

    Returns Promise<void>

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

  • 移除群组管理员权限。

    仅群主可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • admin: string

      移除群组管理员权限的成员用户 ID。

    Returns Promise<void>

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

  • 清除群组监听器。

    Returns void

  • 从群白名单中移出成员。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • members: string[]

      要移出群组白名单的成员列表。

    Returns Promise<void>

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

  • 移除群组监听器。

    Parameters

    Returns void

  • 删除指定群共享文件。

    群成员可以删除自己上传的共享文件,群主或管理员可以删除所有人上传的共享文件。

    Parameters

    • groupId: string

      群组 ID。

    • fileId: string

      群共享文件 ID。

    Returns Promise<void>

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

  • 从群组中移除用户。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • members: string[]

      要移出群组的成员用户 ID 列表。

    Returns Promise<void>

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

  • 申请加入群组。

    该方法仅适用于群组类型为 ChatGroupStyle.PublicJoinNeedApproval 的公开群组。

    Parameters

    • groupId: string

      群组 ID。

    • Optionalreason: string

      申请加入的理由。

    Returns Promise<void>

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

  • 设置单个群成员的自定义属性。

    Parameters

    • groupId: string

      群组 ID。

    • member: string

      要设置自定义属性的群成员的用户 ID。

    • attributes: Record<string, string>

    Returns Promise<void>

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

  • Parameters

    • event: NativeEventEmitter

    Returns void

  • 解除全体成员禁言。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    Returns Promise<void>

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

  • 将成员移除群组禁言名单。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • members: string[]

      要移出禁言名单的用户 ID 列表。

    Returns Promise<void>

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

  • 解除屏蔽群消息。

    Parameters

    • groupId: string

      群组 ID。

    Returns Promise<void>

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

  • 将用户从群组黑名单中移除。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • members: string[]

      要移出黑名单的用户 ID 列表。

    Returns Promise<void>

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

  • 更新群公告。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • announcement: string

      新的群公告。

    Returns Promise<void>

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

  • 更新群组扩展字段信息。

    仅群主和管理员可调用此方法。

    Parameters

    • groupId: string

      群组 ID。

    • extension: string

      更新后的群组扩展字段信息。

    Returns Promise<void>

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

  • 上传群组共享文件。

    上传成功时会触发群共享文件上传回调。

    Parameters

    • groupId: string

      群组 ID。

    • filePath: string

      群共享文件路径。

    • Optionalcallback: ChatGroupFileStatusCallback

      (可选) 群共享文件上传结果回调。

    Returns Promise<void>

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

  • Type Parameters

    • T

    Parameters

    • method: string
    • Optionalargs: {}

      Returns Promise<T>

    • Parameters

      • result: any

      Returns void

    • Parameters

      Returns void

    • Parameters

      Returns void