[OpenSIPS-Users] FW: CANCELs with no transaction

Tyler Merritt tyler at fonality.com
Sun Feb 13 14:15:54 CET 2011


Why not use an $avp and grab the Call ID header on the inbound packet and
then create some routing logic that checks the $avp against the return
packet Call ID header to validate it's the same thing?  $avps can be made
available onreply with a modparam though forgive me if it's a bit late at
night and I don't have the link handy.

An avp can store more than a single value but they index in reverse order as
written if I recall correctly.

On Sat, Feb 12, 2011 at 5:05 AM, Russell Bierschbach <
rbierschbach at telepointglobal.com> wrote:

> I have a similar problem, but not solution, my probably is actually
> occurring because the originating UA is ignoring a contact header that is
> sent back during a 183 progress message.  OpenSIPS uses information from
> that contact header to figure out where to relay the incoming message (BYE
> in my case, CANCEL in yours).  It seems like it would be possible for
> OpenSIPS to use a call-id or tag to determine where to relay the message
> though.
>
>
>
> Russell Bierschbach
>
> em: rbierschbach at telepointglobal.com <rjphillips at telepointglobal.com>, im:
> rbierschbach at hotmail.com
>
>
>
> *From:* users-bounces at lists.opensips.org [mailto:
> users-bounces at lists.opensips.org] *On Behalf Of *Juri Nysschen
> *Sent:* Friday, February 11, 2011 7:44 AM
> *To:* users at lists.opensips.org
> *Subject:* [OpenSIPS-Users] FW: CANCELs with no transaction
>
>
>
> Hi All,
>
>
>
> Need help with a nagging issue:
>
>
>
> UA->Opensips 1->Opensips 2->PSTN
>
>
>
> UA sends an invite on Opensips 1, and is routed via do_routing() to
> Opensips 2, Opensips 2 uses do_routing to get to the PSTN, call starts
> ringing.
>
>
>
> UA cancels call before answer, but now t_check_trans fails and the CANCEL
> is not passed onto the PSTN, with the result that the call rings forever and
> can only be terminated by the remote answering and dropping the call or
> through a timeout.
>
>
>
> The scripts on Opensips 1 & Opensips 2 is virtuall identical:
>
>
>
> How do I get the CANCEL to the PSTN ?
>
>
>
> route{
>
> .....
>
>       if (is_method("CANCEL") ) {
>
>             route(5); # drop media proxy
>
>             if (t_check_trans()){ # this always fails after a do_routing()
>
>                   xlog("L_INFO","CANCEL
> Transaction[$fd/$fu/$rd/$ru/$si/]\n");
>
>                   t_relay();
>
>                   exit;
>
>             };
>
>             exit;
>
>       }
>
> }
>
>
>
>
>
> route[4] {
>
>       xlog("L_INFO","Route4 [$fd/$fu/$rd/$ru/$si/]\n");
>
>
>
>       $avp(i:102)=1; # Default dr-group
>
>       route(10); # Do custom stuff
>
>       t_on_failure("4");
>
>       if (do_routing("$avp(i:102)")){
>
>             xlog("L_INFO","Route4 Route to Dyna Group:
> $avp(i:102)[$fd/$fu/$rd/$ru/$si/]\n");
>
>             t_newtran();
>
>             route(1);
>
>             exit;
>
>       };
>
>       xlog("L_INFO","Route4 No Route to Host[$fd/$fu/$rd/$ru/$si/]\n");
>
>       sl_reply_error();
>
>       exit;
>
> }
>
>
>
> Regards
>
> Juri Nysschen <http://www.greydotelecom.net/bcard/jnysschen.htm>
>
>
>
> _______________________________________________
> 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/20110213/e63c8bf3/attachment.htm>


More information about the Users mailing list