iOS开发——XMPP简单小结

XMPP:可扩展通讯和表示协议(可用于服务类实时通讯(IM),表示和需求响应,服务中以XML数据流传输)

XML特点:

1.易解析

2.易阅读

XMPP包含三大通信类别:

1.消息传递(其数据在有关各方之间传输)

2.联机状态(它允许用户广播其在线状态及可用性)

3.查询请求(它允许XMPP实体发送请求并从另一个实体接收响应)

消息Message包含:

1.subject:主题(可读字符串)

2.body:内容(可读字符串)

3.thread:线程(唯一标示符)

状态Presence包含:

1.priority:优先级(消息到用户的优先级顺序)

2.show:机器可读值(表示要显示的状态,away(暂离),chat(在线),dnd(勿扰),xal(长时间离开)

3.status:一个可读的show值,用户可自定义的字符串

查询请求:其中“发布——订阅”模型应用广泛                

发布者————(通知或者更新)————服务器————( 订阅)————用户(用户数量不限)

  

XMPP使用:


一.配置 

最好配置在AppDelegate中  保证每次打开App便可直接初始化stream和相应插件。 XMPPReconnect插件用于自动重连 ,XMPPMessageAechiving 配合XMPPMessageAechivingCoreDataStorage使用,将数据存在本地CoreData中

配置完成后,需要在哪里使用stream,就在哪里给stream添加委托,如果使用XMPPMessageAechivingCoreDataStorage也要做相应配置,cotext是FRC中的上下文


使用时还要注意一些细节,如在改变stream委托人时




二.登录服务器

1.建立连接

设置自己的XMPPJID,包括使用者账号和域名等,设置自己的JID之后,请求建立连接

连接成功回调,连接成功后去注册密码

连接超时回调方法

注册密码成功回调   注册密码成功后去验证密码

注册密码失败回调

验证密码成功回调     验证成功后,注意设置一个在线状态

验证密码失败回调



三.开始通信

接收成功回调

发送成功回调

将MEssage实体通过对方JID发送给对方


AppDelegate

AppDelegate

AppDelegate

AppDelegate


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值