Difference between revisions of "XMPP 2.0"

Jump to navigation Jump to search
1,264 bytes added ,  17:28, 10 August 2017
Line 26: Line 26:
=== Migration path in a hypothetical XMPP 2.0 Session ===
=== Migration path in a hypothetical XMPP 2.0 Session ===


The server(s) would translate the semantics for non-XMPP-2.0 servers and clients. For this, the following transformations would be applied when talking to non-XMPP-2.0 nodes:
Since routing rules are inherently different, a definition of what happens to stanzas which transition between XMPP 2.0 and XMPP 1.0 nodes is needed. These rules would normally be implemented by servers. Client libraries which support both XMPP 2.0 and XMPP 1.0 could apply those rules when talking to an XMPP 1.0 server. Relevant definitions:


* If a message is addressed to a ''full JID'', a <code>&lt;private/&gt;</code> (see [https://xmpp.org/extensions/xep-0280.html#avoiding Avoiding Carbons for a single message]) or a <code>&lt;no-copy/&gt;</code> hint is injected.
;XMPP 1.0 Routing Modifiers
:XML elements which modify routing behaviour in XMPP 1.0:
:* <code>&lt;private/&gt;</code> ([https://xmpp.org/extensions/xep-0280.html Message Carbons])
:* <code>&lt;no-copy/&gt;</code> ([https://xmpp.org/extensions/xep-0334.html Message Processing Hints])


Rules for stanzas leaving the XMPP 2.0 realm (to an XMPP 1.0 node):
* If a message is addressed to a ''full JID'', an XMPP 1.0 Routing Modifier to prevent carbon copying MUST be injected.
* The stanza MUST be marked with a to-be-defined <code>&lt;xmpp-2/&gt;</code> tag so that XMPP 2.0 nodes further downstream can recognize that the XMPP 2.0 routing semantics shall apply.
Rules for stanzas entering the XMPP 2.0 realm (from an XMPP 1.0 node):
* If the stanza has an <code>&lt;xmpp-2/&gt;</code> tag, it MUST be processed as if it came from an XMPP 2.0 node. Any XMPP 1.0 Routing Modifiers MUST be stripped.
* If a message to a ''bare JID'' has a XMPP 1.0 Routing Modifier which prevents carbon-copying, the [https://xmpp.org/rfcs/rfc6121.html#rules-localpart-barejid routing rules for bare JID messages as defined in RFC 6120] SHOULD be applied.
* The stanza MUST be marked with a to-be-defined <code>&lt;xmpp-1/&gt;</code> tag so that XMPP 2.0 nodes further downstream can recognize that the XMPP 1.0 routing semantics shall apply.


== Resource locking ==
== Resource locking ==
88

edits

Navigation menu