Asterisk SIP media path

Asterisk SIP media path


In a normal SIP proxy, the server is not involved in the media between the phones. With Asterisk, sometimes Asterisk stays in the path. It depends on many variables and configurations.

Asterisk mostly sets up the SIP phone call with itself in the media path. When the phone call is connected, Asterisk normally sends SIP reinvites to both clients to redirect the media path so that Asterisk does not have to handle the media stream any more.

If the phones do not support reinvite

Some clients do not support re-invites. If this is the case, you have to configure asterisk NOT to re-invite.
See Asterisk sip canreinvite for more information.

If the phones support reinvites

Asterisk will bridge a call in some cases and not in others. If codec conversion is required between phones, its stays in the middle. If the two phones can agree upon a common codec, etc, * is not in the middle from a pure communications perpective. In that particular case, what the phone does when the # key is press is totally a function of how the phone was programmed (and not asterisk). If the phone, as an example only, has an implementation bug that says I'm not going to forward the # key to asterisk during a conversation, obviously * can't interpret it.

If the Dial() statement forces the path thru Asterisk

Certain options to the Dial() statement require that Asterisk is in the media path, and consequently Asterisk will not let go of it: t, ''T", "h", "H", "w", "W" or "L" (with multiple arguments). Probably there are more.

If the call is routed through a queue

When directing calls through a queue to an extension, asterisk will stay in the media stream if the extension is included in the queue in the usual "0123" format. Using "SIP/0123" will allow a direct RTP media connection to be established between SIP devices.


See also



Go back to Asterisk

Asterisk SIP media path


In a normal SIP proxy, the server is not involved in the media between the phones. With Asterisk, sometimes Asterisk stays in the path. It depends on many variables and configurations.

Asterisk mostly sets up the SIP phone call with itself in the media path. When the phone call is connected, Asterisk normally sends SIP reinvites to both clients to redirect the media path so that Asterisk does not have to handle the media stream any more.

If the phones do not support reinvite

Some clients do not support re-invites. If this is the case, you have to configure asterisk NOT to re-invite.
See Asterisk sip canreinvite for more information.

If the phones support reinvites

Asterisk will bridge a call in some cases and not in others. If codec conversion is required between phones, its stays in the middle. If the two phones can agree upon a common codec, etc, * is not in the middle from a pure communications perpective. In that particular case, what the phone does when the # key is press is totally a function of how the phone was programmed (and not asterisk). If the phone, as an example only, has an implementation bug that says I'm not going to forward the # key to asterisk during a conversation, obviously * can't interpret it.

If the Dial() statement forces the path thru Asterisk

Certain options to the Dial() statement require that Asterisk is in the media path, and consequently Asterisk will not let go of it: t, ''T", "h", "H", "w", "W" or "L" (with multiple arguments). Probably there are more.

If the call is routed through a queue

When directing calls through a queue to an extension, asterisk will stay in the media stream if the extension is included in the queue in the usual "0123" format. Using "SIP/0123" will allow a direct RTP media connection to be established between SIP devices.


See also



Go back to Asterisk

Created by: oej, Last modification: Wed 05 of Aug, 2015 (16:48 UTC) by eliyak
Please update this page with new information, just login and click on the "Edit" or "Discussion" tab. Get a free login here: Register Thanks! - Find us on Google+