温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

XMPP学习笔记(1)

发布时间:2020-07-22 16:13:11 来源:网络 阅读:389 作者:ljl5125 栏目:开发技术
  1. 即时通讯的核心在于它的传输协议

  2. xmpp是一个分散型通信网络,只要网络基础设施允许,任何xmpp用户都可以向其他xmpp用户传递消息

  3. xmpp是一种基于xml的协议

  4. XMPP中定义了三个角色,客户端,服务器,网关。通信能够在这三者的任意两个之间双向发生

  5. 而XMPP的核心部分就是一个在网络上分片段发送XML的流协议。这个流协议是XMPP的即时通讯指令的传递基础,也是一个非常重要的可以被进一步利用的网络基础协议。可以说,XMPP用TCP传的是XML流

  6. 缺点:数据负载过重,没有二进制传输

  7. XMPP核心文件

    XMPPStream:是开发过程中最主要交互的类,所有扩展和自定义代码均要基于此类进行

    XMPPParser:供XMPPStream解析使用

    XMPPJID:提供了一个不可变JID的实现,遵守NSCopying协议和NSCoding协议

    XMPPElement:以下三个XMPP元素的基类

    XMPPIQ :请求

    XMPPMessage :消息

    XMPPPresence :出席

    XMPPModule:开发XMPP扩展时使用

    XMPPLogging:XMPP的日志框架

    XMPPInternal:整个XMPP框架内部使用的核心和高级底层内容

    XMPPReconnect:如果意外中断,自动重连XMPP流

    XMPPRoster:标准的XMPP花名册

    XMPPRoom:提供多人聊天支持

    XMPPPubSub:提供公共订阅支持

    ……


  8. 注意:1)XMPP框架仅提供了一个最小的代理委托系统用于接收三种XMPP类型(IQ、Message和Presence),如果要实现更多的功能,开发者还需要编写大量的相关代码

      2)为了简化开发,通常将XMPPStream放置在AppDelegate中,以便于全局访问


9.  使用XMPP的实时消息传递系统包含三大通信类别:

    消息传递,其中数据在有关各方之间传输

    联机状态,允许用户广播其在线状态和可用性

    信息/查询请求,它允许XMPP实体发起请求并从另一个实体接收响应


10. 以上三种类型的XMPP节都拥有以下公共属性:

    from:源XMPP实体的JID

    to:目标接收者的JID

    id:当前对话的可选标识符

    type:节的可选子类型

    xml:lang:如果内容是人们可读的,则为消息语言的描述


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI