用户概述
App 用户需要接入融云服务,才能使用即时通讯服务。对于融云来说,用户是指持有由融云分发的有效 Token,接入并使用即时通讯服务的 App 用户。
注册用户
应用服务端(App Server)应向融云服务端提供 App 用户的用户 ID(userId
),以向融云换取唯一用户 Token。对融云来 说,这个以 userId
获取 Token 的步骤即注册用户,且必须通过调用 Server API 来完成。
应用客户端必须持有有效 Token,才能成功连接到融云服务端,使用融云即时通讯服务。当 App 客户端用户向服务器发送登录请求时,服务器会查询数据库以检查连接请求是否匹配。
注册用户数限制
删除用户
删除用户是指在应用的开发环境中,通过控制台删除已注册的测试用户,以控制开发环境中的测试用户总数。生产环境不支持该操作。
注销用户
注销用户是指在融云服务中删除用户数据。App 可使用该能力实现自身的用户销户功能,满足 App 上架或合规要求。
融云返回注销成功结果后,与用户 ID 相关数据即被删除。您可以向融云查询所有已注销用户的 ID。如有需要,您可以重新激活已被注销的用户 ID(注意,用户个人数据无法被恢复)。
仅 IM Server API 提供上述能力。
用户信息
用户信息泛指用户的昵称、头像,以及群组的群昵称、群头像等数据。融云服务端不提供用户信息托管维护服务。
在 Global IM UIKit SDK UI 中,如果需要在会话页面、好友列表等处显示用户及群组的头像、昵称等信息,需要由应用层提供相关数据。为方便 App 开发者,Global IM UIKit 设计并提供了多个信息提供者接口,用于 SDK 向应用层获取用户信息。
好友关系
App 用户之间的好友关系需要由应用服务器(App Server)自行维护。融云不会同步或保存 App 端的好友关系数据。
如果需要对客户端用户之间的消息收发行为进行限制(例如,App 的所有 userId
泄漏,导致某个恶意用户可越过好友关系向任意用户发送消息),可以考虑使用用户白名单服务。用户一旦开启并设置白名单,则仅可接收来自该白名单中用户的消息。
用户管理接口
功能分类 | 功能描述 | 客户端 API | 服务端 API |
---|---|---|---|
注册用户 | 使用 App 用户的 用户 ID 向融云换取 Token。 | 不提供该 API | 注册用户 |
删除用户 | 参见上文删除用户。 | 不提供该 API | 不提供该 API |
废弃 Token | 废弃在特定时间点之前获取的 Token。 | 不提供该 API | 作废 Token |
注销用户 | 注销用户是指在融云服务中停用用户 ID,并删除用户个人数据。 | 不提供该 API | 注销用户 |
查询已注销用户 | 获取已注销的用户 ID 列表。 | 不提供该 API | 查询已注销用户 |
重新激活用户 ID | 在融云服务中重新启用已注销用户的 ID。 | 不提供该 API | 重新激活用户 ID |
设置客户端本地的用户信息 | 设置用户信息提供者,由应用层负责提供数据。 | 设置用户信息提供者 | 不提供该 API |
设置融云服务端的用户信息 | 设置在融云推送服务中使用的用户名称与头像。 | 不提供该 API | 未提供单独的设置接口。在注册用户时必须提供用户信息。 |
获取客户端本地的用户信息 | 获取在会话页面、好友列表等处显示的用户头像、昵称等信息。 | 获取用户信息 | 不提供该 API |
获取融云服务端的用户信息 | 获取用户在融云注册的信息,包括用户创建时间和服务端的推送服务使用的用户名称、头像 URL。 | 不提供该 API | 获取信息 |
修改客户端本地的用户信息 | 修改在客户端本地数据库中保存的用户昵称、头像等信息。 | 刷新用户信息 | 不提供该 API |
修改融云服务端的用户信息 | 修改在融云推送服务中使用的用户名称与头像。 | 不提供该 API | 修改信息 |
封禁用户 | 禁止用户连接到融云即时通讯服务,并立即断开连接。可按时长解封或主动解封。查询被封禁用户的用户 ID、封禁结束时间。 | 不提供该 API | 添加封禁用户、解除封禁用户、查询封禁用户 |
查询用户在线状态 | 查询某用户的在线状态。 | 不提供该 API | 查询在线状态 |
黑名单管理 | 在用户的黑名单列表中添加、移除用户。在 A 用户黑名单的用户无法向 A 发送消息。Global IM UIKit 默认已处理被拉黑后的错误,页面会提示 “您的消息已经发出,但被对方拒收”。 Global IM UIKit 未提供该 API 接口。此处客户端 API 为 IMLib 的 API 接口。 | 加入黑名单、移出黑名单、查询用户是否在黑名单中、获取黑名单列表 | 加入黑名单、[移出黑名单][server-api-remove-from-blacklist]、查询黑名单 |
用户白名单 | 用户一旦开启并设置白名单,则仅可接收来自该白名单中用户的消息。 | 不提供该 API | 开启用户白名单、用户白名单状态查询、添加白名单、移除白名单、查询白名单 |