[jdev] using XMPP for discovery of SIP addresses

Julien PUYDT julien.puydt at laposte.net
Sat Jun 11 07:30:46 CDT 2005


Anthony Baxter a écrit :

> I'm the author of a package called Shtoom, a VoIP software suite
> written in Python (using Twisted). I'm thinking about adding Jabber
> support to Shtoom for the purposes of discovering someone else's 
> SIP address (thus avoiding the need for a SIP registration server,
> plus people can use their existing Jabber accounts rather than having
> to create a new identity). I'm at something of a loss as to how to
> do this - should Shtoom publish the SIP address, or should it instead
> ask another XMPP client "I want to make a SIP call", and it can then
> decide to send back the SIP address. I've not been able to find existing
> work in this area - TINS looks interesting, but it's not really what 
> I'm looking for right now.

I already wrote to discuss it some time ago ; the proposed solution was 
the following:
1) use disco to know the other end does VoIP ;

2) discuss which VoIP protocol to use with the remote end like this:
ASK:
<iq type='get'
     from='boojum at localhost/JabberHelper'
     to='snark at localhost/Babili'
     id='neg1'>
   <feature xmlns='http://jabber.org/protocol/feature-neg'>
     <x xmlns='jabber:x:data' type='form'>
       <field type='list-single' var='http://jabber.org/protocol/voip'>
          <option><value>h323</value></option>
          <option><value>sip</value></option>
          <option><value>callto</value></option>
       </field>
     </x>
   </feature>
</iq>
ANSWER:
<iq type='result'
     from='boojum at localhost/JabberHelper'
     to='snark at localhost/Babili'
     id='msg_2'>
   <feature xmlns='http://jabber.org/protocol/feature-neg'>
     <x type='submit' xmlns='jabber:x:data'>
       <field var='http://jabber.org/protocol/voip'>
         <value>h323</value>
       </field>
     </x>
   </feature>
</iq>

3) Setup a call in the now known protocol:
ASK:
<iq type='set'
     from='boojum at localhost/JabberHelper'
     to='snark at localhost/Babili'
     id='neg1'>
   <query xmlns='jabber:iq:oob'>
     <url>h323:h323.voxgratia.org</url>
     <desc>VoIP call</desc>
   </query>
</iq>
REPLY:
<iq type='result' to='boojum at localhost/JabberHelper' id='neg1' 
from='snark at localhost/Babili'/>

Notice that "http://jabber.org/protocol/voip" isn't valid yet, since I 
didn't write to the registrar about it yet -- now that gossip seems to 
go forth again, I'll certainly be more interested in doing so.

Snark on #gnomemeeting



More information about the JDev mailing list