Post Dial delay issue

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Post Dial delay issue

bluerain
So I guess I am trying to get that going again.  I am currently running 1.11 opensips and here is what my code:

loadmodule "tm.so"
modparam("tm", "fr_timer", 10)
modparam("tm", "fr_inv_timer", 10)
modparam("tm", "restart_fr_on_each_reply", 0)
modparam("tm", "onreply_avp_mode", 1)

...

route{
...
}

onreply_route {
        if(t_check_status("(180)|(183)")) {
                $T_fr_inv_timeout = 60;
        }
}

So, what I am hoping to accomplish is that after we send INVITE to far end carrier, if:

1. They do not response to INVITE within 10 second, opensips will give up which cause Asterisk try next carrier.

2. If carrier response (e.g. 180/183) within 10 second, then we will change the fr_inv_timeout timer to 60 seconds which we will let user wait 60 seconds until ring time out.

But it seems the above code does not work.  I've try it and it keep on cutting the call off at 10 second.

The only way I got the code to work is simply put

route{
     $T_fr_inv_timeout = 60;
     ...
}

then the timer will change to 60 seconds.  But then it is useless because I want only change the timer to 60 seconds once I get a 180/183.  The reason is that carrier have their own LCR that have to go through which sometime takes more then 10 seconds to get back 180/183 to us and thus kill our PDD also.  So in the case, I want to be able to skip to next carrier when PDD gets too long.

I also tried (which I know probably will not work):

route{

        if(t_check_status("(180)|(183)")) {
                $T_fr_inv_timeout = 60;
        }
        ...
}

which did not work either.

So it seems t_check_status("180") simply does not work?  Or did I "misplace" the code?

Thank you!

Reply | Threaded
Open this post in threaded view
|

Re: Post Dial delay issue

Bogdan-Andrei Iancu-2
Hi,

Do you use the generic onreply_route (without name) ?? if no, that route
has no transaction context, so you timer set is discarded (as not
associated to any transaction).

Use a named onreply_route, armed with t_on_reply("name") at INVITE time.

Best Regards,

Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com

On 29.06.2015 19:39, bluerain wrote:

> So I guess I am trying to get that going again.  I am currently running 1.11
> opensips and here is what my code:
>
> loadmodule "tm.so"
> modparam("tm", "fr_timer", 10)
> modparam("tm", "fr_inv_timer", 10)
> modparam("tm", "restart_fr_on_each_reply", 0)
> modparam("tm", "onreply_avp_mode", 1)
>
> ...
>
> route{
> ...
> }
>
> onreply_route {
> if(t_check_status("(180)|(183)")) {
> $T_fr_inv_timeout = 60;
> }
> }
>
> So, what I am hoping to accomplish is that after we send INVITE to far end
> carrier, if:
>
> 1. They do not response to INVITE within 10 second, opensips will give up
> which cause Asterisk try next carrier.
>
> 2. If carrier response (e.g. 180/183) within 10 second, then we will change
> the fr_inv_timeout timer to 60 seconds which we will let user wait 60
> seconds until ring time out.
>
> But it seems the above code does not work.  I've try it and it keep on
> cutting the call off at 10 second.
>
> The only way I got the code to work is simply put
>
> route{
>       $T_fr_inv_timeout = 60;
>       ...
> }
>
> then the timer will change to 60 seconds.  But then it is useless because I
> want only change the timer to 60 seconds once I get a 180/183.  The reason
> is that carrier have their own LCR that have to go through which sometime
> takes more then 10 seconds to get back 180/183 to us and thus kill our PDD
> also.  So in the case, I want to be able to skip to next carrier when PDD
> gets too long.
>
> I also tried (which I know probably will not work):
>
> route{
>
> if(t_check_status("(180)|(183)")) {
> $T_fr_inv_timeout = 60;
> }
>          ...
> }
>
> which did not work either.
>
> So it seems t_check_status("180") simply does not work?  Or did I "misplace"
> the code?
>
> Thank you!
>
>
>
>
>
> --
> View this message in context: http://opensips-open-sip-server.1449251.n2.nabble.com/Post-Dial-delay-issue-tp7597743.html
> Sent from the OpenSIPS - Users mailing list archive at Nabble.com.
>
> _______________________________________________
> Users mailing list
> [hidden email]
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
>


_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: Post Dial delay issue

bluerain
Ok, thx!  Let me try that!