Share This Post:

Handling VoiceXML Exception

When calls are made, I have a number that return with an “exception”, and I need some way to determine what the exception was, either in the IVRStudio application itself through a variable, in BroadcastByPhone, or something of the sort.

Any way to have the system return the reason for the exception so I can handle it in my code?

These exceptions are VoiceXML exceptions, and some of them are gateway specific. The get line status of the gateway tutorial has more info on the exceptions.

You could also check the exact exception thrown in the gateway log file: C:\Program Files\Voicent\Gateway\logs\output.log

When you use IVR Studio to handle the exception, select the element properties window, select System throws exception. If the exception is already listed in the drop down box, select it. Otherwise, simply type in the exception string in the box.

I’m using IVR studio for this and have already created the various paths based on the exceptions, however the I still want this passed back into Broadcastbyphone or available as a variable so I can record it either to the database log or via the export file.

As well, it seems some work and some do not… I have a path for telephone.linebusy, telephone.noanswer and “-ANY EXCEPTION” but the linebusy is never triggered despite hitting a busy signal on a few calls.

To pass back as a variable, you can set a variable once the exception is catched. Then you can use the variable in the rest of the call flow.

Some times the system may not be able to detect busy signals. Some phone companies uses different audio signal for the busy tone. To see what exact exception is thrown, check the log files.

Share This Post:

This entry was posted in IVR Developer, IVR Usage. Bookmark the permalink.