[Standards-JIG] FW: Jingle - P2P and PBX calls

Steve Kann stevek at stevek.com
Tue Jan 3 17:42:56 UTC 2006


It seems to me that it might make some sense to take stock a bit, and 
perhaps this will also help others who are reading this, by defining 
some of the terms/protocols for people:

1) SIP: SIP is a telephony signaling protocol. SIP uses SIP to describe 
and negotiate media, and RTP to transport media.
2) IAX2: IAX is a telephony protocol which includes both signaling and 
media in a single packet stream; it does not use RTP or SDP, although 
the media payload format is roughly compatible with RTP.
3) Jingle Signaling: A p2p signaling protocol in XMPP
4) Jingle Audio: A sub-type of Jingle signaling designed for negotiating 
audio calls.

Maybe looking at the stack like this:

Initiation? N/A N/A XMPP
Signalling SIP IAX Jingle/Jingle-audio/XMPP
Negotiation SIP/SDP IAX Jingle-audio/SDP
Media Transport RTP IAX RTP

It would seem to me that we can (or, indeed, people may be presently) 
defining an analog to jingle-audio which
can be used to negotiate and initiate an IAX call. This would allow 
people to use the somewhat simpler IAX protocol for audio/media instead 
of a more heavyweight RTP stack. We could call this Jingle-IAX or 
something like that.

As a separate topic, to have "pbx features" in a jingle world, it would 
seem that you might just set up your PBX to be a "bot" in your IM 
network. (This might be what Hal is referring to as gateways below; it 
might already be defined -- I don't claim to have spent more than a few 
minutes reading the specs). You might call this bot "pbx at yourorg.org", 
for example, or "voicemail at jabber.org". Then, you could call 
"voicemail at jabber.org" with jingle to get your voicemail.

One question you addressed below was DTMF support: Firstly, you're not 
strictly correct about IAX: In IAX, there is only one proper way to 
transport DTMF, and that is as DTMF IAX frames: It is not proper to send 
them in-band as audio tones. With SIP/RTP, there's several different 
methods in use; I don't think jingle-audio defines a signaling path for 
DTMF; that might be something useful.

I'm not sure about other "pbx features" you're talking about though: For 
instance, if you're romeo, and you're trying to make a jingle call to 
Juliet, and Juliet isn't online, maybe you'd like to send Juliet 
voicemail instead? How would such a thing be handled with a Jingle 
system? Maybe instead of talking to juliet at jabber.org, people might talk 
to "pbx at jabber.org" instead, and ask _it_ to call Juliet; 
"pbx at jabber.org" might actually be smart enough to know that Juliet 
isn't in front of her Amiga at the time (did you know Juliet was an 
Amiga user?), but Juliet did leave call-forwarding on, and will gladly 
forward your call to her cell-phone.


Simon Guindon wrote:

>Ok thanks for the clarification. I think I am understanding much better
>So here are my questions then. Since a Jingle Audio client can gateway
>to SIP or IAX. What is the best route to add PBX capabilities or is this
>the right spot to do so.
>As far as I understand Jingle Audio is RTP. So how does one do things
>such as call forwarding, voicemail etc
>I don't know SIP very well but IAX can do all these things when logged
>into an Asterisk box. This means the IAX client must authenticate with
>Does this mean a Jingle Audio -> IAX gateway needs to exist. And that
>this such gateway needs to support iq:register (off the top of my head,
>might be wrong) so clients can enter their IAX login information?
>If so, can we send tones? IAX I believe uses tones to handle navigating
>voicemail etc.
>The alternative is making IAX a session type and the jabber client
>itself supporting IAX thus being able to do this all itself. This has
>been my route so far in my developments as I began before I was aware of
>I have an asterisk.server.com component which supports custom IQ queries
>for certain things such as extension lookups, finding out what MY
>extension is, etc. I would like to discuss making these things more
>standard so all clients can benefit.
>I think such things will make Jabber and SIP/IAX/Asterisk/others a very
>strong distributed VOIP network.
>Thanks and take care,
>Simon Guindon
>Tomahawk Technologies Inc.
>simon.guindon at tomahawk.ca
>-----Original Message-----
>From: standards-jig-bounces at jabber.org
>[mailto:standards-jig-bounces at jabber.org] On Behalf Of Hal Rottenberg
>Sent: Tuesday, December 27, 2005 9:53 PM
>To: Jabber protocol discussion list
>Subject: Re: [Standards-JIG] FW: Jingle - P2P and PBX calls
>On 12/27/05, Simon <simon at nureality.ca> wrote:
>>Is this correct? So Jingle is now flexible so the client can support
>>different formats either through gateways or through actual client
>>supporting that session type?
>Yup.  Jingle *signalling* may support different formats.  But I
>wouldn't necessarily lump gateways in the same sentence there. 
>Gateways will appear to a Jingle endpoint as a Jingle-supported
>format.  i.e.just like when I use an AIM transport to send a message
>to an AIM user, I don't have to use the AIM program or protocol, and I
>don't even have to know what AIM is.  If I'm Jingle Audio and call
>through a gateway to a SIP endpoint, does my client know how to talk
>SIP?  The answer to that would be no.
>That being said, I can't wait for the first open source SIP<->Jingle
>gateway.  :)
>Psi webmaster (http://psi-im.org)
>im:hal at jabber.rocks.cc

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.jabber.org/pipermail/standards/attachments/20060103/947112be/attachment.html>

More information about the Standards mailing list