[asterisk-dev] possibly dumb IAX question

Tim Panton tim at mexuar.com
Tue Apr 3 06:16:01 MST 2007

On 3 Apr 2007, at 00:35, Ast Exp wrote:

> On 4/2/07, Tim Panton <tim at mexuar.com> wrote:
>> On 2 Apr 2007, at 06:40, Ast Exp wrote:
>> > I have what may be a dumb IAX (and possibly SIP) question here,  
>> but I
>> > wanted a clear answer
>> >
>> >
>> > What would happen if Asterisk received a SIP connection with two  
>> media
>> > streams, and that needed to be connected to an IAX (or to a lesser
>> > extent a SIP) client registered with Asterisk? The case I am  
>> thinking
>> > of is the first media stream being either voice or video (h. 
>> 264), and
>> > the second stream being some unidentified binary protocol used  
>> to send
>> > mechanism control data to a remote control device.
>> >
>> > It wasn't clear to me how the IAX protocol handles two concurrent
>> > media streams to the same endpoint.
>> If you mean 2 streams within the same Call...
>> It doesn't. IAX assumes that the media stream contains the
>> necessary data multiplexed into one stream at the codec level.
>> However if you want to send 'mechanism control data' there are a
>> number of messages that might be appropriate depending on the
>> nature of the data.
>> There was a discussion a while back about how best to extend IAX
>> to carry arbitrary call related status and command data, the  
>> conclusion
>> of which was that for the moment you either have to wrap it up in  
>> ascii
>> and send it in a Text frame or extend the protocol with a new message
>> type
>> to cover it.
>> Tim.
> So if I understand you correctly, if an inbound SIP call tries to
> negotiate an alternate and separate secondary media stream, IAX will
> not be aware of the secondary media stream because it is not
> monolithically multiplexed? Does this mean Asterisk will simply drop
> the secondary media stream, or will the call fail?

I don't know. I've never tried it. All I am saying is that I can't see a
way that IAX as it is currently specified could cope with multiple media
streams in a single call, there is no way to distinguish which miniframe
belongs to which stream. (I suppose you could send full-frames with
an IE that indicates the stream...., or alternatively send multiple  
and send a marker that said that they were related.)


More information about the asterisk-dev mailing list