[Standards] LAST CALL: XEP-0166 (Jingle)

Peter Saint-Andre stpeter at stpeter.im
Tue Dec 16 20:20:08 UTC 2008


Dirk Meyer wrote:
> XMPP Extensions Editor wrote:
>> Please consider the following questions during this Last Call and send
>> your feedback to the standards at xmpp.org discussion list:
> 
> Ok, here are some comments

Thanks.

<snip/>

>> 5. Is the specification accurate and clearly written?
> 
> That may be a problem. When I first look at a XEP I read what problem it
> solves and take a quick look at the examples. Jingle is very complicated
> when looking at the examples, but the complicated stuff is part of the
> application using Jingle. Example 15:
> 
> | <iq from='juliet at capulet.com/balcony'
> |     id='accept1'
> |     to='romeo at montague.net/orchard'
> |     type='set'>
> |   <jingle xmlns='urn:xmpp:jingle:0'
> |           action='session-accept'
> |           initiator='romeo at montague.net/orchard'
> |           responder='juliet at capulet.com/balcony'
> |           sid='a73sjjvkla37jfea'>
> |     <content creator='initiator' name='voice'>
> |       <description xmlns='urn:xmpp:jingle:apps:rtp:0' media='audio'>
> |         <payload-type id='97' name='speex' clockrate='8000'/>
> |         <payload-type id='18' name='G729'/>
> |       </description>
> |       <transport xmlns='urn:xmpp:jingle:transports:ice-udp:0'>
> |         <candidate component='1'
> |                    foundation='1'
> |                    generation='0'
> |                    ip='192.0.2.3'
> |                    network='1'
> |                    port='45664'
> |                    priority='1678246398'
> |                    protocol='udp'
> |                    pwd='asd88fgpdd777uzjYhagZg'
> |                    type='srflx'
> |                    ufrag='8hhy'/>
> |       </transport>
> |     </content>
> |   </jingle>
> | </iq>
> 
> Wow, that is a long stanza. But if we look at it closly, description is
> part of RTP over Jingle and transport is from ICE. So the real work
> Jingle does is
> 
> | <iq from='juliet at capulet.com/balcony'
> |     id='accept1'
> |     to='romeo at montague.net/orchard'
> |     type='set'>
> |   <jingle xmlns='urn:xmpp:jingle:0'
> |           action='session-accept'
> |           initiator='romeo at montague.net/orchard'
> |           responder='juliet at capulet.com/balcony'
> |           sid='a73sjjvkla37jfea'>
> |     <content creator='initiator' name='voice'>
> |       <application specific code/>
> |       <transport xmlns='urn:xmpp:jingle:transports:ice-udp:0'>
> |         <transport specific code/>
> |       </transport>
> |     </content>
> |   </jingle>
> | </iq>
> 
> That example is easier to read, it is focused on what we need for
> Jingle: the attributes in <jingle>. I know we should use real-life
> examples, but maybe use some from file transfer over Jingle as a simpler
> example. Or maybe add color-codes (I know we do not do that ATM): make
> the application and transport specific stuff gray so anyone can find
> what XEP-0166 is doing.

At one point we had file transfer examples in XEP-0166, but they were
confusing to people because folks think of Jingle as a technology for
voice/talk. So I changed the examples back to VoIP. You can't please
everyone. :)

Maybe it would help to have some pseudo-examples showing only the
session management bits (from XEP-0166). I'll see if I can work those in.

/psa




More information about the Standards mailing list