[Users] provisional_reply_timer

Klaus Darilion klaus.mailinglists at pernau.at
Tue Dec 19 13:47:04 CET 2006


Hi Christian!

Is the behavior identically for all transactions or is there a 
difference between INVITE and other transactions?

regards
klaus

Christian Schlatter wrote:
> Ovidiu Sas wrote:
>> Hi Klaus,
>>
>> You can use the fr_timer from the tm module:
>> http://openser.org/docs/modules/1.1.x/tm.html#AEN108
>>
>> If you don't get any reply from the far end, this timer will fire.
> 
> I recently had a look at the timer related source code and that is what 
> I wrote down:
> 
> - Each SIP transaction has a final response timer (FRT)
> 
> - SIP transactions fail (failure_route, status 408) when FRT fires
> 
> - TM module exposes final response timers (FRT) fr_timer and 
> fr_inv_timer (can be set using AVP)
> 
> - INVITE transactions: FRT initially equals fr_timer and gets set to 
> fr_inv_timer after receiving first provisional response
> 
> - setting fr_timer to a low value (e.g. 3s) allows for fast INVITE failover
> 
> So I'm setting fr_timer to a low value for local INVITE transactions. 
> Local here means sessions between endpoints from our network domain. 
> Something along the lines:
> 
> route[0] {
>     if (method==“INVITE”) {
>         # set fr_timer to 3 seconds
>         avp_write("i:3", "$avp(fr_timer)");
>         # call FAILURE_DEFAULT_RELAY routing block on transaction failure
>         t_on_failure("FAILURE_DEFAULT_RELAY");
>         t_relay();
>         exit;   
>     }
> }
> failure_route[FAILURE_DEFAULT_RELAY] {
>     # status 408 ? transaction timed out
>     if (t_check_status("408")) {
>         # try next target
>         if (ds_next_domain()) {
>             t_relay();
>         }
>     }
> }
> 
> 
> - Christian
> 
>>
>>
>> Regards,
>> Ovidiu Sas
>>
>> On 12/18/06, Klaus Darilion <klaus.mailinglists at pernau.at> wrote:
>>> Hi!
>>>
>>> i wonder if there is a timer which controls the timeout for provisional
>>> replies.
>>>
>>> E.g. I want to cancel an INVITE and retry another gateway if the gateway
>>> does not respond with 100 (or 180) in a certain time.
>>>
>>> regards
>>> klaus
>>>
>>> -- 
>>> Klaus Darilion
>>> nic.at
>>>
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at openser.org
>>> http://openser.org/cgi-bin/mailman/listinfo/users
>>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at openser.org
>> http://openser.org/cgi-bin/mailman/listinfo/users
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Users mailing list
> Users at openser.org
> http://openser.org/cgi-bin/mailman/listinfo/users


-- 
Klaus Darilion
nic.at





More information about the sr-users mailing list