iOS-Senior21-环信
一.环信定义
1.环信是移动即时通讯能力的云计算PaaS(platform as a Service,平台即服务)平台服务商。
2.环信将基于移动互联网的即时通讯能力,如:单聊,群聊,发语音,发图片,发位置,实时音频,实时视频等,通过云端开放的Rest API和客户端SDK包的方式提供给开发者和企业。让App内置聊天功能和以前网页中嵌入分享功能一样简单。让移动开发者摆脱繁重的移动IM通讯底层开发,极大限度地缩短产品开发周期,极短的时间内让App拥有移动IM能力。
二.开发者注册步骤:
1.在环信官网上点击注册,跳转到环信管理后台注册页面
2.账号激活后,回到控制台登录页面登录到开发者后台,在我的应用中,点击创建应用按钮
3.应用名称会存在于你生成的APPKey中
4.引用第三方类库
部分方法:
构造消息类
1.构造文字消息
2.构造图片消息
3.构造位置消息
4.构造语音消息
5.构造视频消息
6.构造文件消息
7.构造透传消息
SDK提供的一种特殊类型的消息,即CMD,不会存db,也不会走APNS推送,类似一种指令型的消息。比如您的服务器要通知客户端做某些操作,您可以服务器和客户端提前约定好某个字段,当客户端收到约定好的字段时,执行某种特殊操作。
自定义消息扩展
有时候需要在消息中携带一些扩展内容,用来实现特殊需求,比如阅后即焚等。EMMessage提供了ext属性,专门用来ext属性是NSDictionary类型,key和value必须是基本类型,而且不能是JSON.
可以这样使用:EMMessage.ext = @{@"key" :@"value"};
1.插入消息
2.更新消息属性
会话
会话:操作聊天消息EMMessage的容器,在SDK中对应的类型是EMMConversation
1.新建/获取一个会话
根据conversationld创建一个conversation
2.删除单个会话
3.根据conversation批量删除会话
4.获取或创建会话列表
5.获取内存中所有会话
6.获取DB中的所有会话
7.获取会话未读消息数
消息检索
可以通过关键字,消息类型,开始结束时间检索某个会话中的消息
聊天
登录成功之后才能进行聊天操作。发消息时,单聊和群聊调用的是统一接口,区别只是要设置一下message.chatType
1.发送消息
2.接收消息
注册消息回调:
在线普通消息会走以下回调:
透传(cmd)在线消息会走以下回调:
解析普通消息
解析透传消息
解析消息扩展属性
自动下载消息中的附件
SDK接收到消息后,会默认下载:图片消息的缩略图,语音消息的语音,视频消息的视频第一帧。
请先判断你要下载附件没有下载成功之后,在调用以下下载方法,否则SDK下载方法会再次从服务器上获取附件。
下载消息中的原始附件
消息已送达回执
SDK提供了已送达回执,当对方收到您的消息后,您会收到以下回调
消息已读回执
已读回执需要开发者主动调用的。当用户读取消息后,由开发者主动调用方法
发送已读消息
接收已读回执