Dealing with database and returned variables

Home » Asterisk Users » Dealing with database and returned variables
Asterisk Users 4 Comments

Hi All;

If I need to build IVR using Asterisk (so I will read and write to database), until now from my reading, I can understand that the best way is to use AGI to call external script like php which will manipulate every thing, correct?

Well, the returned values from this script that I can use it to route the call to the proper queue or Phone, how I can handle these returned values? Do I have to store it in the database? Well, how I will read it from database and use it in the extensions.conf?

From the other side, is there any tool to have IVR script (let us say, studio programing) that can be used in Asterisk? Any advise in this way?

Regards
Bilal

4 thoughts on - Dealing with database and returned variables

  • Hi Bilal

    in my case i use an IVR menu using asterisk 1.4 an i can store the number
    of the customer in my database and after i can select
    the phone number and the date_time of calling i use mysql

    you must change database login password with yours and also the name of
    table

  • I have a strong aversion to cobbling up database access in dialplan. It’s
    just ugly. An AGI is so much cleaner and flexible.

    My personal preference is C, but that’s my sharpest tool and being a
    compiled language is faster than scripting languages like PHP.

    If PHP is your ‘sharpest tool,’ go with it. Unless you’re cranking through
    a boat load of calls or working within tight hardware constraints you
    should be fine.

    You can set channel variables within your AGI. I wrote a ‘third party
    verification’ system a couple of years ago. One of the AGIs
    (‘lookup-dnis’) looks up the dialed number (DNIS) in the database and sets
    a couple hundred channel variables in the blink of an eye. The channel
    variables then control the flow of the script – what kind of questions are
    asked and what to do with the responses.