[SR-Users] failure_route send 500 retry later

Alejandro Mellado G. amellado at inf.uct.cl
Sun Sep 5 04:13:56 CEST 2010


Hi Carsten,

The problem is solved, but with a litle bug. The calls from qutecom are 
not relayed to sems.
Here is the solution:

failure_route[FAIL_ONE] {
  #!ifdef WITH_NAT
         if (is_method("INVITE")
&& (isbflagset("6") || isflagset(5))) {
                 unforce_rtp_proxy();
         }
#!endif

         if (t_is_canceled()) {
                 exit;
         }

         if (t_check_status("486|408")) {
                 avp_db_load("$ruri","$avp(s:email_address)/$email_scheme");
                 append_hf("P-App-Name: myvoicemail\r\n");
                 append_hf("P-App-Param: 
Email-Address=$avp(s:email_address)\r\n");
                 append_branch();
                 fix_nated_sdp("1");
                 t_relay("sems_host","5080");
         }
}


Thanks very much
Alejandro Mellado

El 25/08/10 02:41, Carsten Bock escribió:
> Hi,
>
> from the logs you see, that you proxy actually parses the "500 Try
> later" reply, so it must have received it....
> You should check, from where you receive the 500-error; then you could
> see, if you want to adapt your config.
>
> Carsten
>
> 2010/8/24 Alejandro Mellado G.<amellado at inf.uct.cl>:
>    
>> Hi' Carsten,
>>
>> Of course that t_on_failure is in request route.
>> I think that  in kamailio is the problem, because the forward  not arrive to
>> SEMS and kamilio log says:
>>
>>   2(96827) DEBUG:<core>  [usr_avp.c:639]: DEBUG:destroy_avp_list: destroying
>> list 0x0
>>   2(96827) DEBUG:<core>  [receive.c:280]: receive_msg: cleaning up
>>   4(96829) DEBUG:<core>  [parser/msg_parser.c:622]: SIP Reply  (status):
>>   4(96829) DEBUG:<core>  [parser/msg_parser.c:624]:  version:<SIP/2.0>
>>   4(96829) DEBUG:<core>  [parser/msg_parser.c:626]:  status:<500>
>>   4(96829) DEBUG:<core>  [parser/msg_parser.c:628]:  reason:<Retry Later>
>>   4(96829) DEBUG:<core>  [parser/parse_via.c:1283]: Found param type 232,
>> <branch>  =<z9hG4bK334b.74cc66f3.1>; state=16
>>   4(96829) DEBUG:<core>  [parser/parse_via.c:2296]: end of header reached,
>> state=5
>>
>> ....
>>
>>   2(96827) DEBUG: tm [t_lookup.c:1150]: DEBUG: t_check_msg: msg id=5 global
>> id=5 T end=0x28ce1af8
>>   2(96827) DEBUG: tm [t_reply.c:1928]: DEBUG: reply_received: org. status
>> uas=500, uac[0]=408 local=0 is_invite=1)
>>   2(96827) DEBUG: tm [t_reply.c:1941]: DEBUG: reply to local CANCEL processed
>>
>>
>> Thanks.
>> Alejandro Mellado
>>
>> El 24/08/10 04:29, Carsten Bock escribió:
>>      
>>> Hi,
>>>
>>> did you add a "t_on_failure" in your request route? Your route works
>>> for busy subscribers i guess?
>>> The problem is likely, that your sip-router box receives a "500 Retry
>>> later" from some endpoint (either the device or SEMS) and you have no
>>> rule for handling 500-responses:
>>>
>>> if (t_check_status("486|408")) {
>>>
>>> You only forward to sems here, if your proxy receives a "486 Busy" or
>>> a "408 Request timeout", not if it receives any other reply. You
>>> should check, from where you receive the 500-reply; it is not
>>> generated by the sip-router proxy.
>>>
>>> Carsten
>>>
>>> 2010/8/23 Alejandro Mellado G.<amellado at inf.uct.cl>:
>>>
>>>        
>>>> Hi'
>>>>
>>>> I'm trying to forward the call to voicemail on sems when the time of
>>>> response is out. When the user isn't in location, the forward to
>>>> voicemail
>>>> work very fine ( $rc = -1 ).  But  failure_route, doesn't work and send
>>>> message "500 Retry Later".
>>>>
>>>> I'm using kamailio 3.0.2 and I'm probing with:
>>>>
>>>> modparam("tm", "fr_timer", 10)
>>>> modparam("tm", "fr_inv_timer", 15)
>>>> ...
>>>> ...
>>>> failure_route[FAIL_ONE] {
>>>> #!ifdef WITH_NAT
>>>>         if (is_method("INVITE")
>>>> &&    (isbflagset("6") || isflagset(5))) {
>>>>                 unforce_rtp_proxy();
>>>>         }
>>>> #!endif
>>>>
>>>>        if (t_is_canceled()) {
>>>>                exit;
>>>>        }
>>>>
>>>>         if (t_check_status("486|408")) {
>>>>                 revert_uri();
>>>>
>>>>   avp_db_load("$ruri","$avp(s:email_address)/$email_scheme");
>>>>                 append_hf("P-App-Name: myvoicemail\r\n");
>>>>                 append_hf("P-App-Param:
>>>> Email-Address=$avp(s:email_address)\r\n");
>>>>                 rewritehostport("sems_host:5080");
>>>>                 append_branch();
>>>>                 t_relay();
>>>>         }
>>>> }
>>>>
>>>> Thanks.
>>>>
>>>> --
>>>> Saluda Atte,
>>>> Alejandro Mauricio Mellado Gatica
>>>> Escuela de Ingeniería Informática
>>>> Universidad  Católica  de  Temuco
>>>> _________________________________
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>>>> sr-users at lists.sip-router.org
>>>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>>>
>>>>
>>>>          
>>>
>>>
>>>        
>>
>> --
>> Saluda Atte,
>> Alejandro Mauricio Mellado Gatica
>> Escuela de Ingeniería Informática
>> Universidad  Católica  de  Temuco
>> _________________________________
>>
>>
>>
>>      
>
>
>    
-- 
Saluda Atte,
Alejandro Mauricio Mellado Gatica
Escuela de Ingeniería Informática
Universidad  Católica  de  Temuco
_________________________________





More information about the sr-users mailing list