mirror of
https://github.com/moparisthebest/xeps
synced 2025-03-11 06:50:01 -04:00
0.4
git-svn-id: file:///home/ksmith/gitmigration/svn/xmpp/trunk@4158 4b5297f7-1745-476d-ba37-a9c6900126ab
This commit is contained in:
parent
6e84ba5b65
commit
df83f66e69
40
xep-0261.xml
40
xep-0261.xml
@ -22,6 +22,12 @@
|
|||||||
<shortname>jingle-ibb</shortname>
|
<shortname>jingle-ibb</shortname>
|
||||||
<discuss>jingle</discuss>
|
<discuss>jingle</discuss>
|
||||||
&stpeter;
|
&stpeter;
|
||||||
|
<revision>
|
||||||
|
<version>0.4</version>
|
||||||
|
<date>2010-04-13</date>
|
||||||
|
<initials>psa</initials>
|
||||||
|
<remark><p>Added roundtrip for exchange of IBB <open/> element to provide proper layering between Jingle and IBB; defined how to close a single session within the bytestream; defined how to close the bytestream itself.</p></remark>
|
||||||
|
</revision>
|
||||||
<revision>
|
<revision>
|
||||||
<version>0.3</version>
|
<version>0.3</version>
|
||||||
<date>2010-02-16</date>
|
<date>2010-02-16</date>
|
||||||
@ -73,6 +79,10 @@ Initiator Responder
|
|||||||
|<---------------------------|
|
|<---------------------------|
|
||||||
| ack |
|
| ack |
|
||||||
|--------------------------->|
|
|--------------------------->|
|
||||||
|
| IBB <open/> |
|
||||||
|
|--------------------------->|
|
||||||
|
| ack |
|
||||||
|
|<---------------------------|
|
||||||
| IBB "SESSION" |
|
| IBB "SESSION" |
|
||||||
|<==========================>|
|
|<==========================>|
|
||||||
| session-terminate |
|
| session-terminate |
|
||||||
@ -135,7 +145,26 @@ Initiator Responder
|
|||||||
to='juliet@capulet.lit/balcony'
|
to='juliet@capulet.lit/balcony'
|
||||||
type='result'/>
|
type='result'/>
|
||||||
]]></example>
|
]]></example>
|
||||||
<p>The foregoing Jingle negotiation replaces the <open/> element from <cite>XEP-0047</cite>. Therefore the initiator can now immediately begin sending IBB packets using an IQ-set for each chunk as described in XEP-0047, where the responder will acknowledge each IQ-set in accordance with &rfc3920;.</p>
|
<p>In essence, the foregoing Jingle negotiation replaces the <open/> element from <cite>XEP-0047</cite>. However, to provide consistent layering of Jingle on top of IBB (thus enabling separation of existing IBB code from new Jingle code), the initiator now MUST also send the <open/> element, with the same 'block-size' and 'sid' values as for the Jingle <transport/> element. This adds a roundtrip to the negotiation and could be considered a "no-op", but the extra roundtrip is inconsequential given that the parties are exchanging base64-encoded data in-band.</p>
|
||||||
|
<example caption='Initiator sends IBB <open/>'><![CDATA[
|
||||||
|
<iq from='romeo@montague.net/orchard'
|
||||||
|
id='jn3h8g65'
|
||||||
|
to='juliet@capulet.com/balcony'
|
||||||
|
type='set'>
|
||||||
|
<open xmlns='http://jabber.org/protocol/ibb'
|
||||||
|
block-size='4096'
|
||||||
|
sid='ch3d9s71'
|
||||||
|
stanza='iq'/>
|
||||||
|
</iq>
|
||||||
|
]]></example>
|
||||||
|
<p>The responder returns an IQ-result to the initiator.</p>
|
||||||
|
<example caption='Responder accepts IBB <open/>'><![CDATA[
|
||||||
|
<iq from='juliet@capulet.com/balcony'
|
||||||
|
id='jn3h8g65'
|
||||||
|
to='romeo@montague.net/orchard'
|
||||||
|
type='result'/>
|
||||||
|
]]></example>
|
||||||
|
<p>Now the initiator can begin sending IBB packets using an IQ-set for each chunk as described in XEP-0047, where the responder will acknowledge each IQ-set in accordance with &rfc3920;.</p>
|
||||||
<example caption='An IBB packet'><![CDATA[
|
<example caption='An IBB packet'><![CDATA[
|
||||||
<iq from='romeo@montague.net/orchard'
|
<iq from='romeo@montague.net/orchard'
|
||||||
id='ls72b58f'
|
id='ls72b58f'
|
||||||
@ -201,6 +230,11 @@ Initiator Responder
|
|||||||
<p>Here the Jingle Session ID is the same ("a73sjjvkla37jfea") but the new IBB Session ID ("bt8a71h6") is different from the old IBB Session ID that is already in use ("ch3d9s71").</p>
|
<p>Here the Jingle Session ID is the same ("a73sjjvkla37jfea") but the new IBB Session ID ("bt8a71h6") is different from the old IBB Session ID that is already in use ("ch3d9s71").</p>
|
||||||
</section1>
|
</section1>
|
||||||
|
|
||||||
|
<section1 topic='Closing a Session or Bytestream' anchor='close'>
|
||||||
|
<p>To close one session within a bytestream, the initiator sends an IBB <close/> element as specified in <cite>XEP-0047</cite>.</p>
|
||||||
|
<p>To close the bytestream itself, the initiator terminates the Jingle session as specified in <cite>XEP-0166</cite>.</p>
|
||||||
|
</section1>
|
||||||
|
|
||||||
<section1 topic='Processing Rules and Usage Guidelines' anchor='rules'>
|
<section1 topic='Processing Rules and Usage Guidelines' anchor='rules'>
|
||||||
<p>The same processing rules and usage guidelines defined in XEP-0047 apply to the Jingle IBB Transport Method.</p>
|
<p>The same processing rules and usage guidelines defined in XEP-0047 apply to the Jingle IBB Transport Method.</p>
|
||||||
</section1>
|
</section1>
|
||||||
@ -305,4 +339,8 @@ Initiator Responder
|
|||||||
]]></code>
|
]]></code>
|
||||||
</section1>
|
</section1>
|
||||||
|
|
||||||
|
<section1 topic='Acknowledgements' anchor='ack'>
|
||||||
|
<p>Thanks to Paul Aurich, Fabio Forno, and Marcus Lundblad for their feedback.</p>
|
||||||
|
</section1>
|
||||||
|
|
||||||
</xep>
|
</xep>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user