Database integration


Well, after my first post a couple of days ago - I now have a pbx up and running.

It’s fairly simplistic at the moment, with some users, mailboxes, menu’s, external SIP trunk etc etc.

My aim behind building this pbx is to understand what we can achieve in an office environment.

Something that is on the nice to have list, are shortcuts to dialling customers. I have envisaged that rather than having to add entries into the extensions file all the time, I might be able to store these in a database where they can then quickly be added,removed and edited.

From what I can see, I could do this using the AGI command and writing a script of my own to interface with a mysql database, but is there any kind of native integration? Any useful tutorials someone could point me in the direction of.

Using 1.8 btw.

Thanks for your time !


I’ve not used it myself, but the Asterisk “realtime” feature does this sort of thing.

This felt like a Support question not a General comment.

If you want to store all of your users and voicemails etc in mysql database you can use asterisk realtime. This can be acheived by doing simple configuration in rex_mysql.conf and extconfig.conf. Make sure you have already compiled asterisk with mysl_addon module.

Let me know if you need more help

Thanks for the response guys.

I purchased the O’Reilly book - Asterisk - The Definitive Guide which has some excellent information in. (Although I have had to bang my head against the wall a few times because some of the examples seem to use invalid syntax.)

I understand the ability to use Realtime, but the general configuration is fairly static.

I wanted to (and have no achieved) create a directory essentially of contacts, which are stored in a database. The idea behind this is that a) to create short extensions to allow the quick dialling of contacts, and b) to possibly provide inbound caller name where it is possible to match the calling number with a row in the database. I used func_odbc to do this by the way.

I have another question about queues, but I’ll stick this in the support section.