文档中心
IM 即时通讯
文档中心
体验 App
SDK 中心
API 中心
常见问题
代码市场
进入控制台
立即注册
登录
中文站 English
  • 文档中心
  • 即时通讯
  • 群组相关
  • 群资料管理

群资料管理

更新时间:2024-11-01 19:56

功能简介

ZIM SDK 提供了群资料管理功能,支持用户查询/修改群资料,比如群名、群昵称、群头像、群公告等基本群信息,也支持用户对某个群组设置仅自己可见的群备注。

前提条件

在实现“群资料管理”功能之前,请确保:

  • 已在 ZEGO 控制台 创建项目,获取到了接入 ZIM SDK 服务所需的 AppID 和 ServerSecret。ZIM 服务权限不是默认开启的,使用前,请先在 ZEGO 控制台 自助开通 ZIM 服务(详情请参考 项目管理 - 即时通讯),若无法开通 ZIM 服务,请联系 ZEGO 技术支持开通。
  • 已获取登录 SDK 所需的 Token,详情请参考 使用 Token 鉴权。
  • 已集成 ZIM SDK,详情请参考 快速开始 - 实现基本收发消息 的 “3 集成 SDK”。

实现流程

  • 用户使用“群资料管理”功能之前,请先加入某个群组,否则无法使用相关功能,详情请参考 加入群组。
  • 群内成员(包含群主)都可以使用“群资料管理”功能。

查询群资料

用户登录、并加入某个群组后,如果想要了解自己加入群组的相关资料,可以通过调用 queryGroupInfo 接口,查询群资料。

查询成功后,用户可以通过 ZIMGroupInfoQueriedResult 收到查询结果。

调用接口示例

queryGroupInfo(groupID: string): Promise<ZIMGroupInfoQueriedResult>

参数说明

参数/回调 类型 是否必填 说明
groupID string 是 查询群资料的群组 ID。
Promise ZIMGroupInfoQueriedResult 是 查询群资料操作的结果回调通知。

示例代码

// 群内成员 查询群资料,例如,群名、群昵称、群公告、群头像 URL 等
var groupID = '';
zim.queryGroupInfo(groupID)
    .then(function ({ groupInfo }) {
        // 查询成功
    })
    .catch(function (err) {
        // 查询失败
    });

修改群名

用户登录、并加入某个群组后,如果想要修改自己加入群组的群名,可以通过调用 updateGroupName 接口,修改群组名称。

修改成功后,全体群成员都可以通过 groupNameUpdated 收到通知。

调用接口示例

updateGroupName(groupName: string, groupID: string): Promise<ZIMGroupNameUpdatedResult>

参数说明

参数/回调 类型 是否必填 说明
groupName string 是 修改后的群组名称。
groupID string 是 修改群组名称的群组 ID。
Promise ZIMGroupNameUpdatedResult 是 修改群组名称操作的结果回调通知。

示例代码

// 群内成员 修改群名
// groupName 最大 64 字节的字符串,无特殊字符限制。
var groupID = '';
var groupName = '';
zim.updateGroupName(groupName, groupID)
    .then(function ({ groupID, groupName }) {
        // 操作成功
    })
    .catch(function (err) {
        // 操作失败
    });

// 注册监听“群名更新”的回调
zim.on('groupNameUpdated', function (zim, { groupID, groupName, operatedInfo }) {
    console.log('groupNameUpdated', groupID, groupName, operatedInfo);
});

修改群头像

用户登录、并加入某个群组后,如果想要修改自己加入群组的群头像,可以通过调用 updateGroupAvatarUrl 接口,修改群组头像。

修改成功后,全体群成员都可以通过 groupAvatarUrlUpdated 收到通知。

调用接口示例

updateGroupAvatarUrl(groupAvatarUrl: string, groupID: string): Promise<ZIMGroupAvatarUrlUpdatedResult>

参数说明

参数/回调 类型 是否必填 说明
groupAvatarUrl string 是 修改后的群组头像 URL。
groupID string 是 修改群头像的群组 ID。
Promise ZIMGroupAvatarUrlUpdatedResult 是 修改群组头像 URL 操作的结果回调通知。

示例代码

// 群内成员 修改群头像
// URL 最大 500 字节,无特殊字符限制
var groupID = '';
var groupAvatarUrl = '';
zim.updateGroupAvatarUrl(groupAvatarUrl, groupID)
    .then(function ({ groupID, groupAvatarUrl }) {
        // 操作成功
    })
    .catch(function (err) {
        // 操作失败
    });

// 注册监听“群头像 URL 更新”的回调
zim.on('groupAvatarUrlUpdated', function (zim, { groupID, groupAvatarUrl, operatedInfo }) {
    console.log('groupAvatarUrlUpdated', groupID, groupAvatarUrl, operatedInfo);
});

修改群公告

用户登录、并加入某个群组后,如果想要修改自己加入群组的群公告,可以通过调用 updateGroupNotice 接口,修改群组公告。

修改成功后,全体群成员都可以通过 groupNoticeUpdated 收到通知。

调用接口示例

updateGroupNotice(groupNotice: string, groupID: string): Promise<ZIMGroupNoticeUpdatedResult>

参数说明

参数/回调 类型 是否必填 说明
groupNotice string 是 修改后的群组公告内容。
groupID string 是 修改群组公告的群组 ID。
Promise ZIMGroupNoticeUpdatedResult 是 修改群组公告操作的结果回调通知。

示例代码

// 群内成员 修改群公告
var groupID = '';
var groupNotice = '';
zim.updateGroupNotice(groupNotice, groupID)
    .then(function ({ groupID, groupNotice }) {
        // 操作成功
    })
    .catch(function (err) {
        // 操作失败
    });

// 注册监听“群公告更新”的回调
zim.on('groupNoticeUpdated', function (zim, { groupID, groupNotice, operatedInfo }) {
    console.log('groupNoticeUpdated', groupID, groupNotice, operatedInfo);
});

修改群备注

群备注,是用户为群聊设置个性化的备注名称,以便于区分不同的群聊。例如,可以将工作群备注为“工作群”,家庭群备注为“家庭群”,这样在识别群聊时会更加方便。

群备注仅用户自己可见,不会影响其他群聊成员的群名称显示。

用户登录、并加入某个群组后,如果想要修改群组的群备注,可以通过调用 updateGroupAlias 接口,修改群组备注,群备注仅该用户自身可见,且对应会话的备注也会自动同步。

// 修改备注
// groupAlias 最大 256 字节的字符串,无特殊字符限制。
try {
    const groupAlias = "new_group_alias_example"; // 最大 256 字节,无特殊字符限制
    const groupID = "example_group_id"; // 群组 ID 示例

    // 调用 updateGroupAlias 方法
    const result = await zim.updateGroupAlias(groupAlias, groupID);
    console.log("群别名更新成功:", result);
} catch (error) {
    console.error("群别名更新失败:", error);
}

修改成功后,该用户的所有端都可以通过 groupAliasUpdated 收到通知。

// 监听群备注修改通知
zim.on('groupAliasUpdated', function (zim, { groupID, groupAlias, operatedUserID }) {
    // 在这里可以处理群别名更新后的逻辑,例如更新 UI 或提示用户
});

此外,该用户还会收到 conversationChanged 回调,得知 conversationAlias(会话别名)更新,详情请参考 获取会话列表 - 监听会话变更。

本篇目录
  • 免费试用
  • 提交工单
    咨询集成、功能及报价等问题
    电话咨询
    400 1006 604
    咨询客服
    微信扫码,24h在线

    联系我们

  • 文档反馈