iq

XMPP文件传输(XEP-0096协议说明)

烈酒焚心 提交于 2019-12-01 16:56:26
XMPP XEP-0096协议是XMPP中的文件传输协议。 关于文件传输,在xmpp协议中有不少协议可以实现,而XEP-0096协议是其中非常简单的一个协议。由于邮件被删,我的代码demo丢失,因此只能在这里给大家讲一下其中的逻辑实现,大家可以以此来写出代码。 首先申明一下,以下是我个人对XEP-0096协议的一些认识和解释,如有疑问,请发邮件到 lizhanzhishang @gmail.com ,欢迎交流~ 我们根据openfire服务器做开发,但是服务器在这里只是起路由寻址和转发的作用,实质上是完全点对点的通信,数据处理由客户端来做。 我们可以举一个栗子,有两部手机,互相之间使用message协议传递信息的完整message XML数据,可以看看一个客户端发送的是什么信息,另一个客户端接收的又是什么message信息,要是一样,说明的是服务器是转发的数据,要是不一样的 话,则可能带有IQ ,MSG,Pr信息。(但是总是有例外的,服务器也要对连接的数据做一些心跳包。) 下面是一组请求(一方发出“发送文件”请求,接收方发出“拒绝接受”请求): 这是”发送文件”的一段数据请求,(图片小,可以双击放大) 将接受方拒绝接受文件的信息返回给发送方: 就此请求完毕,一方发出了“发送文件”的请求,另一方“拒绝”了这个请求。 这里有一个完整的数据传输协议,在官方的文档上是这样写的: In