通信协议---XMPP
来源:互联网 发布:c语言中action什么意思 编辑:程序博客网 时间:2024/05/09 16:08
什么是XMPP?
XMPP(Extensible Messaging and Presence Protocol)翻译过来就是可扩展消息和展示协议,它是一种基于XML的开放性的即时通讯协议,具有很好的扩展性和可读性。
XMPP在国外的通信软件中基本上是已经通用了,在国内的话由于企鹅的一家独大,它并没有用XMPP协议,这就是你为什么微信用户不能和qq用户通信的原因,使用XMPP可以实现跨平台,使用任何的语言在任何系统上都可以使用XMPP协议,但是由于XMPP是基于XML的,所以会造成大量的数据冗余,而且XMPP协议不支持二进制数据,所以文本图片的传输无法实现,如果你要实现这些功能,你可能还需要使用其他的协议。
身份标识
使用的是JID格式,即用户名加域名的格式
例如:1234@test.com
XML Stanza 中的属性
from:数据的发送者
to:指定数据的接收者
type:用于指定Stanza的类型
id:作为一段Stanza的唯一标识
Stream结构
客户端:
<stream:stream
to="接收对象"
xmlns="命名空间"
xmlns:stream="域名"
version="版本号">
服务器端
<stream:stream
from="发送端"
id="Stanza的id"
xmlns:"命名空间"
xmlns:stream="域名"
version="版本号">
这两个结构都没有结束标签,如果要断开连接,只要使用结束标签即可
</stream:stream>
presence结构
<presence
from="tom@163.com"
to="kitte@gmail.com"
type="avalible"/>
这段Stanza表示的就是tom@163.com给kitte@gmail.com用户发送了上线通知
- 通信协议---XMPP
- iOS--XMPP (可扩展消息处理现场协议) 即时通信协议
- 通信协议
- 通信协议
- 通信协议
- 通信协议
- 通信协议
- 通信协议
- 通信协议
- XMPP
- XMPP
- XMPP
- XMPP
- xmpp
- XMPP
- XMPP
- XMPP
- XMPP
- 基本互联通信方式
- Python开发网络爬虫优秀博客
- C语言字符串处理函数
- 【杂谈】搭建了一个自己的专属域名邮箱。
- Android的px、dp和sp等单位的区别详解
- 通信协议---XMPP
- 在fragment中设置bar,getSupportActionbar()返回null,添加up action失败的原因。
- 重写、覆盖、重载、多态几个概念的区别分析
- LeetCode 394. Decode String LeetCode 385. Mini Parser
- CTR预估中GBDT与LR融合方案
- linux C由signal和alarm实现的键盘监控和程序计时
- 【BZOJ1015】【JSOI2008】星球大战starwar
- Codeforces Round #365 (Div. 2) C. Chris and Road 实数级的二分法、几何
- MySQL常用函数