[OpenSIPS-Users] OpenSIPS reseting issue with $T_fr_inv_timeout while forwarding
Bogdan-Andrei Iancu
bogdan at opensips.org
Tue Jul 25 11:37:33 EDT 2017
Hi Ravi,
Before each t_rely() you have to set the your custom $T_fr_inv_timeout
and $T_fr_timeout, otherwise the default values will be used. As you
have a serial forking scenario, you do a new t_relay() at each step.
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com
OpenSIPS Bootcamp 2017, Houston, US
http://opensips.org/training/OpenSIPS_Bootcamp_2017.html
On 07/25/2017 05:34 PM, Ravi Patel wrote:
> Hi Team,
>
> What is the right way to reset timers *$T_fr_inv_timeout* and
> *$T_fr_timeout* ??
>
> I am using OpenSIPS-2.2 version
> The below scenario will help to understand issue,
>
> There are 4 SIP users,
> 1111,2222,3333,4444
>
> What I want to achieve is:
> 1111 ---> 2222 (FORWARD ON NOANSWER) ---> 3333 (FORWARD ON NOANSWER)
> ---> 4444
>
> *1st Test Case Scenario:*
>
> 1111
> 2222 (fr_inv_timeout 20 sec)
> 3333 (fr_inv_timeout 25 sec)
> 4444 (fr_inv_timeout 30 sec)
>
>
> when 1111 calls 2222 : OpenSIPS generates CANCEL at 20 secs (thats
> working proper as expexted) and forwards call to 3333 as per my
> configuration.
> so in --> 3333 : OpenSIPS generates CANCEL at *20 secs instead of 25
> secs* and send 408 to 1111. and not processing the 2nd forwarding.
>
> *2nd Test Case Scenario:*
> 1111
> 2222 (fr_inv_timeout 20 sec)
> 3333 (fr_inv_timeout 15 sec)
> 4444 (fr_inv_timeout 30 sec)
>
> when 1111 calls 2222 : OpenSIPS generates CANCEL at 20 secs (that is
> working proper as expexted) and forwards call to 3333 as per my
> configuration.
> now --> 3333 : OpenSIPS generates CANCEL at 15 secs and forwards the
> call to 4444, Here OpenSIPS generates CANCEL *after 5 secs instead of
> 30 secs.*
>
>
> We set timeout by using $T_fr_inv_timeout.
> ------------
> route[ring_timeout]{
> xlog("L_INFO","------------------- RING_TIMEOUT
> ---------------\n");
> if (!is_method("INVITE"))
> return;
> avp_db_load("$rU","$avp(ringtimeout)/usr_preferences");
> if($avp(ringtimeout)!=null)
> {
> $T_fr_inv_timeout = NULL;
> xlog("L_INFO","$rU: Ring timeout :
> $avp(ringtimeout)");
> $T_fr_inv_timeout =$(avp(ringtimeout){s.int
> <http://s.int>}) ;
> xlog("L_INFO","$rU: Ring timeout is setted:
> [$T_fr_inv_timeout]");
> }
> else
> {
> xlog("L_INFO","$rU: Ring timeout is NOT setted");
> }
> }
> ------------------
>
> From both the scenarios what we found, it sticks to the first timeout
> of 2222,that is 20secs in our case.
> In first scenario it generates CANCEL on 3333 at 20 secs instead of 25
> that is 2222's Timeout.
> In second scenario it generates CANCEL on 3333 at 15sec and on 4444 at
> 5 sec (15 + 5 = 20 sec) that is also 2222's timeout.
>
>
> Can I know the right method to set $T_fr_inv_timeout ?
>
> Let me know if any other information is needed.
>
>
> Thanks,
> Ravi
>
>
>
> _______________________________________________
> 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/20170725/058ef68d/attachment.html>
More information about the Users
mailing list