« Back to TCL-API

Can I handoff my processing to the default appl in my setup handling?

Combination View Flat View Tree View
Threads [ Previous | Next ]
I have a TCL script that needs to act only on certain INVITEs, and other INVITEs default processing should be done.  Inside my handler for the ev_setup_indication event, if I decide it is not an INVITE I want to handle, how can I go back to default handling?  What I am doing now is getting the destination and setting up the leg (leg setup $dest callInfo leg_incoming), and then upon receiving the setup done event, handing off to the default application.  However, if the INVITE is for someone who does not exist, the caller gets back a SIP 484 (address incomplete) response rather than a 404 (not found) response, which is not the desired behavior.

What is the setup done event you get ? ls_004 ?

Try use leg disconnect {legID | info-tag} [-c cause_code] When you receive that setup done event.

Maybe you want yo use
001 Unassigned number
or
028 Invalid number

you need to try it. Tcl is in application layer. It's really up to how IOS convert this disconnect cause to SIP.

Please refer to programming guide

NO, I don't want to handle the entire call, and I may not want to disconnect it. I want to hand ALL HANDLING of it back to the default application (once I have determined it is not a call I want to handle) and have the behavior be as if I had never handled any events for the call (or interrupted it at all).

In this way I cannot think of any way. Script itself really don't know underline protocol and once we handoff the call back to default the Tcl application will will closed and out of call conrol picture.
usually we do in this way,
when receive event setup done and status is ls_000 we handoff to IOS if it's other than ls_000 we handle it in Tcl script.