Large database integration capabilities

I was not sure whether to post this here or in the developer’s forum. If it needs to be there, please move this into the appropriate area.

I am about to install Asterisk (testing for a real estate company) on a two line (or more) box running Debian Sarge and need to know if a few things are possible. I have a database and a list of 40,000 zip codes, and a list of area codes that correspond to the zip codes. I want to set up the system to do one of two things.

a) Have a caller dial in, be prompted for a zip code, and be forwarded to a linked (in the database?) mailbox, or
b) Have a caller call in, the system check the number that they are calling from, prompt to verify, and then forward them to the appropriate corresponding mailbox.

I know that this is going to be a big project, and want to know if any of you have any suggestions. I prefer mysql, but can convert to use any other database software as long licensing costs aren’t outrageous.

This system is going to be used soley as a large mailbox, and we want to have our programmer create a web ui to check for populated mailboxes after authentication. Once again, does anybody have any suggestions?

If you want to use MySQL, the easiest thing to do is use AGI scripts. They can be written in almost any programming language and are easily called from the dialplan.

There is some support for direct MySQL access in the asterisk-addons package, but I don’t know how easy it is to setup / use.


another vote for AGI scripts. i was able to build a basic IVR system that mimics our $40,000 copia box, and it only took me two total hours. the first hour and 45 minutes was getting AGI figured out, and once i was able to put and get data through asterisk, the actual PHP code to do the IVR took 15 minutes.

i used PHP with the phpAGI class and was able to do everything I needed, plus, the class is well documented, so if you should need to add a function that isn’t there, you probably could do it. this, of course, assumes you’d use PHP.

in any case, I never understood the fuss about AGI until I actually used it - NOW i understand how powerful asterisk really can be…