腾讯即时聊天sdk
⼀. 初始化腾讯即时通讯sdk
1. 程序⽇志注册
2. 连接通知回调专门的类管理
3. 信息通知回调专门的类
4. 初始化sdk
5. 注册推送分ios8/ios以前
注册推送成功回调
发送devicetoken到腾讯服务器
注册推送失败回调
log
接收到推送
专门类负责
6. 即将注销活跃状态 resignActive
doBackgroud通知腾讯服务器
聊天控制器
tableview toobar navigationbar等界⾯
根据接受identifier 获取 conversation
conversation获取指定数量的message, 把message打包成各种类型的MyMsgModel, 并且加⼊MyMsgModel数组
tableview reload
>>>>>>>>>>>>>>>
腾讯即时通讯的设计理念:sdk
腾讯IM主要要使⽤的类是:
TIMConversation
TIMMessage
TIMManager
TIMGroupManager
回调⽅式⽀持2种: block和protocol, 可任选⼀种
其实这个即时通讯框架具备了操作⽇志和本地数据库功能, 但是却把这两者封装起来, 开发⼈员⽤的时候完全不⽤考虑本地数据库和⽇志操作
通讯⽅式:
1. iphone客户端1 -> 发送消息
2. 腾讯服务器接收消息, 并存⼊服务器数据库, 转发消息到iphone客户端2
3. -> iphone客户端2 接收到消息, 存⼊本地数据库
>>>>
获取⽂件/图⽚等⽐较⼤的⽂件时, 并没有把图⽚⽴即发到客户端, ⽽是使⽤ protocol/block 再次获取
>>>>
猜想数据库结构⼤致是:
消息记录表
消息记录ID  腾讯⽤户_发送⽅_ID 腾讯⽤户_接收⽅_ID 是否发送⽅ 会话ID  记录内容  附件  创建时间  最后修改时间 
会话记录表
绘画记录ID  会话类型 会话_成员表ID 
会话_成员表
会话_成员ID    成员ID
TIManager则是管理数据库和表的创建和开启/修改
⾳视频聊天SDK
2.1.常⽤到的类
AVContext (上下⽂)
⽅法:
CreateContext() StartContext() StopContext() DestoryContext()
CreateRoom() EnterRoom() GetRoom() ExitRoom()
getAudioDeviceMgr() getVideoDeviceMgr()
AVRoom (房间)
枚举类型: AVRoomPair AVRoomMulti
委托: AVRoomDelegate AVRoomPairDelegate AVRoomMultiDelegate
AVEndPoint (⽤户/终端)
AVDevice (设备)
  AVAudioDevice (⾳频设备)
  AVVedioDevice (视频设备)
  AVRemoteVedioDevice (远程视频设备)
  AVCameraDevice (摄像头设备)
AVDeviceMgr (设备管理器)
AVVideoCtrl (视频控制)
AVAudioCtrl (⾳频控制)
  GetVolume()、SetVolume()、GetDynamicVolume()

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。

发表评论