[OpenSIPS-Users] Opensips drouting probing

Bogdan-Andrei Iancu bogdan at opensips.org
Tue Apr 4 07:14:34 EDT 2017


Hi Denis,

Again, as drouting is not doing any signalling action, it CANNOT 
block/freeze your OpenSIPS.

Use script_trace() function to see how your INVITE is handled :
http://www.opensips.org/Documentation/Script-CoreFunctions-2-2#toc43

Regards,

Bogdan-Andrei Iancu
   OpenSIPS Founder and Developer
   http://www.opensips-solutions.com

OpenSIPS Summit May 2017 Amsterdam
   http://www.opensips.org/events/Summit-2017Amsterdam.html

On 03/28/2017 04:46 PM, Denis via Users wrote:
> In additional,
> a part of the opensips.cfg
> xlog ("Prepare routing");
> if (!do_routing("$avp(5)","W",,"$avp(300)","$avp(3)",)) {
>          send_reply("404", "Not found");
>           exit;
> }
> a part of the log
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: Prepare routing
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:drouting:do_routing_1: 
> using weights in GW selection
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:drouting:do_routing: 
> using dr group 2, rule_idx 0, username 88123364021
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: 
> DBG:drouting:internal_check_rt: found rgid 2 (rule list 0x7f77f0f63188)
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: 
> DBG:dialplan:dp_translate_f: dpid is 20004 partition is default
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: 
> DBG:dialplan:dp_get_svalue: searching 15
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: 
> DBG:dialplan:dp_translate_f: input is 88123364021
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: 
> DBG:dialplan:dp_translate_f: Checking with dpid 20004
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:dialplan:translate: 
> Regex operator testing. Got result: -1
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:dialplan:translate: No 
> matching rule for input 88123364021
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: 
> DBG:dialplan:dp_translate_f: could not translate 88123364021 with dpid 
> 20004
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: INFO:drouting:do_routing: 
> All the gateways are disabled
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:dialog:next_state_dlg: 
> unref dlg 0x7f77f3c8bc70 with 1 -> 2 in entry 0x7f77ef003548
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:core:evi_param_set: 
> adding string param
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:core:evi_param_set: 
> adding string param
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:core:evi_param_set: 
> adding int param
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:core:evi_param_set: 
> adding int param
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:core:destroy_avp_list: 
> destroying list (nil)
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:dialog:next_state_dlg: 
> dialog 0x7f77f3c8bc70 changed from state 1 to state 5, due event 1
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:dialog:dlg_onreply: 
> dialog 0x7f77f3c8bc70 failed (negative reply)
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:dialog:unref_dlg: 
> unref dlg 0x7f77f3c8bc70 with 1 -> 1 in entry 0x7f77ef003548
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:dialog:unref_dlg: 
> unref dlg 0x7f77f3c8bc70 with 1 -> 0 in entry 0x7f77ef003548
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:dialog:unref_dlg: ref 
> <=0 for dialog 0x7f77f3c8bc70
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:dialog:destroy_dlg: 
> destroying dialog 0x7f77f3c8bc70
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:dialog:destroy_dlg: 
> dlg expired or not in list - dlg 0x7f77f3c8bc70 [1301:1538288757] with 
> clid '84253MzdiNGJmNzcwYjI1OTE2NmE2ZDUyNGJmZWJiYWQ3NTM' and tags 
> '2c479443' 'NULL'
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:core:destroy_avp_list: 
> destroying list 0x7f77f3c8ed08
> Mar 28 09:38:28 ubuntu-amd64 
> /usr/local/opensips2.2/sbin/opensips[7170]: DBG:core:receive_msg: 
> cleaning up
> -- 
> С уважением, Денис.
> Best regards, Denis
> 28.03.2017, 13:00, "Denis" <denis7979 at mail.ru>:
>> Hello, Bogdan!
>> Is there any idea about problem?
>> Thank you.
>> -- 
>> С уважением, Денис.
>> Best regards, Denis
>> 24.03.2017, 07:52, "Denis" <denis7979 at mail.ru 
>> <mailto:denis7979 at mail.ru>>:
>>> Hello!
>>> It does not work.
>>> Opensips "freezes" a call.
>>> In syslog i see "INFO:drouting:do_routing: All the gateways are 
>>> disabled"
>>> -- 
>>> С уважением, Денис.
>>> Best regards, Denis
>>> 23.03.2017, 18:42, "Bogdan-Andrei Iancu" <bogdan at opensips.org 
>>> <mailto:bogdan at opensips.org>>:
>>>> Hi,
>>>>
>>>> You should do :
>>>>     if (!do_routing(.......) ) {
>>>>         send_reply("404","No Route");
>>>>         exit;
>>>>     }
>>>>
>>>> Regards,
>>>> Bogdan-Andrei Iancu
>>>>    OpenSIPS Founder and Developer
>>>>    http://www.opensips-solutions.com <http://www.opensips-solutions.com/>
>>>>
>>>> OpenSIPS Summit May 2017 Amsterdam
>>>>    http://www.opensips.org/events/Summit-2017Amsterdam.html
>>>> On 03/23/2017 04:21 PM, Denis wrote:
>>>>> Hello, Bogdan!
>>>>> "test the return code for do_routing()".
>>>>> How can i do that?
>>>>> I tried
>>>>> if (!do_routing("$avp(5)","W",,"$avp(300)","$avp(3)",)) {
>>>>>   xlog ("Route4: Reason = $rc");
>>>>> }
>>>>> but can see in log only "INFO:drouting:do_routing: All the 
>>>>> gateways are disabled".
>>>>> Thank you.
>>>>> -- 
>>>>> С уважением, Денис.
>>>>> Best regards, Denis
>>>>> 20.03.2017, 17:20, "Bogdan-Andrei Iancu" <bogdan at opensips.org> 
>>>>> <mailto:bogdan at opensips.org>:
>>>>>> Failure route does not help you if your routing does not start at 
>>>>>> all - if do_routing() returns negative. Again, in request route, 
>>>>>> test the return code for do_routing() - it will return a negative 
>>>>>> code if no destination is available for routing.
>>>>>>
>>>>>> Regards,
>>>>>> Bogdan-Andrei Iancu
>>>>>>    OpenSIPS Founder and Developer
>>>>>>    http://www.opensips-solutions.com 
>>>>>> <http://www.opensips-solutions.com/>
>>>>>>
>>>>>> OpenSIPS Summit May 2017 Amsterdam
>>>>>>    http://www.opensips.org/events/Summit-2017Amsterdam.html
>>>>>> On 03/20/2017 02:28 PM, Denis wrote:
>>>>>>> Hello, Bogdan!
>>>>>>> Yes, i know about that.
>>>>>>> In failure_route i have
>>>>>>> if (($DLG_status == 1) && t_check_status("408"))
>>>>>>> action. And it works if i have multiple direction (using 
>>>>>>> alternative mode) for the prefix.
>>>>>>> But when i use only one direction for the prefix i have the 
>>>>>>> problem described below.
>>>>>>> Thank you.
>>>>>>> -- 
>>>>>>> С уважением, Денис.
>>>>>>> Best regards, Denis
>>>>>>> 20.03.2017, 15:24, "Bogdan-Andrei Iancu" <bogdan at opensips.org> 
>>>>>>> <mailto:bogdan at opensips.org>:
>>>>>>>> Hi Denis,
>>>>>>>>
>>>>>>>> I suspect a scripting error on your side. If all the 
>>>>>>>> destinations are disabled, the do_routing() returns a negative 
>>>>>>>> code into the script - you need to handle this case and send 
>>>>>>>> back whatever negative reply you want. The Drouting modules 
>>>>>>>> does not do any SIP signalling for you.
>>>>>>>>
>>>>>>>> Best regards,
>>>>>>>> Bogdan-Andrei Iancu
>>>>>>>>    OpenSIPS Founder and Developer
>>>>>>>>    http://www.opensips-solutions.com 
>>>>>>>> <http://www.opensips-solutions.com/>
>>>>>>>>
>>>>>>>> OpenSIPS Summit May 2017 Amsterdam
>>>>>>>>    http://www.opensips.org/events/Summit-2017Amsterdam.html
>>>>>>>> On 03/17/2017 07:50 AM, Denis via Users wrote:
>>>>>>>>> Hello!
>>>>>>>>> According to drouting module documentation i am trying to 
>>>>>>>>> introduce a probing feature to control destination SIP UA access.
>>>>>>>>> Almost everything works correct, besides one thing.
>>>>>>>>> If i have only one destination, which became inaccessible, 
>>>>>>>>> Opensips "freezes" a call, i.e. it sends 100 trying (script 
>>>>>>>>> logging) and after does not sent any code (i expected, that 
>>>>>>>>> Opensips will sent 408 code in such situation after fr_timeout 
>>>>>>>>> triggering).
>>>>>>>>> Inaccessible destination has "probing" status and i see 
>>>>>>>>> OPTIONS sent by Opensis to destination.
>>>>>>>>> Server:: OpenSIPS (2.2.3 (x86_64/linux))
>>>>>>>>> Thank you for any help.
>>>>>>>>> -- 
>>>>>>>>> С уважением, Денис.
>>>>>>>>> Best regards, Denis
>>>>>>>>> _______________________________________________
>>>>>>>>> Users mailing list
>>>>>>>>> Users at lists.opensips.org <mailto: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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20170404/a7831345/attachment-0001.html>


More information about the Users mailing list