1、xmpp身份标识
xmpp规定,每个客户端都是使用JID来作为身份标识的:
[user "@"] domain ["/" resource]
2、xmpp stanzas通用属性
(1)、from 属性指定发送者的JID
(2)、to 属性指定接收节的JID
(3)、type属性指定目的或消息上下文,出席或IQ节的详细信息。iq节的type属性有:Error,Get,Result,Set; presence节的type属性有:Available,Subscribe,Subscribed,Unsubscribe, Unsubscribed,Unavailable,Probe,Error,Invisible; message节的type属性有:Chat,Error,GroupChat,Headline,Normal
(4)、id 是做唯一标识符的,比如客户端发送了一个stan给服务器,然后服务器又给客户端返回了一段stan,那么我们怎么知道服务器返回这个stan是应答客户端发出的那个stan,这就需要借助id这个属性来完成,客户端在发送的时候指定了一个唯一的id,服务器在返回的时候也返回了一个相同的id
3、常用节点
(1).Stream结构主要是用于建立初始化连接的
客户端:<?xml version='1.0'?>
<stream:stream
to='example.com'
xmlns='jabber:client'
xmlns:stream='http://etherx.jabber.org/streams'
version='1.0'>
服务器:<?xml version='1.0'?>
<stream:stream
from='example.com'
id='someid'
xmlns='jabber:client'
xmlns:stream='http://etherx.jabber.org/streams'
version='1.0'>
这里没有结果标签,如果发送结束标签表示会话结束
(2) Presence结构
还可以包含以下标签更加详细的显示用户状态
away离开,chat在线,xa长时间的离开 ,dnd不想打扰,status表示准确告诉别人你去做什么了信息
3、message结构
type属性有normal表示独立消息不属于任何一个,chat聊天消息,groupchat群聊,headline滚动头条内容
4、iq结构信息查询
type中的get表示获取数据,set表示设置数据,result响应数据,比如get请求,error错误
另外更多信息:http://blog.csdn.net/imyfriend/article/details/8584360