软件特色
IM 界面组件 - IMKit
IMKit 是融云 SDK 的核心特色之一。融云将即时通讯产品中最复杂的会话列表、聊天窗口、消息内容展现、会话设置等功能封装为组件,通过简短的代码,您就可以直接将以上界面集成到您的 App 产品中,省去大量的开发调试时间。融云同时支持业内最丰富的自定义界面组件功能,您可以针对自己界面需求自由设计开发。
IMKit 的核心类在 Android 平台是 RongIM,在 iOS 平台是 RCIM,这两个类在今后的开发中和 IMKit 代表相同的意义。
IM 通讯能力库 - IMLib
IMLib 是不含界面的基础 IM 通讯能力库,封装了通信能力和会话、消息等对象。引用到 App 工程中后,需要开发者自己实现 UI 界面,相对较轻量,适用于对 UI 有较高订制需求的开发者。
IMLib 的核心类在 Android 平台是 RongIMClient,在 iOS 平台是 RCIMClient,这两个类在今后的开发中和 IMLib 代表相同的意义。
融云的集成流程如下图所示,其中几个关键环节需要注意:
App 服务端换取 Token 流程,可以参考 Server 开发文档 - 获取 Token 方法
客户端集成流程,可以参考 Android 开发指南 或者 iOS 开发指南
UI 界面自定义,可以参考 Android 开发指南 - UI 自定义 或者 iOS 开发指南 - UI 自定义
功能介绍
单聊
指两个用户一对一进行聊天,会话关系由融云负责建立并保持,退出聊天界面或者离线后可以收到推送通知。
讨论组
指两个以上用户一起进行聊天,用户可以自行添加好友生成一个讨论组聊天,会话关系由融云负责建立并保持,退出聊天界面或者离线后可以收到推送通知。
群组聊天
指两个以上用户一起进行聊天,与讨论组不同的是,参与群组聊天的群成员 Id 集合由您的 App 提供并维系,融云只负责将消息传达给群聊中的所有用户,退出聊天界面或者离线后可以收到推送通知。支持最大至 3000 人的大型社群需求。
聊天室
不设用户上限的群体聊天行为,用户退出聊天界面即视为离开聊天室,不再会接收到任何通知和提醒。会话关系由融云负责建立并保持连接,通过 SDK 相关接口,可以让用户加入或者退出聊天室。
客服消息
用户与您的 App 后台客服进行消息通讯,支持单客服和多客服。
VoIP 音频通话
指通过 IP 网络,使两个用户建立一对一的音频通话。
会话列表
指各种会话依照顺序先后排列的界面,其中会话列表中的每一个列表项称之为一条会话。排列的先后顺序会依赖于置顶、最新会话、未读会话和时间等因素
使用指南
要进行应用开发之前,需要先在融云开发者平台创建应用。如果您已经注册了融云开发者帐号,请前往 融云开发者平台 创建应用。
您创建完应用后,首先需要了解的是 App Key / Secret,它们是融云 SDK 连接服务器所必须的标识,每一个 App 对应一套 App Key / Secret。针对开发者的生产环境和开发环境,我们提供两套 App Key / Secret,两套环境的功能完全一致。您在应用最终上线前,使用开发环境即可。
image
App Key / Secret 位置
开发环境 App Key / Secret 是专门为您提供的仅供开发使用的,开发环境将和生产环境的数据隔离,避免开发环境数据和线上生产环境数据互相冲突。
生产环境的 App Key / Secret 默认先不提供,等您提交上线后,我们会提供生产环境的 App Key / Secret。
4、获取 Token
Token 称为用户令牌,App Key 是您的 App 的唯一标识,Token 则是您 App 上的每一个用户的身份授权象征。您可以通过提交 userId 等信息来获得一个该用户对应的 Token,并使用这个 Token 作为该用户的唯一身份凭证与其他用户进行通信。
Token 的主要作用是身份授权和安全,因此不能通过客户端直接访问融云服务器获取 Token,您必须通过 Server API 从融云服务器 获取 Token 返回给您的 App,并在之后连接时使用。详细描述请参考 Server 开发指南 中的用户服务和获取 Token 方法小节。
为了方便您在集成和测试过程中使用,我们还提供了 API 调试工具,在您不能部署服务器程序时,可以直接通过传入 userId 和 name 来获得 Token。请访问 融云开发者平台,打开您想测试的应用,在左侧菜单中选择“API 调试”即可。
userId : 每一个用户对应一个 userId,这个 userId 是您维护的,所以您可以直接赋值,两个您的的用户通信,对于融云来说就是两个 userId 间通讯。
name : 用户的显示名称,用来在 Push 推送时,或者您没有传入用户信息时,默认显示的用户名称。
portraitUri : 用户头像,用来当您没有传入用户信息时作为默认头像,如果图片不存在,IMKit 会显示默认头像。
通过 API 调试,您可以得到一个 Token 返回值。你就可以直接使用这个 Token 为这位用户进行发送和接受消息。