聊天室功能
更新时间: 2024/03/14 19:21:08
功能概述
聊天室是一种比群组更加松散、开放的形态,类似于一个广场,没有严格的准入机制,用户进出自由,一般来说也没有太固定的成员组织架构。典型的应用场景即我们非常熟悉的娱乐直播、教育直播内的聊天室。聊天室是一项付费拓展能力,需要在选购IM基础功能的情况下增购。
聊天室和群聊功能如何选择取舍呢?
首先聊天室在线人数理论上无上限,而群组默认只能支持200人(可以扩展一定数量,仍有上限)。对于人数较多的IM场景,推荐通过聊天室来实现。
但也不是人数少就适合群聊场景。比如棋牌游戏,虽然只有4个人在交流,但仍应使用聊天室。因为棋牌房只是临时性质的,玩家随时可能退出,随时可以加入。使用群组的话,异常状况下的断开,开发者无法处理。
聊天室相当于一个广场,只要有人看到了进入广场的门,任何人随时都可以进来,也可以随时离开。而群就像是一个公司,公司是一个更加私密的组织,必须是这个组织内的成员才能进入,成为成员可以是主动申请也可以是被邀请加入。
网易云信 IM 聊天室采用多层架构设计,可以实现真正意义上的大型聊天室,参与人数无上限,又可满足消息到达的实时性要求。
聊天室功能列表
功能 | 功能描述 |
---|---|
聊天室容量 | 支持聊天人数无上限 |
新建聊天室 | 新建一个新的聊天室,目前仅支持从服务端创建 |
查询聊天室信息 | 包括创建者、在线人数、名称、公告、直播地址、扩展字段、是否发送更新通知时间、通知事件扩展字段 |
更新聊天室信息 | 包括创建者、在线人数、名称、公告、直播地址、扩展字段、是否发送更新通知时间、通知事件扩展字段 |
修改聊天室开/关状态 | 修改聊天室开/关闭状态,目前仅支持从服务端修改 |
聊天室定时关闭 | 用户可根据自身的业务情况,选择对应的聊天室关闭方式来实现定时关闭聊天室,目前仅支持从服务端配置 聊天室定时关闭方式包括:固定时间后关闭(创建聊天室后 N 小时,直接自动关闭,不管聊天室中是否还有用户)和空闲后固定时间关闭(等聊天室中没有用户存在后 N 小时,自动关闭聊天室) |
聊天室消息类型 | 支持文本、图片、语音、视频、文件、地理位置、通知消息、提示消息、自定义 |
聊天室消息历史 | 可查询最近10天的聊天室历史记录,发消息时可设置是否存云端历史记录 |
聊天室角色 | 聊天室角色分为固定成员和非固定成员两大类。 固定成员包括创建者、管理员、普通成员,非固定成员包括普通游客和匿名游客 |
聊天室黑名单 | 被拉黑后,将无法再进入聊天室 |
聊天室禁言 | 禁言用户可以在聊天室内,但无法发送消息 |
聊天室临时禁言 | 聊天室支持设置临时禁言时长,禁言时长时间到了,自动取消禁言。 |
聊天室全员禁言 | 设置聊天室整体禁言状态,仅创建者和管理员能发言 |
踢出聊天室 | 仅管理员可以踢,如目标是管理员仅创建者可以踢 |
修改自己的聊天室成员信息 | 目前只支持聊天室昵称,头像和扩展字段的更新 |
同时进入多个聊天室 | 支持统一账号同时进入多个聊天室,会建立多个连接 |
多端同时进入一个聊天室 | 支持同一账号在多端同时进入同一个聊天室 |
聊天室机器人 | 往聊天室内批量添加、删除机器人,每次最多 100 个账号 |
聊天室队列 | 针对直播连麦场景使用 |
如需修改聊天室多端同时进入一个聊天室策略,请登录 网易云信用户控制台 ,进入对应应用IM功能下的「功能配置」,进行配置。
聊天室角色
聊天室角色分为固定成员和非固定成员两大类。
- 固定成员属于聊天室的常驻成员,无论用户当前是否在线/在聊天室里,都可以作为聊天室成员被获取到,目前固定成员包括:创建者、管理员、普通成员
- 非固定成员包括普通游客和匿名游客,游客离开聊天室或下线后,将不再出现在聊天室用户列表内
角色 | 角色描述 |
---|---|
创建者 | 拥有最高权限,包括设置管理员、拉黑、禁言、踢人、设置普通成员 |
管理员 | 管理员具有拉黑、禁言、踢人、设置普通成员权限 |
普通成员 | 普通成员主要区别于游客,即使离开聊天室当前不在线,也可以作为聊天室成员被获取到 |
普通游客 | 普通游客是以登录状态进入聊天室内的用户,且未被设置为固定成员 |
匿名游客 | 匿名游客在无需登录的情况下即可进入聊天室,相比于普通游客,匿名游客不支持发消息、被禁言、被拉黑、被设置为管理员/普通成员等操作 |
注意事项
- 为保证用户体验(如避免服务器过载),目前针对消息接收,有两套流控机制。第一套针对普通消息,聊天室用户每秒至多可接收20条,超过部分会因为流控随机丢弃。第二套针对高优先级消息,每秒至多接收10条,超过部分无法保证不丢失。
- 为避免丢失重要消息(通常为服务端消息),可将发送聊天室消息的 HighPriority 参数设置为 true 实现高优先级接收服务端消息,进而保证高优先级消息流控上限内(每秒10条)的重要消息不丢失。详情请参见发送聊天室消息中的 HighPriority 参数说明。
聊天室开发资源
聊天室客户端开发指南请参见:
- Server:Server 聊天室
- Web: Web 聊天室功能
此文档是否对你有帮助?