Link to home
Start Free TrialLog in
Avatar of adezoysa2
adezoysa2

asked on

Interacting with IVR

I need to build a VB application that will interact with an IVR.  Ideally the VB application will call the external IVR system and then interact with that IVR using a touch tones or even speech.  I was thinking that the Microsoft Speech-to-text and Text-to-speech engines would be part of the solution.  I would perfer not to use third party .ocx's and would perfer to stay with all Microsoft controls if possible.  Any ideas would be appreciated.
ASKER CERTIFIED SOLUTION
Avatar of aikimark
aikimark
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of press0
press0

To talk to the IVR using DTMF or speech, you will need a phone line connection to the IVR, meaning a dialer and modem or SIP connection.  Does the IVR expose APIs you can access?   I'm not sure that speech recognition (speech-to-text) or TTS (text-to-speech) would need to be part of the solution

What is your purpose of interacting with the IVR from a VB app--are you designing a testing front end?  There may be  easier ways to accomplish what you need to do.

Let me know what you're trying to accomplish.
Avatar of adezoysa2

ASKER

An example for the use of text-to-speech and speech recognition would be as follows:

Call an IVR (eg: Airline flight status), then supply the flight/date/time, etc. via text-to-speech, then listening for responses from the IVR then use the speech recognition to determine what the next logical step would be.  The next step might be to supply more information or to record the IVR responses.

The Airline IVR is just an example, however this could be built to handle any IVR host.  
A call scripting engine that can call the IVR and interact with it using touch tone or speech and possibly understand the response using speech recognition is not an easy task.  I would suggest using IVR software that can place an outbound call with call progress detection as a start.

...and TTS will be almost unuseable as a voice input for testing, as a speech recognition IVR will almost certainly fail trying to understand the TTS 'voice'.  Rather than TTS, you would need to use recorded voice phrases.

Understanding the IVR response with speech reco will also be tedious as you will need to develop grammars for each test script.

Providing a scripting engine to generate the test call flow of the target IVR (IVR path including input, response, delays, errors) will be key to any solution.

You may be better off with a comercial package if you will be testing a lot of IVRs.  Otherwise, start with low cost IVR software that provides outbound dialing capabilities and work with it to create your testing scripts.
Thanks for the help.  I did want to stick with Microsoft .ocx's but Exceletools is a good start.