Help building asterisk auto-dialer

History Summary: We have been working to build an outbound dialer/auto-dialer that can be used by our marketing team. We know there are some 3rd party dialing softwares out there but we would like to build ours directly from the Asterisk platform using the API included with Asterisk.

We have figured out how to make a call to an agent, place them in a dynamically created meetme room and update a database making the agent available and waiting.

We can make outbound calls and connect them to the meetme room however this only happens when there is any type of answer even answering machine, disconnect or other.

Since we use the originate API command we cannot detect the status of the call and in turn we are not able to update the database for the discarded calls which is very important for us to correctly disposition our calls.

Basically the main issue is the call status detection (ie: answering machine detection, disconnected numbers, busy signal and human detection).

Basically here is how it works:

Call XYZ # and wait for answer

  • if no answer then hangup
  • if answer then run script

What we want to do is the following. If anyone has any suggestions on how to accomplish this and possibly point us in the right direction that would be great.

We want the call to our customers in a seperate process that does not have any attachment to an agent when the call starts, this process will detect some variables like ratio etc so we don’t break any rules, but basically it just calls number after number. That same process will detect the status of the call, no answer, busy, disconnected, answering machine or human answer. Based on the status it will disposition the call details in the database and if there is a real answer, this process would call another script that will pop-up the lead on the agents screen.

We can take care of all the scripting without any problems but we need to understand the process of how to do this as we have not been able to find an example that correctly demonstrates how.

Thank you in advance for your time,


I just need some direction, anything a URL, article or something else that we can read and learn from would be great.

Thank you.

Try taking a look at this.
This is what we use in our call centres and works very well. This seems to work in the same way as your describing. Either use it as it is and save yourself a whole load of development work.
Or use it to give yoursaelf an idea of how to write the code.

It is based on asterisk by the way and is open source so dont cost anything either.

Regards … -Detection