XMPP协议解析

XMPP国际标准的协议

可扩展的消息和展示的协议,是一种基础的开放式实时通信协议。可扩展新,强可读性。

相比Email的发展史,163和qq邮箱之间的通信。为了兼容,符合同一种标准。即实现不同邮箱之间的通信。

国内腾讯一家独大,微信和qq能交流,但是却不能和阿里旺旺取得联系。

XMPP协议的优缺点

优点:
开放性,标准性,可扩展和跨平台。
能与所有遵守xml协议的软件之间的通信。
缺点:
数据冗余。
》使用xml作为结构体,必定会有冗余。
不支持二进制数据。
》只限定在文本数据,专注于文本传输。图片和声音等不善长。

最大的问题还是数据冗余,移动端会产生很大的流量。
推送功能就不在乎了。

XMPP基础知识

只限制了传输内容的格式,不关心底层数据的格式。
XMPP规定,每个客户端是使用jid来作为身份标识:[user"@"]domin["/"resource]
XMl Stanza属性
.from who
.to  who
.type指定Stanza的类型
.id 让服务器知道是哪个

Stream结构

CLient
<Stream:stream
to=""
xmlns="jabber:client"
xmlns:stream="http://etherx.jabber.org/stream"
version="1.0"
>
Server
<Stream:stream
from=""
id="someid"
xmlns="jabber:client"
xmlns:stream="http://etherx.jabber.org/stream"
>

结束标签

Client
</stream:stream>
Server
</stream:stream>
表示下线状态

presence结构

这里写图片描述

在线时还有扩展标签

<show>详细表示用户的在线状态chat away xa dnd
<status>准确的告诉别人你去干什么了

Message结构
这里写图片描述
IQ结构

获取联系人状态

这里写图片描述
注册 登录都是使用Iq标签

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值