[Kamailio-Users] fr_inv_timer not honored (fr_inv_timer/2 is used in fact)

Juha Heinanen jh at tutpro.com
Thu Mar 25 15:20:46 CET 2010


I aki Baz Castillo writes:

 > As I said (kamailio 1.5.4) I set "fr_inv_timer=200" for TM module and
 > use LCR for serial forking (failover). I also do failover is no final
 > reply is received from the first gateway, however I do not manually
 > override fr_inv_timer, neither using LCR AVP's (as
 > $avp(FR_TIMER_AVP)).

in k 1.5 config, i have 

modparam("tm", "fr_inv_timer", INVITE_TIMEOUT)
modparam("tm", "fr_timer_avp", "$avp(FR_TIMER_AVP)")

where INVITE_TIMEOUT is something like 120.

then after calling next_gw() and before calling t_relay(), i set

$avp(FR_TIMER_AVP) = GW_TIMEOUT;

where GW_TIMEOUT is a small constant.  i do not do anything in the
script to fr_inv_timer.  that simply tells the total time how long the
process can last.  it makes no sense for the proxy to try longer than
something like 120 sec, because UACs usually timeout anyway if you
increase the time much longer.

 > There are two gateways in lcr/gw tables and TM raises timout after 100
 > seconds if no final reply was received by the first contacted gateway,
 > and later after 100 seconds again if no final reply was received from
 > gateway-2.

i don't understand why you would try the second gw, if you got for
example ringing reply from the first one.

 > This is not what it happens in my case, as the total time is
 > "fr_inv_timer" and such time is divided by the number of serial
 > forking it *could* occur. IMHO just the LCR module knows such
 > information, retrieved during "load_gateways()" function.

lcr module gw functions do not do anything to any timer.

-- juha



More information about the Users mailing list