文档章节

xmpp基础知识

厚德
 厚德
发布于 2015/05/14 09:39
字数 353
阅读 12
收藏 0
xmpp的基础知识  
	xmpp 规定,每个客户端是使用JID来作为身份标识的:
	[ user "@"] domain["/" resource] resource 一般代表机器类型如:Android pc等
	
	XML Stanzas 通用属性
	1 from 
	2 to 
	3 type 类型
	4 id 唯一标识符号

	常用结构
	1. stream 的结构,主要用于服务器和客户端进行初始化连接使用的
	client:
	<stream:stream
		to="example.com"
		xmlns="jabber:client"
		xmlns:stream ="http://etherx.jabber.org/streams"
		version="1.0">
	
	Server:
	<stream:stream
		from="example.com"
		id="someid"
		xmlns="jabber:client"
		xmlns:stream ="http://etherx.jabber.org/streams"
		version="1.0"/>
	结束符号	
	<stream:stream/>	
	
	2. presence 结构 标识用户的在线状态
	<presence
		from="jackson@gmail.com"
		to="jimmy@msn.com"	
		type="unavailable"/>
	说明:jackson用户告诉jimmy用户说他已经下线了
	type的可选参数:
	available 在线 ; unavailable 不在线
	subscribe 订阅某个用户在线状态  ; subscribed 授权该次订阅
	unsubscribe 取消订阅 ; unsubscribed 授权取消该次订阅
	error 错误
	
	还可以使用扩展标签更加详细标识状态
	<presence>
		<show>away</show>
		<status>Having a spot of tea</status>
	</presence>
	show 可选:
	chat 在线可以聊天
	away 暂时离开
	xa	长时间离开
	dnd 不被打扰
	
	3. message 结构
	<message
		from="jackson@gmail.com"
		to="jimmy@msn.com"
		type="chat"
		<body>hello!</body>
	</message>
	type的可选参数
	normal chat() groupchat(群聊) headline(头条内容) error 
	
	4 IQ结构 info query
	<iq
		from="jackson@gmail.com"
		id="r16qwqw"
		to="jackson@gmail.com"
		type="get">
		<query xmlns="jabber:iq:roster"/>
	</iq>
	type可选参数
	get set result error


© 著作权归作者所有

厚德
粉丝 2
博文 53
码字总数 33193
作品 0
武汉
私信 提问
.NET的XMPP协议包--agsXMPP

agsXMPP致力于创建一个轻量、快速的跨平台类库,用于XMPP协议。 通过下面的三项技术,agsXMPP达到了这个目标。 异步套接字 与工厂模式结合的快速XML解析器 自有的轻量级XML Dom,作为所有ags...

匿名
2009/07/21
15.9K
1
通过XMPP协议实现即时通讯介绍

四种即时通讯协议 概述 目前IM有四种协议:即时信息和空间协议(IMPP)、空间和即时信息协议(PRIM)、针对即时通讯和空间平衡扩充的进程开始协议SIP(SIMPLE)以及XMPP。PRIM与XMPP、 SIMPLE类似,...

崔同亮
2014/01/22
0
0
iOS开发之使用XMPPFramework实现即时通信(一)

iOS开发之使用XMPPFramework实现即时通信(一)   关于XMPP的理论介绍在本篇博客中就不做赘述了,如何在我们之前的微信中加入XMPP协议来实现通信呢?下面将会介绍一下XMPP的基本的知识,让我...

SoulJa
2015/07/07
0
0
史上最全解析Android消息推送解决方案

前言 消息推送在Android开发中应用的场景是越来越多了,比如说电商产品进行活动宣传、资讯类产品进行新闻推送等等,如下图: 本文将介绍Android中实现消息推送的7种主流解决方案 目录 目录 ...

Carson_Ho
2017/05/15
0
0
XMPP 协议适合用来做移动 IM 么

XMPP 协议是什么 XMPP(Extensible Messaging and Presence Protocol,前称Jabber)是一种以 XML 为基础的开放式实时通信协议,关于它的协议细节,网上已经有太多分析文章,我这里就不再赘述...

都比zunxi
2014/09/03
7.9K
6

没有更多内容

加载失败,请刷新页面

加载更多

怎么升级phpstudy中的php版本

http://www.php.cn/jishu/php/413274.html php官网 下载php版本 https://windows.php.net/

15834278076
25分钟前
2
0
文件已删除但句柄没有释放导致磁盘空间用完

有时候会发现linux文件系统分区已经快满了,但又找不到到底是什么文件占用了磁盘空间,就有可能是已删除的文件的句柄没有释放,还占着空间 检查命令: lsof | grep deleted 如果发现很多del...

果树啊
29分钟前
2
0
mysql5.7 [Err] 1118 - Row size too large (> 8126).

mysql [Err] 1118 - Row size too large (> 8126). 问题 mysql5.7 在执行创建表或者增加字段时,发现row size长度过长,导致出现以下错误。 [Err] 1118 - Row size too large (> 8126). C......

GritTan
31分钟前
1
0
[mybatis]一级缓存与二级缓存配置(mybatis3.4.0)

二级缓存 添加<cache />即可 日志: 2019-05-20 16:28:16.525 [http-nio-8830-exec-2] DEBUG com.asiainfo.mysql.MysqlMapper -Cache Hit Ratio [com.asiainfo.mysql.MysqlMapper]: 0.......

Danni3
41分钟前
1
0
Kafka两级调度实现分布式协调任务分配Golang版

背景 基于Kafka消息队列的两级协调调度架构 Kafka内部为了协调内部的consumer和kafka connector的工作实现了一个复制协议, 主要工作分为两个步骤: 通过worker(consumer或connect)获取自身的...

8小时
48分钟前
21
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部