Dynamically configurable IVR?


#1

Is this Do-Able?

  • Yes
  • No

0 voters

A theoretical question for the moment… (we’ll get into how can it be accomplished in a moment).

Can * be used to terminate SIP and PRI calls into an IVR system that is dynamically configurable? I need to find a way to allow an IVR user to dynamically add menu items… EXample:

Press 1 for hurricane Katrina
Press 2 for hurricane Rita
Press 9 to report an additional event
Press * to hear instructions

if a user presses (or says) the configuration command they can record another event name (which is translated via text to speech, and stored in a database and offered to all future callers as option 3. The system also has to copy the menu structure to follow teh new command into place with every new command created.

Make sense? Do-Able? Asterisk alone? Asterisk + AGI + VXML?

Please help me out with this concept.

Thanks.
Lucas


#2

That is doable but exceeding any chance of explaining here by FAR.

First, its not text to speech, its Speech-To-Text in your case.

Rough draw:

You need 10 “dummy” files, named
announce_opt_1
announce_opt_2
announce_opt_3
etc…

These are the files played to the caller.

Then you use includes for your dialplan.
include_opt_1
include_opt_2
include_opt_3
etc.

You need a database with a “current index”.
You create the inital menue, lets say 1 option ( i would put HELP on 1, not 9)

When a new option is created, the database is queried for the “Last index”. Then increase it by 1, store back.
Create the database entry based on the recog. speech.

Then a file (AGI?) creates the new content for eg.
include_opt_3

In this file you write the whole diaplan line like you would normally in the extension.conf

The announcement must consist of many fragment, so you can dynamically control, what options are read back, depeneding on their existance.

But this is a quite “sysiphus” project. Lots of scripts, fragments and logics.