`
iunknown
  • 浏览: 409505 次
社区版块
存档分类
最新评论

jabber 规范的中文翻译

    博客分类:
  • MISC
阅读更多
jabber 的相关规范已经有人做了翻译

XMPP正式RFC标准

做个记录,:)

4.3. 流的安全

在XMPP 1.0中,当XML流开始握手时,TLS应该(SHOULD)按 第五章:TLS的使用 中的规定来使用,SASL必须(MUST)按第六章:SASL的使用中的规定来使用。尽管可能(MAY)存在某种共有的机制能够保证双向安全,但是“初始化流”(比如从初始化实体发给接收实体的流)和“应答流”(比如从接收实体发给初始化实体的流)还是必须(MUST)安全的分开。在流被验证之间,实体不应该(SHOULD NOT)尝试通过流发送XML节(第九章);就算它这样做了,对方的实体也不能(MUST NOT)接受这些XML节,并且应该(SHOULD)返回一个 <not-authorized/> 的流错误信息并且终止当前TCP连接上双方的XML流;注意,这仅仅是针对XML节(包含在缺省命名空间中的 <message/>, <presence/>, 和 <iq/> 元素),而不是指那些用于 TLS握手(第五章)、SASL握手(第六章)握手的流。

接收实体必须(MUST)在应答流的头信息中把'版本'的值设置成初始化实体所提供的版本或它所支持的最高版本,取其中版本号较低的那一个。接收实体必须(MUST)把主版本号和副版本号作为数字来比较,而不是对"主版本号.副版本号"这个字符串进行比较.

一个用户必须完成以下用例:
引用
    * 和其他用户交换消息
    * 和其他用户交换出席信息
    * 管理和其他用户之间的订阅和被订阅
    * 管理联系人列表中的条目(在 XMPP 中这被称为 "roster")
    * 屏蔽和特定的其他用户之间的通信(出或入)



关于XML生成, 一个XMPP实现不能(MUST NOT)在XML流中注入以下任何东西:
引用
    * 注释 (第二章第五节[XML])
    * 处理指示(第二章第六节 同上)
    * 内部或外部的 DTD 子集 (第二章第八节 同上)
    * 内部或外部的实体参考 (第四章第二节 同上) 除了预定实体以外(第四章第六节 同上)
    * 字符数据或属性值包含和预定实体列表中吻合的未逃逸的unescaped字符(第四章第六节 同上); 这些字符必须(MUST)逃逸

关于XML处理, 如果一个XMPP实现接收到这些受限的XML数据,它必须(MUST)忽略这些数据.


引用
12.1. 服务器

除了所有已定义的关于安全, XML使用, 和国际化的要求之外, 一个服务器还必须(MUST)支持以下核心协议以保证兼容性:

    * 在地址中应用[STRINGPREP] 的 [NAMEPREP], Nodeprep (附录 A),和 Resourceprep (附录 B) profiles (包括确保域ID是[IDNA]中定义的国际化域名)
    * XML流(第四章), 包括Use of TLS(第五章), Use of SASL(第六章), 和Resource Binding (第七章)
    * 三个在stanza semantics(第九章第二节)中已定义的节类型(即,<message/>, <presence/>, 和<iq/>)的基本语义
    * 生成错误的语法及相关的流, TLS, SASL, 和 XML节的语义

另外, 一个服务器可以(MAY)支持以下核心协议:

    * 服务器回拨 (第八章)
分享到:
评论
1 楼 iunknown 2007-07-28  
管理好友列表
  
  好友资料(Roster)的管理是一个比较头疼的事情,至少从现在协议的描述来看。

  How the roster works

  好友资料的处理工作包括:用户的状态,好友的状态以及那些想加好友但尚未验证通过的请求。Jabber服务器存储用户的好友资料,并负责在如下情况下通知已登录的用户其好友资料的改变:用户添加或删除一个好友,其他用户在好友列表中添加或删除你,用户通过或拒绝加入好友的验证。这些都笼统的称作好友资料更新。这些更新通知都是作为<iq>元素(使用jabber:iq:roster命名空间)数据来发送的。当然,客户端也可以主动请求好友资料的更新:这个在登录后通常都应该进行一次,以更新本地客户端的好友资料。

  Subscribing & unsubscribing buddies

  添加或删除好友是通过<presence>元素来进行的,它的type属性是subscribe或unsubscribe。接收或拒绝都是通过<presence>元素来进行的(请求和应答都有同样的ID号)总之,当你的好友资料改变时,服务器就会主动通知你情况的改变。前面已经说过,PHP编写的WellJabber有很多限制,其中一条就是除非你主动要求更新好友资料,否则很难及时反映好友在线情况。

  Manually updating the roster
  
  如果你想更新服务器端的好友资料,可以发送<iq type=”set”>元素,你这样做并不是添加或删除好友,而是更新与好友相关的资料,比如他们的昵称或所属组名。[JPO 1.6.12]

  More roster info

  完整的好友信息可以在通过一个<iq>询问接受vCard资料时获得,前提是如果他们存储了这样的信息[JPO 1.6.26]。(关于vCard,实在又是一个很大的论题,所以作为演示例子的WellJabber没有包含它)

相关推荐

    jabber概述

    ### Jabber概述与关键技术知识点 #### 一、Jabber简介 Jabber是一个由开源社区发起并领导开发的即时消息和在线状态的系统。它最大的特点在于采用了开放的XML协议,这使得Jabber系统与其他即时消息(IM)服务相比具有...

    Cisco Jabber 服务器设置 中文

    根据提供的文件信息,我们可以总结出以下关于Cisco Jabber服务器设置的知识点: 1. Cisco Jabber软件概述 - Cisco Jabber是一种企业级通信解决方案,它可以集成即时消息(IM)、语音、视频通话和电话功能,提供统一...

    cisco jabber

    Cisco Jabber是一款由思科公司开发的企业级即时通讯和协作工具。它整合了多种通信方式,包括文字聊天、语音通话、视频会议、桌面共享、文件分享等,旨在提高工作效率并促进团队间的协作。 **1. Cisco Jabber简介** ...

    Jabber服务协议的概述

    Jabber服务协议详解 **一、Jabber——开源即时通信系统的先驱** Jabber,一个由开源社区发起并主导的即时消息与在线状态系统,在即时通信领域独树一帜。与其他即时消息(IM)服务不同的是,Jabber采用了一套开放的...

    Cisco Jabber For MacOS 12.5.1

    Cisco Jabber是一款由思科公司开发的企业级即时通讯和协作工具,专为MacOS平台设计。此版本"12.5.1"是针对Mac用户的最新更新,旨在提供高效、安全且集成化的通信体验。Cisco Jabber支持多种通信方式,包括文字聊天、...

    jabber协议分析及开发文档

    ①英文文档,详细分析jabber协议。This book is dedicated to the Jabber community: innovation, insight and fun. Who could ask for anything more? ②英文文档。This code-rich reference includes many ...

    网络通信 jabber协议

    Jabber协议是一种基于XML的即时通讯协议,由开源社区主导开发,主要用于实现即时消息和在线状态的交换。它的核心优势在于其开放性,允许开发者根据需求进行扩展和定制。Jabber协议主要包括三个顶级XML元素:`...

    Jabber 协议 即时消息和在线状态的系统

    Jabber 协议是一种基于XML的开放即时通讯协议,主要设计用于实现即时消息和在线状态的传递。这个协议由Jabber开源社区发起,并且不断演化以适应各种扩展需求。Jabber协议的核心特点在于其开放性,允许开发者创建...

    Cisco Jabber SIP URI呼叫

    在这种设定下,Jabber A通过MRA或内部连接能够呼叫Jabber B,而配置在CUCM、Expressway C和E上的设置对于组织1来说是相同的。 #### 3. 假设条件 - Jabber A用户和Jabber B用户能够在XMPP联邦上交换即时消息(IM)和...

    Jabber(XMPP)服务协议的概述中文版

    Jabber(XMPP)服务协议的概述中文版

    Jabber协议概述

    **Jabber协议概述** Jabber协议,全称为Extensible Messaging and Presence Protocol(XMPP),是一种基于XML的即时通信协议。它最初由Jabber开源社区开发,并在2002年被互联网工程任务组(IETF)采纳为RFC 3920和...

    思科Jabber令企业协作轻而易举

    思科Jabber是一款高效的统一通信应用程序,旨在为企业提供随时随地、跨设备的即时通信与协作体验。在这个信息快速流通的时代,员工常常需要面对不同地点、不同时区的工作挑战,而思科Jabber正是针对这一需求应运而生...

    cisco jabber Windows软件

    cisco jabber 软件

    Jabber 协议 概述

    ### Jabber 协议概述 #### 1. 引言 Jabber 是一款由开源社区发起并主导的即时消息和在线状态系统。与传统的即时通讯(IM)服务不同,Jabber 的一大特色在于其采用了一种开放的 XML 协议。在 Jabber 1.0 版本的基础上...

    jabber博客

    **jabber博客系统详解** jabber博客系统是一个基于Jekyll构建的开源博客平台,它以其高效、简洁和灵活的特点受到了许多个人用户和开发者们的青睐。Jekyll是一款静态站点生成器,它将Markdown或Textile格式的文本...

    思科视频会议jabber

    思科视频会议jabber,MAC端软件,支持思科视频会议接入。

    RFC6121 - Jabber_XMPP中文翻译计划

    本文定义提供了遵循RFC2779要求的基本的即时消息(IM)和出席信息功能的可扩展的消息和出席信息协议(XMPP)的核心功能的扩展. 本文取代了 RFC 3921

    jabber/xmpp技术研究与应用

    根据给定文件的信息,本文将深入探讨Jabber/XMPP技术的相关知识点,重点解析其技术体系、安全机制以及在即时通信系统中的应用。 ### Jabber/XMPP技术概述 Jabber/XMPP(eXtensible Messaging and Presence ...

    Jabber 11.0.1 for Andorid

    Cisco Jabber 11.0.1 for Andorid, 安卓系统通用,Cisco出品的即时聊天软件。

Global site tag (gtag.js) - Google Analytics