1
0
mirror of https://github.com/moparisthebest/xeps synced 2024-11-30 21:22:15 -05:00
git-svn-id: file:///home/ksmith/gitmigration/svn/xmpp/trunk@830 4b5297f7-1745-476d-ba37-a9c6900126ab
This commit is contained in:
Peter Saint-Andre 2007-05-12 01:52:28 +00:00
parent d371dd9652
commit 86677952d6

View File

@ -22,6 +22,12 @@
<supersededby/> <supersededby/>
<shortname>N/A</shortname> <shortname>N/A</shortname>
&stpeter; &stpeter;
<revision>
<version>0.2</version>
<date>2007-05-11</date>
<initials>psa</initials>
<remark><p>Specified use of port 17777 as default.</p></remark>
</revision>
<revision> <revision>
<version>0.1</version> <version>0.1</version>
<date>2007-04-10</date> <date>2007-04-10</date>
@ -44,12 +50,12 @@
<section1 topic='Introduction' anchor='intro'> <section1 topic='Introduction' anchor='intro'>
<p>&xep0166; defines a framework for negotiating and managing out-of-band data exchange sessions over XMPP. Unfortunately, most developers of XMPP clients have limited experience with multimedia applications such as voice and video, making it difficult to get started with implementation of Jingle technologies. Therefore this document provides a simple transport and session type that client developers can use to bootstrap Jingle implementations.</p> <p>&xep0166; defines a framework for negotiating and managing out-of-band data exchange sessions over XMPP. Unfortunately, most developers of XMPP clients have limited experience with multimedia applications such as voice and video, making it difficult to get started with implementation of Jingle technologies. Therefore this document provides a simple transport and session type that client developers can use to bootstrap Jingle implementations.</p>
<p><em>Note: The methods specified herein are provided for experimental use only and are not intended for inclusion in released software or production environments.</em></p> <p><em>Note: The methods specified herein are provided for experimentation and unit testing only and are not intended for inclusion in released software or production environments.</em></p>
</section1> </section1>
<section1 topic='Protocol Flow' anchor='protocol'> <section1 topic='Protocol Flow' anchor='protocol'>
<p>The intent of this simple Jingle profile is to enable exchange of data using the Echo Protocol specified in &rfc0862;. The protocol flow is as follows. (The following examples use &xep0177; as the transport protocol; although it is possible to complete echo protocol exchanges via TCP, that is deemed less useful and there is no Jingle transport for direct TCP exchanges.)</p> <p>The intent of this simple Jingle profile is to enable exchange of data using the Echo Protocol specified in &rfc0862;, but using a port other than 7 -- the default port for this usage is 17777. The protocol flow is as follows. (The following examples use &xep0177; as the transport protocol; although it is possible to complete echo protocol exchanges via TCP, that is deemed less useful and there is no Jingle transport for direct TCP exchanges.)</p>
<example caption='Initiation'><![CDATA[ <example caption='Initiatior Creates Session'><![CDATA[
<iq from='romeo@montague.net/orchard' to='juliet@capulet.com/balcony' id='jingle1' type='set'> <iq from='romeo@montague.net/orchard' to='juliet@capulet.com/balcony' id='jingle1' type='set'>
<jingle xmlns='http://www.xmpp.org/extensions/xep-0166.html#ns' <jingle xmlns='http://www.xmpp.org/extensions/xep-0166.html#ns'
action='session-initiate' action='session-initiate'
@ -58,30 +64,23 @@
<content creator='initiator' name='echo-this'> <content creator='initiator' name='echo-this'>
<description xmlns='http://www.xmpp.org/extensions/xep-0208.html#ns'/> <description xmlns='http://www.xmpp.org/extensions/xep-0208.html#ns'/>
<transport xmlns='http://www.xmpp.org/extensions/xep-0177.html#ns'> <transport xmlns='http://www.xmpp.org/extensions/xep-0177.html#ns'>
<candidate ip='10.1.1.104' port='13540' generation='0'/> <candidate ip='10.1.1.104' port='17777' generation='0'/>
</transport> </transport>
</content> </content>
</jingle> </jingle>
</iq> </iq>
]]></example> ]]></example>
<p>Note: The standard port for the echo protocol is 7. However, since access to that port may be restricted, any other port MAY be negotiated.</p> <p>Note: The port SHOULD be 17777.</p>
<example caption='Receiver Provisionally Accepts the Session Request'><![CDATA[ <example caption='Receiver Provisionally Accepts the Session Request'><![CDATA[
<iq from='juliet@capulet.com/balcony' to='romeo@montague.net/orchard' type='result' id='jingle1'/> <iq from='juliet@capulet.com/balcony' to='romeo@montague.net/orchard' type='result' id='jingle1'/>
]]></example> ]]></example>
<p>If no negotiation is required (e.g., to modify the port number or transport protocol), the receiver simply accepts the session request.</p> <p>If no negotiation is required (e.g., to modify the port number or transport protocol), the receiver simply accepts the session request. (Alternatively, if the receiver wants to use a port other 17777, it SHOULD negotiate the port using a Jingle content-add action; see <cite>XEP-0166</cite> for details and examples.)</p>
<example caption='Receiver Definitively Accepts the Session Request'><![CDATA[ <example caption='Receiver Definitively Accepts the Session Request'><![CDATA[
<iq from='juliet@capulet.com/balcony' to='romeo@montague.net/orchard' id='jingle2' type='set'> <iq from='juliet@capulet.com/balcony' to='romeo@montague.net/orchard' id='jingle2' type='set'>
<jingle xmlns='http://www.xmpp.org/extensions/xep-0166.html#ns' <jingle xmlns='http://www.xmpp.org/extensions/xep-0166.html#ns'
action='session-accept' action='session-accept'
initiator='romeo@montague.net/orchard' initiator='romeo@montague.net/orchard'
sid='a73sjjvkla37jfea'> sid='a73sjjvkla37jfea'/>
<content creator='initiator' name='echo-this'>
<description xmlns='http://www.xmpp.org/extensions/xep-0208.html#ns'/>
<transport xmlns='http://www.xmpp.org/extensions/xep-0177.html#ns'>
<candidate ip='10.1.1.104' port='13540' generation='0'/>
</transport>
</content>
</jingle>
</iq> </iq>
]]></example> ]]></example>
<example caption='Initiating Entity Acknowledges Definitive Acceptance'><![CDATA[ <example caption='Initiating Entity Acknowledges Definitive Acceptance'><![CDATA[
@ -93,7 +92,7 @@
<section1 topic='Security Considerations' anchor='security'> <section1 topic='Security Considerations' anchor='security'>
<p>As noted, the methods specified herein are provided for experimental use only and are not intended for inclusion in released software or production environments.</p> <p>As noted, the methods specified herein are provided for experimental use only and are not intended for inclusion in released software or production environments.</p>
<p>On some operating systems, access to the root or administrative user may be necessary in order to use the echo protocol over TCP or UDP port 7. Therefore it is recommended to negotiate use of the echo protocol on a different port if necessary.</p> <p>On some operating systems, access to the root or administrative user may be necessary in order to use the echo protocol over TCP or UDP port 7; therefore it is RECOMMENDED to use port 17777 instead.</p>
</section1> </section1>
<section1 topic='IANA Considerations' anchor='iana'> <section1 topic='IANA Considerations' anchor='iana'>