Setup & CDR Suggestions


I have just started learning the asterisk. I want to setup asterisk which can handle more than thousand calls…

Asterisk should dial a call, collect the response from the called no, and enter it to the database.

I have tried to setup this by writting a agi script which dials a particular number, collects the response (DTMF digit). Now using the manager api i originate a call (which is generated using above agi script).

on particular extension say 123 this agi script is called…

In manager api i use the commands like this…
Action: Originate
Channel: SIP/ivan

The above command call the agi script and asterisk will generate a call to SIP/ivan… I am using the same thing to generate the multiple calls just by changing the channel…


AGI script : AGI script dial the number and play the file…
suppose the user pressed 1 - reject the call if 9 - Play thank you and then hangup the call… Asterisk can generate the CDR, but how can i add this pressed digits (response by user) to the database, to keep the record of user response…

My Questions:

  1. Will this scenario be appropriate to handle more than thousands of calls?
  2. how can i add the given response (DTMF) to the database.
  3. Please suggest me, what can be the best approach to achieve this task?


Jigar Thakkar.

It will work, not sure about 1000 concurrant calls but it will work. To get 1000 calls at the same time youw ill need a very large server.
To get 1000 calls total you can let it run for an hour doing 5-30 calls at a time. You will need something to manage the sending of calls, this is called a predictive dialer. check out a package called vicidial…

Also there should be no need

As for how to store it, I’d have your agi connect to a MySQL database and write the relevant info (number called, result, date/time called, etc).

Thanks a lot for your kind reply…