Interacting with IVR

Posted on 2008-11-07
Last Modified: 2013-12-20
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.
Question by:adezoysa2
    LVL 44

    Accepted Solution

    Exceletools from Exceletel
    LVL 1

    Expert Comment

    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.

    Author Comment

    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.  
    LVL 1

    Expert Comment

    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.

    Author Closing Comment

    Thanks for the help.  I did want to stick with Microsoft .ocx's but Exceletools is a good start.

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Looking for New Ways to Advertise?

    Engage with tech pros in our community with native advertising, as a Vendor Expert, and more.

    Suggested Solutions

    The CRUD Functions CRUD, meaning "Create, Read, Update, Delete (,_read,_update_and_delete)" is a common term to data base developers.  It describes the essential functions of data base table maintenance.  This art…
    Introduction This question got me thinking... ( Why shouldn't we use Globals? This is a simple question without a simple answer.  How do you explain these concepts to a programmer w…
    As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
    Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…

    759 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    14 Experts available now in Live!

    Get 1:1 Help Now