更新时间: 2020-12-23
# App Key / Secret
App Key / Secret 相当于 App 在融云的帐号和密码。是融云 SDK 连接服务器所必需的标识,每一个 App 对应一套 App Key / Secret。
# 开发环境
方便开发者进行集成开发和测试的环境,注册用户上限为 100 个,与生产环境功能相同,两者间数据隔离,避免开发环境数据和线上生产环境数据互相冲突,提供独立的 App Key / Secret。融云后台创建应用后默认为开发环境。
# 生产环境
App 上线之后真正运营的商业环境。与开发环境间数据隔离,避免开发环境数据和线上生产环境数据互相冲突。提供独立的 App Key / Secret ,在正式上线前请务必由开发环境切换到生产环境。
# Token
Token 即用户令牌,相当于 App 上当前用户连接融云的身份凭证。每个用户连接服务器都需要一个 Token,用户更换即需要更换 Token。每次初始化连接服务器时,都需要向服务器提交 Token。
# IMLib
指不包含 UI 界面的 IM 基础通讯能力库,封装了通信能力和会话、消息等对象。引用到应用工程中后,需要开发者自己实现 UI 界面,相对较轻量,适用于对 UI 有较高订制需求的开发者。
# IMKit
将融云 IM 基础通讯能力库在 UI 界面层的封装,包括即时通信产品中最复杂的会话列表、聊天窗口、消息内容展现、会话设置等功能组件,可以直接将以上界面集成到您的 App 产品中,省去大量的开发调试时间。同时支持自定义界面组件功能,可以针对自己界面需求自由设计开发。
# Dev 版本
SDK 开发版本,版本主要为体现最新的功能和特性,不定期发布版本,可用于功能体验。
# Stable 版本
SDK 稳定版本,基于开发版本提供稳定的功能,可用于发布应用。
# 导航域名
用于获取 IM 服务连接访问的长连接地址和 SDK 中需要的基础配置信息,SDK 通过获取到的地址与 IM 服务端建立长连接。
# 应用标识
应用在手机设备中的唯一标识,iOS 平台为 Bundle Identifier,Android 平台为 ApplicationId,需要开发者在融云开发者后台进行设置,一个 App Key 下可以创建多个应用标识,同一 App Key 下不同应用标识中的用户可以相互发送消息。
# Bundle Identifier
应用包名,是应用(application)在手机里的唯一标识符。需要在开发者后台“应用标识”中设置后,才能使用 iOS 推送服务。
# ApplicationId
应用唯一标识,一般配置在应用的 build.gradle 文件中,如果没有在 build.gradle 中配置 applicationId,则 ApplicationId 默认为应用的包名,需要在开发者后台“应用标识”中设置后,才能使用 Android 推送服务。
# 单聊
指两个用户一对一进行聊天,两个用户间可以是好友也可以是陌生人,融云不对用户的关系进行维护管理,会话关系由融云负责建立并保持,当 App 在后台运行或者 App 进程被杀死后,有新消息时会收到推送通知。
# 群组
群组指两个以上用户一起进行聊天,群组成员信息由 App 提供并进行维系,融云只负责将消息传达给群组中的所有用户, App 在后台运行或者 App 进程被杀死后可以收到推送通知。每个群最大人数上限为 3000 人,App 内的群组数量没有限制。
# 聊天室
聊天室成员不设用户上限,海量消息并发即时到达,用户退出聊天界面后即视为离开聊天室,不会再接收到任何聊天室中消息,没有推送通知功能。会话关系由融云负责建立并保持连接,通过 SDK 相关接口,可以让用户加入或者退出聊天室。
# 系统会话
系统会话是一种特定的会话类型,运营人员使用设定好的系统帐号(非用户帐号,用户不可登录)通过服务端 API 向应用中指定用户或全部用户发送的系统消息、广播消息都会存储在系统会话中,系统会话主要为应用运营使用,终端在收到系统会话的消息后,只能查看不能进行回复。
# 会话列表
指各种会话依照顺序先后排列的列表界面,其中列表中的每一个列表项称之为一条会话。排列的先后顺序会依赖于置顶、会话中最后一条消息的时间等因素,聊天室类型的会话不会进入到会话列表中。
# 聊天界面
指发送消息的发送及具体展示界面,在界面中支持消息内容和用户基本信息显示,包括用户名称、头像,提供文本、表情、语音、小视频、音视频通话等消息发送及自定义扩展输入区功能,等输入框、消息内容展示等。
# 推送
推送(Push)是一种技术概念,是指从服务端实时发送远程通知到客户端。
iOS 设备使用苹果的 APNs(Apple Push Notification service)推送服务、Android 设备为谷歌 FCM(Firebase Cloud Messaging)推送服务。在国内,由于谷歌服务不能使用,因此 Android 应用必须集成第三方厂商的推送服务,目前融云支持小米、华为、OPPO、vivo、魅族推送厂商及融云自研的内置推送服务。
# 广播
广播(Broadcast)是一种业务概念,是通过后台管理界面或者调用服务端接口,向 App 中的所有用户发送一条消息。当用户离线时此条消息将自动转为推送对用户进行通知。
# 系统消息
系统消息(System Message)是一种业务概念,是指利用系统帐号(非用户帐号,用户不可登录)向用户发送的消息,既可以是通过调用广播接口发送给所有人的消息,也可以是加好友等单条通知消息。
在融云平台中,其实并不存在系统消息的概念,一般系统消息特指会话类型(ConversationType)为“系统(SYSTEM)”的会话中的消息。
# 离线消息
当对端用户不在线的时候,融云服务器会将收到的消息保留 7 天,7 天内对端客户端如果上线,融云会直接将消息发送到对端,如果 7 天内对端客户端都没有上线,融云服务器将抛弃掉过期的消息。单聊、群组都支持离线消息,聊天室因为特殊的使用场景,不支持离线消息。
# 消息补偿
是指用户在更换设备或卸载重新安装应用后,针对消息的一种补偿机制,使用户可以在新的设备上查看最近 2 天内,在其他终端上发送和接收过的消息,补偿功能需要在 IM 商用版中开启“多设备消息同步”功能后才支持。
# 自定义消息
根据业务需要,由开发者创建的消息类型、消息内容结构,自定义消息的类型、消息结构需要确保多端一致,否则将出现无法互通的问题。
# 落地通知
落地通知是产生一条融云系统会话的消息抵达用户。用户在线时能即时收到消息;当用户离线时,融云消息会默认生成一条远程推送。
# 不落地通知
不落地通知是产生一条远程推送抵达用户。其中 iOS 使用 APNs(Apple Push Notification service),Android 使用开发者在 SDK 中配置的推送服务,包括融云自研推送、小米、华为、魅族、OPPO、vivo、FCM。
# 消息扩展
针对已经发送的消息,在原消息的基础上增加扩展信息,扩展信息以 Key、Value 键值对的方式进行存储,单条消息最多可设置 300 个扩展信息。
# 全量消息路由
是指将应用下用户发送的所有消息,实时从融云 IM 服务端同步到客户的应用服务器地址,可通过此功能将全量消息数据存储到应用服务器。
# 服务端消息回调
通过自定义条件(消息发送者、接收者、会话类型、消息类型),将符合条件的消息回调至开发者应用服务器,不直接发送给目标用户,根据应用服务器返回的响应结果决定是否下发。适用于对接自己或其他第三方内容审核服务的应用场景。
# 消息云存储
将用户发送的单聊、群聊、聊天室消息存储到融云服务器,方便用户在更换设备或删除本地消息后,通过服务端获取历史消息,默认单群聊消息服务端最多保存 6 个月,聊天室消息最多保存 2 个月。
# 在线状态订阅
将终端用户连接融云 SDK 的状态,实时同步到开发者的应用服务器,目前支持的状态包括:
- 上线状态:表示 App 已经连接融云服务器,即客户端调用 connect 方法连接成功。
- 离线状态:表示 App 已经断开与融云服务器的连接,即客户端调用 disconnect 方法或因异常情况断开连接,异常断网情况下离线状态会延迟 5 分钟同步。
- 登出状态:表示 App 已经退出登录状态,即客户端调用 logout 方法,用户退出登录同时也会同步离线状态。
# 黑名单
单聊场景下限制不接收指定用户发送的任何消息,可将用户添加到黑名单中。
# 白名单
与“黑名单”相对的概念,只有互为白名单的用户才能相互发送消息,适用于强好友关系的应用场景。
# 封禁用户
禁止用户使用融云 IM 服务,封禁时间内用户无法连接融云 IM 服务器。