Polling Application using Asterisk

Hello all,

I am developing a polling application using asterisk over suse linux 9.0.

Polling Application Definition: There is a database on the linux server containing some phone numbers. I need to configure asterisk to pick a phone number at a time and make an outbound call.

Hardware: I have an option of either going for VOIP or using the traditional PSTN for making calls. My first question is that what hardware do i need for this setup for VOIP and for PSTN? For VOIP will it simply be Sipura SPA-3000?

My main concern is the ability of asterisk to pull out phone numbers from the database and make calls one by one. Can i implement a monitoring program using asterisk which picks up these phone numbers from the database and uses a user interactive menu and finally at the end of the call stores the details of the calls in a file or a database?

Any kind of help will be highly appreciated.

Peace.

My first question is that what hardware do i need for this setup for VOIP
and for PSTN?
For VoIP you don’t requier any hardware but an internet connection and
VoIP service Provider.

For PSTN you may require analog cards like SPA 3000 or TDM400 etc.
The choice of card depends on your requirements or more specifically how
much calls simultaneously do you want asterisk to handle.

Can i implement a monitoring program using asterisk which picks up
these phone numbers from the database and uses a user interactive
menu and finally at the end of the call stores the details of the calls in a
file or a database?

You can’t directly connect to database through asterisk dialplan but you can use any other language that can like php or perl.
For more details :-
voip-info.org/wiki-Asterisk+AGI

Then Create a call file that will make the call
voip-info.org/wiki/view/Aste … o-dial+out

To get the details of the call you have to access the CDR which can be
stored in database:-
voip-info.org/wiki-Asterisk+cdr+mysql

not true, have at a look at the application ‘MYSQL’. i prefer to use AGI, but this method works perfectly.

not true, have at a look at the application ‘MYSQL’. i prefer to use AGI, but
this method works perfectly.

Yes, you are right. But its a little cumbersome.
As such its more faster than AGI as you are accessing directly in dialplan
and not jumping to an AGI script I think.

But for applications it would be simple to have database access
along with other logic in an AGI file itself.

if you can, i would recommend NOT using call files to initiate the calls.

we are using them on two of our servers to allow ‘click-to-dial’ functionality from our main collections app. it works, but it’s slower (takes around a second or two for asterisk to pick up the file and process it, whereas the socket connection is instant, with no delay) and messier - why write a file if you can just connect over a socket???

i don’t mean to sound negative, but we have to clear out our temporary call file directory every so often, and our client machines will occassionally lose connection to the server (the client’s fault, not the server’s).

also, if you ever ramp this up, you can use a manager proxy to initiate the calls instead of having to have 50 open SMB connections like we do.

i have a full set of manager functions built in PHP already, and have posted the source on here before…i can dig them up if you want.

There are many ways to skin a ra***t.
Asterisk also has many ways to do the same thing.
The Manager API can be used to initiate calls, monitor
asterisk etc.
The AGI application can be used for IVR.
You can create a good Auto-Attendant that can load
custom menus and process the caller responses using AGI.
Manager API’s are also not without its own limitations
voip-info.org/wiki/view/Aste … experience

AGI applications also has its own limitations along with call files.
In your case I think use Manager API to initiate calls as whoiswes
says and then direct the called person to the AGI script and record
his responses in the database.

If any other ways, anybody, plz comment