首页 > 代码库 > XMPP协议及实践

XMPP协议及实践

一、XMPP协议

XMPP (Extensible Messaging and Presence Protocol)是一种基于标准通用标记语言的子集XML的协议,它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有很强的可扩展性。XMPP的前身是Jabber。

1、XMPP中的几个重要概念:

JID:即Jabber ID。xmpp网络有一个或多个地址jid,  a@aaa.lit/study组成:节点、域、资源(带有资源的jid是完整jid,没有资源的jid是裸jid),其中节点和资源是可选的,域是必选的。jid的资源部分会标识一个特定的客户端xmpp链接,对于xmpp客户端来说,每个链接均被指派一个资源。


XMPP中定义了三个角色,客户端,服务器,网关
通信能够在这三者的任意两个之间双向发生。
服务器同时承担了客户端信息记录,连接管理和信息的路由功能。
网关承担着与异构即时通信系统的互联互通,异构系统可以包括SMS(短信),MSN,ICQ等。


客户端或服务器发送的所有XML文本连缀在一起,从<stream>到</stream>构成了一个完整的XML文档。
XML流:其中的stream标签就是所谓的XML Stream。
XML节:在<stream>与</stream>中间的那些<message>...</message>这样的XML元素就是所谓的XML Stanza


2、XMPP工作原理:


二、XMPP环境

1、服务器软件



2、客户端软件


三、XMPP实践

1、iOS上用XMPP开发IM软件


2、Android上用XMPP开发IM软件



未完。。。

XMPP协议及实践