实现公告频道
更新时间: 2024/09/27 10:50:00
公告频道是基于圈组的服务器、频道能力打造的全新功能。有别于社区-话题的一对多模式,一个公告频道服务器仅支持创建一个频道。用户可以订阅公告频道,查看管理员发送的公告消息。
效果展示
公告频道列表 | 创建/加入公告频道 | 公告频道会话 | 公告频道设置 |
---|---|---|---|
前提条件
已集成圈组界面。
实现方式
创建公告频道
创建圈组服务器、公告频道及管理员身份组的流程如下:
创建服务器时,通过自定义参数的 announce
字段来标识服务器是否为公告频道,并设置公告频道的相关属性。自定义参数示例如下:
java{
// 记录服务器的描述信息
"topic": "用户服务器的具体描述",
// 用于标识服务器是否为公告频道,并设置公告频道的相关属性
"announce": {
"channelId": 1000, // long 型,公告频道对应的唯一频道 ID,必填,否则无效
"roleId": 1000, // long 型,公告频道固定的管理员身份组 ID,必填,否则无效
"allPermission": 1, // int 型,服务器默认的身份组是否完成权限更新,1 表示已经更新完成,0 表示正在更新
"emojiReplay":1 // int 型,是否允许服务器进行表情回复,1 表示允许,0 表示不允许
}
}
详细代码可参考 QChatServerRepo.createAnnouncementServer
实现。
加入公告频道
用户可通过搜索公告频道 ID(channelId
)加入公告频道。
身份组说明
订阅者
订阅者为公告频道中最基础的角色(即 everyone),可通过邀请或者搜索公共频道 ID 加入的方式成为公告频道的订阅者,订阅者只能查看公告频道中的消息,不具备编辑、发送消息的权限,也不能修改公共频道信息。
管理员
管理员只能从订阅者中选择添加,其实现方式为一个特殊的身份组(随公告频道创建),该身份组中的成员即为管理员,管理员的添加、移除即为身份组成员的添加和移除。管理员默认具有编辑消息、发送消息、编辑公告频道信息的权限。创建者可以管理管理员的权限,包括:
权限名称 | 权限描述 | 权限默认状态 |
---|---|---|
发送公告消息 | 在公告频道中发送消息的权限 | 打开 |
编辑频道信息 | 编辑公告频道名称、说明、头像的权限 | 打开 |
删除公告消息 | 在公告频道中删除他人消息的权限 | 打开 |
管理订阅者 | 添加、移除订阅者的权限 | 打开 |
管理表情评论 | 在公共频道中管理是否允许表情评论的权限 | 打开 |
其中是否允许表情评论对公共频道中的所有人都生效,若创建者或者具有权限的管理员关闭允许表情评论,则公告频道中的所有人都不能进行表情评论操作。
此文档是否对你有帮助?