Hi Guys,

 

I have a question regarding the correct processing for cancelled requests

 

1. (A)--------------------INVITE ------------------->(B)

2. (A)<------------------180 RIGING------------------(B)

3. (A)--------------------CANCEL-------------------->(B)

4. (A)<------------------OK--------------------------(B)

5. (A)<---------487 Request Terminated---------------(B)

6. (A)--------------------ACK----------------------->(B)

 

I have the following section to deal with cancel messages however I am finding that the 487 response still hits my failure_route block.    The failure_route block is called for serial forking.

 

# CANCEL processing

if (is_method("CANCEL"))

         {

                 if (t_check_trans())

                         xdbg("## BISNET ## - Cancel Processing\n");

                         t_relay();

                exit;

         }

 

I can obviously do something like a (!t_check_status("487")) within the failure block but is there a better way to deal with this response ?

 

Although this doesn’t really cause me a problem at the moment I see the following error in the debug

 

/usr/sbin/kamailio[23786]: ERROR: tm [tm.c:1368]: ERROR: w_t_relay_to: t_relay_to failed

/usr/sbin/kamailio[23786]: ERROR: sl [sl_funcs.c:282]: ERROR: sl_reply_error used: transaction canceled (487/SL)

 

 

As always your help is appreciated.

 

Steve

 



Information in this message, including any attachments, is confidential to the person to whom it is addressed and may be legally privileged. If you are not the intended recipient please notify the sender and delete the message from your system. Please note that Bistech Group plc, Bistech plc, Bisnet Limited and the sender do not accept any responsibility for viruses. It is your responsibility to check the e-mail and any attachments for viruses. Calls may be monitored and recorded.