[OpenSIPS-Users] when engage_media_proxy() doesn't
Mike O'Connor
mike at oeg.com.au
Mon Mar 28 10:51:22 CEST 2011
Hi Jeff, Dan
My problem is the same but different, opensips 1.6.1
engage_media_proxy() works perfectly. Any version above that it does
not. Nothing in the logs even with full debug turned on.
Dan asked me to do a number of tests but I can not do them as the system
is in full production do a number of thousand calls an hour.
Mike
On 24/03/11 12:58 AM, Jeff Pyle wrote:
> Ok, Dan. Great info. All Opensips and Mediaproxy packages were installed
> from their respective apt repositories. The opportunity for code
> modification is minimal. Regardless I'll run it through some test
> scenarios to see if I can make it fail along the lines of how you would
> expect it to.
>
>
> - Jeff
>
>
> On 3/23/11 9:09 AM, "Dan Pascu" <dan at ag-projects.com> wrote:
>
>> On 17 Mar 2011, at 18:17, Jeff Pyle wrote:
>>
>>> Dan, I understand what you're saying. engage_media_proxy() needs to
>>> create the dialog so it can get its bit in to facilitate the media
>>> relaying.
>>>
>>> In my case, on my functional machine, the routing logic is like this:
>>>
>>> if (is_method("INVITE")) {
>>> send_reply("100", "Trying");
>>>
>>> record_route();
>>> setflag(21); # non-missed calls
>>> setflag(22); # missed calls
>>>
>>> create_dialog();
>>> if (isflagset(24)) set_dlg_flag("24");
>>> if (isflagset(6)) {
>>> engage_media_proxy();
>>> }
>>> route(1);
>>> }
>>>
>>> As you can see it has a create_dialog() before the engage_media_proxy().
>>> And it seems to work okay. Any thoughts on why that might be?
>> I don't know why this works. I can only assume it's either the dialog
>> gets crated later, not when you call create_dialog(), or that someone
>> modified the code in the late versions to allow late comers to a dialog
>> (like engage_media_proxy) to be able to register their callbacks even
>> when the dialog was already started.
>> But then again, I can't tell why it works on a system but not another.
>>
>>> Regarding the manual functions, does one need to use end_media_session()
>>> in loose_route to handle a reinvite scenario like T.38? Or is the old
>>> media session some how automatically torn down in this case?
>> No, it's not automatically ended and you do not need to manually end it
>> either. For each SDP offer/answer you need to call use_media_proxy() to
>> update the list of streams.
>>
>>> Does one
>>> need to end_media_session() in onreply_route in the case of CANCEL/BYE?
>> No. You only need to call end_media_session() on CANCEL and BYE, not
>> their replies.
>>
>> --
>> Dan
>>
>>
>>
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
More information about the Users
mailing list