mirror of
https://github.com/moparisthebest/xeps
synced 2024-11-28 12:12:22 -05:00
0.5
This commit is contained in:
parent
aa6e99df45
commit
d80cf397fe
65
xep-0152.xml
65
xep-0152.xml
@ -7,7 +7,7 @@
|
|||||||
<xep>
|
<xep>
|
||||||
<header>
|
<header>
|
||||||
<title>Reachability Addresses</title>
|
<title>Reachability Addresses</title>
|
||||||
<abstract>This document defines an XMPP protocol extension for communicating information about how an entity can be reached using methods other than the entity's normal JID.</abstract>
|
<abstract>This document defines an XMPP protocol extension for communicating information about how an entity can be reached temporarily using methods other than the entity's normal JID.</abstract>
|
||||||
&LEGALNOTICE;
|
&LEGALNOTICE;
|
||||||
<number>0152</number>
|
<number>0152</number>
|
||||||
<status>Proposed</status>
|
<status>Proposed</status>
|
||||||
@ -24,6 +24,12 @@
|
|||||||
<shortname>reach</shortname>
|
<shortname>reach</shortname>
|
||||||
&stpeter;
|
&stpeter;
|
||||||
&hildjj;
|
&hildjj;
|
||||||
|
<revision>
|
||||||
|
<version>0.5</version>
|
||||||
|
<date>2013-09-25</date>
|
||||||
|
<initials>psa</initials>
|
||||||
|
<remark><p>Modified the text and examples to better illustrate the primary use case.</p></remark>
|
||||||
|
</revision>
|
||||||
<revision>
|
<revision>
|
||||||
<version>0.4</version>
|
<version>0.4</version>
|
||||||
<date>2013-02-05</date>
|
<date>2013-02-05</date>
|
||||||
@ -70,6 +76,7 @@
|
|||||||
<li><p>Send the address(es) within a &PRESENCE; stanza; this option is described in the <link url='#transport-presence'>Presence Transport</link> section of this document and is consistent with &rfc6121; since reachability is one aspect of a user's availability for communication.</p></li>
|
<li><p>Send the address(es) within a &PRESENCE; stanza; this option is described in the <link url='#transport-presence'>Presence Transport</link> section of this document and is consistent with &rfc6121; since reachability is one aspect of a user's availability for communication.</p></li>
|
||||||
<li><p>Send address(es) to the appropriate &xep0060; node; this option is described in the <link url='#transport-pep'>PEP Transport</link> section of this document but might not be available at all service providers.</p></li>
|
<li><p>Send address(es) to the appropriate &xep0060; node; this option is described in the <link url='#transport-pep'>PEP Transport</link> section of this document but might not be available at all service providers.</p></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
<p>This document defines methods for publishing addresses at which a user can be reached temporarily, as opposed to semi-permanent addresses of the kind that are more appropriately communicated in a user's vCard.</p>
|
||||||
</section1>
|
</section1>
|
||||||
|
|
||||||
<section1 topic='Requirements' anchor='reqs'>
|
<section1 topic='Requirements' anchor='reqs'>
|
||||||
@ -85,7 +92,7 @@
|
|||||||
<example caption="Data Format for Reachability Addresses"><![CDATA[
|
<example caption="Data Format for Reachability Addresses"><![CDATA[
|
||||||
<reach xmlns='urn:xmpp:reach:0'>
|
<reach xmlns='urn:xmpp:reach:0'>
|
||||||
<addr uri='tel:+1-303-555-1212'/>
|
<addr uri='tel:+1-303-555-1212'/>
|
||||||
<addr uri='sip:romeo@sipspeare.lit'/>
|
<addr uri='sip:room123@example.com'/>
|
||||||
</reach>
|
</reach>
|
||||||
]]></example>
|
]]></example>
|
||||||
<p>When publishing reachability addresses, the <reach/> element MUST contain at least one <addr/> element. Each <addr/> element MUST possess a 'uri' attribute, whose value MUST be the Uniform Resource Identifier (&rfc3986;) or Internationalized Resource Identifier (&rfc3987;) of an alternate communications method for reaching the user.</p>
|
<p>When publishing reachability addresses, the <reach/> element MUST contain at least one <addr/> element. Each <addr/> element MUST possess a 'uri' attribute, whose value MUST be the Uniform Resource Identifier (&rfc3986;) or Internationalized Resource Identifier (&rfc3987;) of an alternate communications method for reaching the user.</p>
|
||||||
@ -93,10 +100,10 @@
|
|||||||
<example caption="Reachability Addresses With Descriptions"><![CDATA[
|
<example caption="Reachability Addresses With Descriptions"><![CDATA[
|
||||||
<reach xmlns='urn:xmpp:reach:0'>
|
<reach xmlns='urn:xmpp:reach:0'>
|
||||||
<addr uri='tel:+1-303-555-1212'>
|
<addr uri='tel:+1-303-555-1212'>
|
||||||
<desc xml:lang='en'>New conference room number</desc>
|
<desc xml:lang='en'>Conference room phone</desc>
|
||||||
</addr>
|
</addr>
|
||||||
<addr uri='sip:romeo@sipspeare.lit'>
|
<addr uri='sip:room123@example.com'>
|
||||||
<desc xml:lang='en'>My softphone</desc>
|
<desc xml:lang='en'>In-room video system</desc>
|
||||||
</addr>
|
</addr>
|
||||||
</reach>
|
</reach>
|
||||||
]]></example>
|
]]></example>
|
||||||
@ -110,13 +117,15 @@
|
|||||||
</ul>
|
</ul>
|
||||||
<p>This document does not recommend one transport method over the other.</p>
|
<p>This document does not recommend one transport method over the other.</p>
|
||||||
<p>In addition, a contact MAY request a user's reachability addresses in an XMPP &IQ; stanza of type "get" and a user MAY send reachability addresses in an XMPP &MESSAGE; stanza. However, the presence and PEP transport methods are preferred.</p>
|
<p>In addition, a contact MAY request a user's reachability addresses in an XMPP &IQ; stanza of type "get" and a user MAY send reachability addresses in an XMPP &MESSAGE; stanza. However, the presence and PEP transport methods are preferred.</p>
|
||||||
|
|
||||||
<section2 topic='Presence Transport' anchor='transport-presence'>
|
<section2 topic='Presence Transport' anchor='transport-presence'>
|
||||||
<p>To broadcast reachability addresses in presence information, a user's client includes the <reach/> element in the &PRESENCE; stanza it sends to its server:</p>
|
<p>To broadcast reachability addresses in presence information, a user's client includes the <reach/> element in the &PRESENCE; stanza it sends to its server.</p>
|
||||||
|
<p>For example, consider someone who walks into a conference room at the office. Via nearfield communication, the user's XMPP client might auto-discovery a 'tel:' URI for the room audio system and a 'sip:' URI for the room video system.</p>
|
||||||
<example caption="User's Client Includes Reachability Addresses in Presence"><![CDATA[
|
<example caption="User's Client Includes Reachability Addresses in Presence"><![CDATA[
|
||||||
<presence from='romeo@montague.net'>
|
<presence from='romeo@example.com/mobile'>
|
||||||
<reach xmlns='urn:xmpp:reach:0'>
|
<reach xmlns='urn:xmpp:reach:0'>
|
||||||
<addr uri='tel:+1-303-555-1212'/>
|
<addr uri='tel:+1-303-555-1212'/>
|
||||||
<addr uri='sip:romeo@sipspeare.lit'/>
|
<addr uri='sip:room123@example.com'/>
|
||||||
</reach>
|
</reach>
|
||||||
</presence>
|
</presence>
|
||||||
]]></example>
|
]]></example>
|
||||||
@ -125,28 +134,33 @@
|
|||||||
<presence from='romeo@montague.net' to='juliet@capulet.com'>
|
<presence from='romeo@montague.net' to='juliet@capulet.com'>
|
||||||
<reach xmlns='urn:xmpp:reach:0'>
|
<reach xmlns='urn:xmpp:reach:0'>
|
||||||
<addr uri='tel:+1-303-555-1212'/>
|
<addr uri='tel:+1-303-555-1212'/>
|
||||||
<addr uri='sip:romeo@sipspeare.lit'/>
|
<addr uri='sip:room123@example.com'/>
|
||||||
</reach>
|
</reach>
|
||||||
</presence>
|
</presence>
|
||||||
]]></example>
|
]]></example>
|
||||||
<p>Naturally, a reachability address MAY alternatively be included in directed presence.</p>
|
<p>(Naturally, a reachability address MAY alternatively be included in directed presence.)</p>
|
||||||
|
<p>Upon leaving the conference room, the user's client would send updated presence without the reachability extension.</p>
|
||||||
|
<example caption="User's Client Sends Updated Presence Without Reachability Addresses"><![CDATA[
|
||||||
|
<presence from='romeo@example.com/mobile'/>
|
||||||
|
]]></example>
|
||||||
</section2>
|
</section2>
|
||||||
|
|
||||||
<section2 topic='Personal Eventing Protocol' anchor='transport-pep'>
|
<section2 topic='Personal Eventing Protocol' anchor='transport-pep'>
|
||||||
<p>To publish reachability addresses via the personal eventing protocol (<cite>XEP-0163</cite>), the entity publishes data to the "urn:xmpp:reach:0" node.</p>
|
<p>To publish reachability addresses via the personal eventing protocol (<cite>XEP-0163</cite>), the entity publishes data to the "urn:xmpp:reach:0" node.</p>
|
||||||
<example caption='Entity Publishes Reachability Addresses via PEP'><![CDATA[
|
<example caption='Entity Publishes Reachability Addresses via PEP'><![CDATA[
|
||||||
<iq type='set'
|
<iq type='set'
|
||||||
from='romeo@montague.net'
|
from='romeo@example.com'
|
||||||
to='pubsub.shakespeare.lit'
|
to='pubsub.shakespeare.example'
|
||||||
id='publish1'>
|
id='publish1'>
|
||||||
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
||||||
<publish node='urn:xmpp:reach:0'>
|
<publish node='urn:xmpp:reach:0'>
|
||||||
<item id='a1s2d3f4g5h6bjeh936'>
|
<item id='a1s2d3f4g5h6bjeh936'>
|
||||||
<reach xmlns='urn:xmpp:reach:0'>
|
<reach xmlns='urn:xmpp:reach:0'>
|
||||||
<addr uri='tel:+1-303-555-1212'>
|
<addr uri='tel:+1-303-555-1212'>
|
||||||
<desc xml:lang='en'>My mobile number</desc>
|
<desc xml:lang='en'>Conference room phone</desc>
|
||||||
</addr>
|
</addr>
|
||||||
<addr uri='sip:romeo@sipspeare.lit'>
|
<addr uri='sip:room123@example.com'>
|
||||||
<desc xml:lang='en'>My softphone</desc>
|
<desc xml:lang='en'>In-room video system</desc>
|
||||||
</addr>
|
</addr>
|
||||||
</reach>
|
</reach>
|
||||||
</item>
|
</item>
|
||||||
@ -162,10 +176,10 @@
|
|||||||
<item id='a1s2d3f4g5h6bjeh936'>
|
<item id='a1s2d3f4g5h6bjeh936'>
|
||||||
<reach xmlns='urn:xmpp:reach:0'>
|
<reach xmlns='urn:xmpp:reach:0'>
|
||||||
<addr uri='tel:+1-303-555-1212'>
|
<addr uri='tel:+1-303-555-1212'>
|
||||||
<desc xml:lang='en'>My mobile number</desc>
|
<desc xml:lang='en'>Conference room phone</desc>
|
||||||
</addr>
|
</addr>
|
||||||
<addr uri='sip:romeo@sipspeare.lit'>
|
<addr uri='sip:room123@example.com'>
|
||||||
<desc xml:lang='en'>My softphone</desc>
|
<desc xml:lang='en'>In-room video system</desc>
|
||||||
</addr>
|
</addr>
|
||||||
</reach>
|
</reach>
|
||||||
</item>
|
</item>
|
||||||
@ -173,6 +187,21 @@
|
|||||||
</event>
|
</event>
|
||||||
</message>
|
</message>
|
||||||
]]></example>
|
]]></example>
|
||||||
|
<p>As above, when leaving the conference room the user's client would publish an updated payload indicating that it no longer has any temporary reachability addresses.</p>
|
||||||
|
<example caption='Entity Publishes Payload with Empty Reachability Addresses'><![CDATA[
|
||||||
|
<iq type='set'
|
||||||
|
from='romeo@example.com'
|
||||||
|
to='pubsub.shakespeare.example'
|
||||||
|
id='publish1'>
|
||||||
|
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
||||||
|
<publish node='urn:xmpp:reach:0'>
|
||||||
|
<item id='a1s2d3f4g5h6bjeh936'>
|
||||||
|
<reach xmlns='urn:xmpp:reach:0'/>
|
||||||
|
</item>
|
||||||
|
</publish>
|
||||||
|
</pubsub>
|
||||||
|
</iq>
|
||||||
|
]]></example>
|
||||||
</section2>
|
</section2>
|
||||||
</section1>
|
</section1>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user