四:自动连接
从当前代码来看,如果有意外的断开,我们将无法获取信息。
所以要添加XMPPReconnect
xmppReconnect = [[XMPPReconnectalloc]init];
[xmppReconnectactivate:self.xmppStream];
五:发送和接收消息 XEP-0136
布置好自己的聊天页面,包括用来展示聊天记录的UITableView,和发送消息的按钮。
发送消息代码如下:
接收消息:
当有消息进来后,调用- (void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XMPPMessage *)message方法
xmpp的框架自有消息存储的功能,用法与朋友列表类似。
发送消息后,查看文件夹,发现已经多了一个消息的数据库,所有的消息都存储在这里。
用类似朋友列表的方法取得了聊天信息的记录,包括时间、信息、接收人、发送或者接收信息的判断标志,信息到手,SM去吧!
依然是无法实时更新的问题,正在努力寻找合适的方法解决。
语音聊天
进行语音连天有两种方式:base64编码和Http
http的方式是在消息中添加http的连接,如果用户要点击播放则去下载。
base64则是将音频文件转换成base64,按照发送文本信息的模式发送,接收到后,进行解码。
发送方法与文字发送一致。
获取到信息之后,转码,保存,点击之后播放
音频部分需要真机运行~~~~