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
> [email protected]
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users


_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to