[OpenSIPS-Users] Generate CANCEL on 180

Johan De Clercq Johan at democon.be
Wed Apr 21 07:16:46 EST 2021


Certain providers do this all the time : they bill faulty numbers

So they give 180 followed by instant 200 and then they play : "the number
that you tried to reach ....".

Actually, Antonis, you should try a few of those numbers manually, I bet
you that they are all faulty.

Op di 20 apr. 2021 om 23:02 schreef Calvin Ellison <calvin.ellison at voxox.com
>:

> Once you receive 200 it is too late to CANCEL. You will need to ACK the
> 200 and then BYE the call.
>
>
> Regards,
>
> *Calvin Ellison*
> Systems Architect
> calvin.ellison at voxox.com
> +1 (213) 285-0555
>
> -----------------------------------------------
> *voxox.com <http://www.voxox.com/> *
> 5825 Oberlin Drive, Suite 5
> San Diego, CA 92121
> [image: Voxox]
>
>
> On Tue, Apr 20, 2021 at 1:14 PM Antonis Psaras <apsaras at microbase.gr>
> wrote:
>
>> I did the following
>>
>> if (t_check_status("180"))
>> {
>>         t_cancel_branch();
>>                drop;
>> }
>>
>> But there is an issue.
>>
>> When 180 is followed by 200 instantly, the CANCEL is not working as
>> expected.
>>
>> When I add a delay on Answer ie 1sec then CANCEL works.
>>
>> Any suggestion?
>>
>> Antonis Psaras
>>
>> -----Original Message-----
>> From: Users <users-bounces at lists.opensips.org> On Behalf Of Kingsley Tart
>> Sent: Τρίτη, 20 Απριλίου 2021 20:10
>> To: OpenSIPS users mailling list <users at lists.opensips.org>
>> Subject: Re: [OpenSIPS-Users] Generate CANCEL on 180
>>
>> Firstly, I'm new to OpenSIPS so treat my comments accordingly.
>>
>> But, can you do something in an onreply route?
>>
>> eg, in a test setup I have, when I get an INVITE I do this:
>>
>>         create_dialog("pPB");
>>         t_on_reply("doodle");
>>
>> (I can't remember whether the dialog is needed for this)
>>
>> and then I have this:
>>
>> onreply_route[doodle] {
>>         # expect $T_reply_code to likely first be 100
>>         # then 180 or 183 for a progressing call
>>         # 200 when call is answered
>>         # or failure code (eg 4xx) or whatever
>>         if (t_check_status("^1[0-9][0-9]$")) {
>>                 switch ($T_reply_code) {
>>                         case 180: $acc_extra(t_ringing) = $Ts; break;
>>                         case 183: $acc_extra(t_progress) = $Ts; break;
>>                 }
>>         } else if (t_check_status("^2[0-9][0-9]$")) {
>>                 $acc_extra(t_answer) = $Ts;
>>         } else {
>>                 xlog("Something else\n");
>>         }
>> }
>>
>> so when a 180 is received, it calls the above route function. Could you
>> send a CANCEL from there?
>>
>> Cheers,
>> Kingsley.
>>
>> On Tue, 2021-04-20 at 16:55 +0300, Antonis Psaras wrote:
>> > Dear all
>> >
>> > I am trying to create a service which will generate missed calls. In
>> > order to be more accurate, I want to CANCEL the request when 180 is
>> > received.
>> >
>> > The scenario is the following
>> >
>> > Asterisk Invite -> OpenSIPs -> Carrier
>> >
>> > Carrier 183 -> OpenSIPs -> Asterisk
>> >
>> > Carrier 180 -> OpenSIPs
>> >
>> > OpenSIPs Cancel -> Carrier
>> >
>> >
>> > Is that possible to be done from script without external app?
>> >
>> > Regards
>> >
>> > _______________________________________________
>> > Users mailing list
>> > Users at lists.opensips.org
>> > http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
> _______________________________________________
> 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/20210421/a815ea47/attachment-0001.html>


More information about the Users mailing list