实现公告频道

更新时间: 2024/03/15 18:25:48

公告频道是基于圈组的服务器、频道能力打造的全新功能。有别于社区-话题的一对多模式,一个公告频道服务器仅支持创建一个频道。用户可以订阅公告频道,查看管理员发送的公告消息。

效果展示

公告频道列表 创建/加入公告频道 公告频道会话 公告频道设置

前提条件

集成圈组界面

实现方式

创建公告频道

创建圈组服务器、公告频道及管理员身份组的流程如下:

创建服务器时,通过自定义参数的 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 加入的方式成为公告频道的订阅者,订阅者只能查看公告频道中的消息,不具备编辑、发送消息的权限,也不能修改公共频道信息。

管理员

管理员只能从订阅者中选择添加,其实现方式为一个特殊的身份组(随公告频道创建),该身份组中的成员即为管理员,管理员的添加、移除即为身份组成员的添加和移除。管理员默认具有编辑消息、发送消息、编辑公告频道信息的权限。创建者可以管理管理员的权限,包括:

权限名称 权限描述 权限默认状态
发送公告消息 在公告频道中发送消息的权限 打开
编辑频道信息 编辑公告频道名称、说明、头像的权限 打开
删除公告消息 在公告频道中删除他人消息的权限 打开
管理订阅者 添加、移除订阅者的权限 打开
管理表情评论 在公共频道中管理是否允许表情评论的权限 打开

其中是否允许表情评论对公共频道中的所有人都生效,若创建者或者具有权限的管理员关闭允许表情评论,则公告频道中的所有人都不能进行表情评论操作。

此文档是否对你有帮助?
有帮助
去反馈
  • 效果展示
  • 前提条件
  • 实现方式
  • 创建公告频道
  • 加入公告频道
  • 身份组说明
  • 订阅者
  • 管理员