跳到主要内容

即时通讯术语表

控制台​

控制台使您能够创建新应用程序和管理现有应用程序,以使用融云提供的即时通讯、推送通知、实时音视频服务等。从控制台可获取您的应用程序在生产环境或开发环境的凭据(融云应用的 App Key、App Secret)。

App Key / Secret​

App Key / Secret 相当于您的应用在融云的帐号和密码。其中 App Key 是融云 SDK 连接服务器所必需的标识。注意,在控制台创建的应用具有生产、开发 两个环境,每一个环境对应一套 App Key / Secret。

开发环境​

方便开发者进行集成开发和测试的环境,注册用户上限为 100 个,与生产环境功能相同,两者间数据隔离,避免开发环境数据和线上生产环境数据互相冲突,提供独立的 App Key / Secret。融云后台创建应用后默认为开发环境。

生产环境​

App 上线之后真正运营的商业环境。与开发环境间数据隔离,避免开发环境数据和线上生产环境数据互相冲突。提供独立的 App Key / Secret ,在正式上线前请务必由开发环境切换到生产环境。

Target ID​

Target ID 用于标识会话,称为目标 ID 或会话 ID,一般用 targetId 参数表示。对应的消息发送方 ID 常用 senderUserId 表示。

  • 针对群组会话、聊天室会话、超级群会话,融云直接使用群组 ID、聊天室 ID、超级群 ID 标识会话。因此,对于参与任意一个群聊会话(或聊天室会话、超级群会话)的所有用户,Target ID 是一致的。
  • 针对单聊会话,融云使用单聊对端的用户 ID 作为标识本端单聊会话的 Target ID,因此,针对参与同一个单聊会话的两位用户,会话的 Target ID 是不一致的,针对本端登录用户,本端单聊会话的 Target ID 始终是单聊对端的用户 ID。因为单聊会话 Target ID 在会话参与者客户端不一致,在客户端通过「插入消息」接口在单聊会话中插入消息时可能容易发生误解。无论是插入本人发送还是本人接收的消息,请谨记 targetId 字段需传入单聊会话的 Target ID(单聊会话对端的用户 ID)。

例如用户 A 向用户 B 发送了一条消息,在不同会话类型中的 targetId 和 senderUserId 分别如下:

参与者会话类型targetIdsenderUserId
发送端(用户 A)单聊(二人会话)用户 B用户 A
群聊群组 ID用户 A
聊天室聊天室 ID用户 A
超级群超级群 ID用户 A
接收端(用户 B)单聊(二人会话)用户 A用户 A
群聊群组 ID用户 A
聊天室聊天室 ID用户 A
超级群超级群 ID用户 A

Token​

Token 即用户令牌,相当于 App 上当前用户连接融云的身份凭证。每个用户连接服务器都需要一个 Token,用户更换即需要更换 Token。每次初始化连接服务器时,都需要向服务器提交 Token。

单聊​

指两个用户一对一进行聊天,两个用户间可以是好友也可以是陌生人,融云不对用户的关系进行维护管理,会话关系由融云负责建立并保持,当 App 在后台运行或者 App 进程被杀死后,有新消息时会收到推送通知。

群组​

群组指两个以上用户一起进行聊天,群组成员信息由 App 提供并进行维系,融云只负责将消息传达给群组中的所有用户, App 在后台运行或者 App 进程被杀死后可以收到推送通知。每个群最大人数上限为 3000 人,App 内的群组数量没有限制。

超级群​

超级群支持创建独立的频道(channel),超级群的消息数据(会话、消息、未读数)和群组成员支持按频道聚合。超级群提供了一种新的群组业务形态(请注意与普通群组或聊天室区分),不设置用户人数上限,允许用户在超级社群中建立社交关系、在海量信息中聚焦自己感兴趣的内容,帮助开发者打造高用户黏性的群体。

超级群业务针对在不同的平台与场景的需求,优化了消息请求、存储、分发、推送的逻辑,并且为客户端留下充裕的可定制空间。超级群组成员信息由 App 提供并进行维系。每个用户最多可加入 100 个超级群,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 天内对端客户端都没有上线,融云服务器将抛弃掉过期的消息。单聊、群聊支持离线消息。聊天室不支持离线消息。

参见技术实践丨IM 消息数据存储结构设计中对离线消息与历史消息的详细说明。

消息补偿​

是指用户在更换设备或卸载重新安装应用后,针对消息的一种补偿机制,使用户可以在新的设备上查看从当天零点开始,在其他终端上发送和接收过的消息,补偿功能默认开通。

自定义消息​

根据业务需要,由开发者创建的消息类型、消息内容结构,自定义消息的类型、消息结构需要确保多端一致,否则将出现无法互通的问题。

落地通知​

落地通知是产生一条融云系统会话的消息抵达用户。用户在线时能即时收到消息;当用户离线时,融云消息会默认生成一条远程推送。

不落地通知​

不落地通知本质上是一种远程通知方式,在客户端展现为一条远程推送通知(仅产生通知,不产生会话消息)。不落地通知始终通过推送通道下发数据,可使用融云自建推送通道或客户端已集成的第三方推送通道。其中 iOS 使用 APNs(Apple Push Notification service),Android 使用开发者在 SDK 中配置的推送服务,包括融云自研推送、小米、华为、魅族、OPPO、vivo、FCM。

消息扩展​

针对已经发送的消息,在原消息的基础上增加扩展信息,扩展信息以 Key、Value 键值对的方式进行存储,单条消息最多可设置 300 个扩展信息。

全量消息路由​

是指将应用下用户发送的所有消息,实时从融云 IM 服务端同步到客户的应用服务器地址,可通过此功能将全量消息数据存储到应用服务器。

服务端消息回调​

通过自定义条件(消息发送者、接收者、会话类型、消息类型),将符合条件的消息回调至开发者应用服务器,不直接发送给目标用户,根据应用服务器返回的响应结果决定是否下发。适用于对接自己或其他第三方内容审核服务的应用场景。

消息云存储​

将用户发送的单聊、群聊、超级群、聊天室消息存储到云端,方便用户在更换设备或删除本地消息后,通过 SDK 或 Server API 获取服务端历史消息。单聊和群聊消息服务端默认可保存 6 个月,超级群默认可保存 7 天,聊天室消息默认可保存 2 个月。您可在控制台延长各消息类型的云存储时间。

说明

消息云存储不支持导出指定用户的历史消息。如需存储所有历史消息,可通过全量消息路由功能将消息同步到应用服务器后自行存储。

在线状态订阅​

将终端用户连接融云 SDK 的状态,实时同步到开发者的应用服务器。详细说明请参见在线状态订阅。

目前支持以下状态:

  • 上线状态:表示 App 已经连接融云服务器。
  • 离线状态:表示 App 已经断开与融云服务器的连接。
  • 登出状态:表示 App 已经退出登录状态。

黑名单​

单聊场景下限制不接收指定用户发送的任何消息,可将用户添加到黑名单中。

白名单​

与“黑名单”相对的概念,只有互为白名单的用户才能相互发送消息,适用于强好友关系的应用场景。

封禁用户​

禁止用户使用融云 IM 服务,封禁时间内用户无法连接融云 IM 服务器。

用于获取 IM 服务连接访问的长连接地址和 SDK 中需要的基础配置信息,SDK 通过获取到的地址与 IM 服务端建立长连接。

应用标识​

应用在手机设备中的唯一标识,iOS 平台为 Bundle Identifier,Android 平台为 ApplicationId,需要开发者在控制台进行设置,一个 App Key 下可以创建多个应用标识,同一 App Key 下不同应用标识中的用户可以相互发送消息。

Bundle Identifier​

应用包名,是应用(application)在手机里的唯一标识符。需要在控制台应用标识中设置后,才能使用 iOS 推送服务。

ApplicationId​

每个 Android 应用均有一个唯一的应用 ID(applicationId),像 Java 软件包名称一样,例如 com.example.myapp。此 ID 可以作为您的应用在设备上和 Google Play 商店中的唯一标识。

应用 ID一般配置在应用的 build.gradle 文件中,如果您没有在 build.gradle 中配置 applicationId, 则 applicationId 默认为应用的包名。如果您有更多关于应用 ID 与包名的疑问,可参见 Android 官方文档。

您需要在控制台应用标识中设置应用 ID(applicationId)后,才能使用 Android 推送服务。

IMLib​

指不包含 UI 界面的 IM 基础通讯能力库,封装了通信能力和会话、消息等对象。引用到应用工程中后,需要开发者自己实现 UI 界面,相对较轻量,适用于对 UI 有较高订制需求的开发者。

IMKit​

将融云 IM 基础通讯能力库在 UI 界面层的封装,包括即时通信产品中最复杂的会话列表、聊天窗口、消息内容展现、会话设置等功能组件,可以直接将以上界面集成到您的 App 产品中,省去大量的开发调试时间。同时支持自定义界面组件功能,可以针对自己界面需求自由设计开发。

Dev 版本​

SDK 开发版本,版本主要为体现最新的功能和特性,不定期发布版本,可用于功能体验。

Stable 版本​

SDK 稳定版本,基于开发版本提供稳定的功能,可用于发布应用。