[SR-Users] INVITE timers

Alex Hermann alex at speakup.nl
Fri Mar 26 16:42:27 CET 2010


Hello,


I'm trying to create a scenarion which was very simple with Kamailio 1.x, but 
seems impossible with sr3.0. I need to do failover for INVITE's and also limit 
the call setup time per-branch, so I defined the problem in 2 parts that need 
to work separately, but also combined into 1 proxy.

1) Fast failover.

After t_relay, the destination should be tried for max 2 sec per host. No 
maximum for the whole set. Thus, if a destination has 4 SRV records, and each 
host fails after 2 secs, a 408 will be sent back after a total of 8 secs.
If a (proivisional) response arrives within 2 sec, a 408 MUST NOT be sent.

The exact value of the timer should be configurable per t_relay call.

In kamailio this is accomplished by setting the fr_timer(_avp) to 2000ms. In 
sr3.0 I have yet to find a combination of timer settings that work.



2) Call setup duration.

If a destination host returns a response, I want to limit the attempt to 80 
secs (default, should be configurable per t_relay call) of 
ringing/progress/whatever. After that a failure route will take care to route 
to a different destination, at this time this timer should be restarted. At no 
other time after the _first_ provisional reponse after the t_relay call should 
the timer be restarted.

In Kamailio this was accomplished by just setting fr_inv_timer(_avp) to the 
desired value before t_relay(). In sr3.0 this timer will be restarted after 
additional provisional responses and will not be resetted after a new t_relay 
call (from failure_route).


Any suggestions on how to get the desired behaviours are welcomed (at the 
moment scenario 1 is more important than 2).

-- 
Greetings,

Alex Hermann





More information about the sr-users mailing list