[zh-CN] 可注册到 ChatClient 的管理器基础接口。 [en-US] Base interface for managers that can be registered with ChatClient.

Constructors

Methods

  • 注册群组事件处理器。

    Parameters

    • id: string

      事件处理器唯一 ID,用于后续移除。

    • handlers: GroupEventHandlerMap

      群组事件处理器集合。

    可监听事件

    onInvitationReceived, onRequestToJoinReceived, onRequestToJoinAccepted, onRequestToJoinDeclined, onInvitationAccepted, onInvitationDeclined, onUserRemoved, onGroupDestroyed, onAutoAcceptInvitationFromGroup, onMuteListAdded, onMuteListRemoved, onAllowListAdded, onAllowListRemoved, onAllMemberMuteStateChanged, onAdminAdded, onAdminRemoved, onOwnerChanged, onMembersJoined, onMembersExited, onAnnouncementChanged, onSharedFileAdded, onSharedFileDeleted, onGroupInfoChanged, onGroupDisabledChanged, onGroupMemberAttributeChanged, onUserGroupNamecardUpdated

    GroupEventName

    Returns void

    注册完成后无返回值。

    client.groupManager.addEventHandler('group-events', {
    onMembersJoined: event => console.log(event.groupId, event.members),
    });
  • 移除群组事件处理器。

    Parameters

    • id: string

      待移除的事件处理器 ID。

    Returns void

    移除完成后无返回值。

    client.groupManager.removeEventHandler('group-events');
    
  • 创建群组,可指定初始成员、公开属性、入群审批、邀请策略与最大人数。

    Parameters

    Returns Promise<CreateGroupResult>

    返回创建成功后的群 ID。

    const result = await client.groupManager.createGroup({
    name: 'Developers',
    description: 'SDK discussion',
    memberIds: ['user-1', 'user-2'],
    public: true,
    joinApprovalRequired: false,
    allowInvites: true,
    inviteNeedConfirm: true,
    maxMembers: 200,
    });
    Code 含义 HTTP 处理建议 可重试
    110 参数无效:缺少创建群组必填参数 400 检查创建群组请求体,补齐必填字段并修正字段格式
    110 参数无效:群组参数不合法 400 更换冲突参数,并确保请求字段长度与取值范围合法
    4 超过服务限制:群组数量或成员数量超限 403 减少创建或加入数量,或联系服务端提升限制
    608 群组名称无效 403 更换为合法群组名称后重试
    204 用户不存在 404 确认 memberIds 中的用户都已存在
  • 读取当前用户已加入群组的本地同步列表;该方法只读本地缓存和当前会话运行时数据,不发起网络请求。

    Returns readonly JoinedGroupSummary[]

    返回本地已加入群组轻量数组。

    const groups = client.groupManager.getJoinedGroupList();
    
  • 获取绑定指定群 ID 的单群操作对象;该方法不发起网络请求。

    Parameters

    • groupId: string

      群组 ID。

    Returns Group

    返回绑定该群 ID 的 Group 对象。

    const group = client.groupManager.getGroup('group-1');
    await group.getDetail();

    错误码 100groupId 为空。

  • 从服务端获取单个群组详情。

    Parameters

    Returns Promise<GroupDetail>

    返回标准化群详情。

    const detail = await client.groupManager.getGroupInfo({ groupId: 'group-1' });
    
    Code 含义 HTTP 处理建议 可重试
    606 群组不存在 404 确认 groupId 正确且群组仍存在
  • 批量获取多个群组详情。

    Parameters

    Returns Promise<readonly GroupDetail[]>

    返回标准化群详情数组。

    const groups = await client.groupManager.getGroupInfoList({
    groupIds: ['group-1', 'group-2'],
    });
    Code 含义 HTTP 处理建议 可重试
    606 群组不存在 404 确认 groupIds 中的群组都存在
  • 申请加入或直接加入指定群组,取决于群组入群审批配置。

    Parameters

    Returns Promise<void>

    成功时无返回值。

    await client.groupManager.joinGroup({
    groupId: 'group-1',
    message: 'Please approve my request',
    });
    Code 含义 HTTP 处理建议 可重试
    600 群组 ID 无效 - 检查并传入合法的 groupId
    601 已在该群组中 - 无需重复加入,直接使用现有群组上下文
    602 用户未加入该群组 - 确认当前用户已加入目标群组
    603 无权限的群组操作 403 等待管理员审批,或改用有权限的账号重试
    604 群组成员超上限 403 清理群成员或提升群人数上限后重试
    606 群组不存在 404 确认 groupId 正确且群组仍存在
    607 群组已禁用 - 确认群组状态恢复正常后再尝试加入
    613 用户已被群禁言列表拦截 403 联系群主或管理员移出对应名单后重试
  • 邀请用户加入指定群组。

    Parameters

    Returns Promise<void>

    成功时无返回值。

    await client.groupManager.inviteUsersToGroup({
    groupId: 'group-1',
    userIds: ['user-2', 'user-3'],
    });
    Code 含义 HTTP 处理建议 可重试
    603 无权限的群组操作 400 使用有邀请权限的账号重试
    204 用户不存在 404 确认 userIds 中的用户都已存在
    606 群组不存在 - 确认 groupId 正确且群组仍存在
    607 群组已禁用 - 确认群组状态恢复正常后再重试
  • 同意用户的入群申请。

    Parameters

    Returns Promise<void>

    成功时无返回值。

    await client.groupManager.acceptGroupJoinRequest({
    groupId: 'group-1',
    userId: 'user-2',
    });

    错误码 110:申请人 ID 非法、申请不存在或群组不存在。

    错误码 202:鉴权失败或无权限。

  • 拒绝用户的入群申请。

    Parameters

    Returns Promise<void>

    成功时无返回值。

    await client.groupManager.rejectGroupJoinRequest({
    groupId: 'group-1',
    userId: 'user-2',
    reason: 'Group is full',
    });

    错误码 110:申请人 ID、拒绝原因非法,申请不存在或群组不存在。

    错误码 202:鉴权失败或无权限。

  • 接受当前用户收到的群组邀请。

    Parameters

    Returns Promise<void>

    成功时无返回值。

    await client.groupManager.acceptInvitation({ groupId: 'group-1' });
    

    错误码 110:群 ID 非法、邀请不存在或群组不存在。

    错误码 202:鉴权失败。

  • 拒绝当前用户收到的群组邀请。

    Parameters

    Returns Promise<void>

    成功时无返回值。

    await client.groupManager.rejectInvitation({ groupId: 'group-1' });
    

    错误码 110:群 ID 非法、邀请不存在或群组不存在。

    错误码 202:鉴权失败。