Database approach to IVR


I am in the need to script an IVR based on ODBC instead of static confs.
This is because it will be connected to an CRM/ERP and should be managed by non-tech users.

Most of the time I script dialplans using AEL, maybe someone tries something similar and shares his thoughts (?).

Thank you.

Less people on this forum use AEL, I have around 12 years using Asterisk and I dont even know how to use AEL, and it is not only me.

AEL and Conf are very similar, this would not be a problem for me.
I browsed some docs and it looks like, I better build it on AMI/FastAGI using Python.

PS: AEL is worth a look. The code is much cleaner and there are no priorities needed (which is a key feature of Conf-syntax). I wonder why this has not become the default language, :wink:

AEL complies to .conf type operations, so it cannot do any more and, in practice it can do less.

1 Like

It’s best to take an organic approach. And you’re already part of the way there.
Since you are creating your IVR script manually, now you should identify the common factors.

  • Where is the repetition
  • Where are the unique values

Then… you can translate this information into database queries.

I will not go into the pros and cons of AEL, but you may find AMI or AGI work better to interact with the dialplan.

You can find some details how I did it here.
I used AGI() and python, and you’re welcome to look at the code

Thank you very much, this indeed is of help for me!

Good afternoon, I use .ael in my project with odbc.
If you are needed simple .ael IVR, I can write it for you

Hi Thank you very much but I have just finished my database driven (simple) IVR.

After fixing some bugs in pyst2 to work with python3.6 instead of 2.x it now runs very well.
I use Django with it’s ORM and custom admin-commands.

AGI is much more powerful than I thought.

1 Like