Predictive Dialer


I’m looking for a predictive dialer system.
I want to load the data to the system with multiple phone numbers, for example;
Name CellPhone WorkPhone
John P. 6784114 6714142
Ang K. 4567114 3125144

Then the system will call both numbers and connect my softphone.

Is there a software like this?


Doubt it.
Where is that data, in some database? It can be done easy with custom script called via AGI.

It may be in MYSQL, SQL Server. It doesn’t important.
I can export data to anywhere.

But is there predictive dialing mechanism in Asterisk?
How can I use AGI?

I’m using PHPAGI

Tell me the whole flow. When I dial “6784114” with my softphone you want a script to dial “6784114” and then “6714142” if nobody pick up the first one? Or dial both phones simultaneously…


let’s forget this scenario and let’s say I just want to create a simple predictive dialing system.
I’m going to export my data and data’s format is like this:

Name Phone
John 6723423
Ang 2344334
… …

So the predictive dialing system calls list and when a line is opened it directs to an agent.
If I can do that then I think the first scenario will be simple…

Something like:


require_once ('phpagi/phpagi-asmanager.php');
$server = "";
$username = "myuser"; // asterisk manager username
$secret = "mysecret";
$trunk = "SIP/myvoipprovider";

// here we have some logic to retrieve the data..
$agent_number = "123";
$client_number = "1122334455";

$manager = new AGI_AsteriskManager();
$con = $manager->connect($server,$username,$secret);

$orig = $manager->Originate("$trunk/$client_number", NULL, NULL, NULL, "Dial", "SIP/$agent_number");

This will dial our client and when it answer the line the call will be redirected to our internal agent.

vicidial is open source class of field for predictive dialers.

I have an old predictive dialer actually that I would love to trade for anything related to Asterisk. It uses a Dialogic board which has nothing to do with Asterisk.

i came across astercc which provides predictive dialing and ACD. it is built using asterisk,php and mysql. it allows you to upload a call list on a web portal and start predictive dialing that bridges answered calls to call queue or dedicated agents. the predictive dialer adjusts speed automatically by agent availability.

the astercc iteself has a free verison which restricts number of concurrent channels.

btw, we then customized it and delivered using SaaS model.

Hello! I would like to add some new contributions to the above topic that might also sound useful for you. If you want to create a predictive dialer system, it’s important to consider related sample programs and source codes. I would recommend you to check it out here: … -voip.html It is based on an sdk providing flexibility with lots of systems and compatibility with many pbxes that many other sdks lack. Hopefully you consider this not as a spam but a useful information helping your job in relation with predictive dialer development.

I rolled my own using python and apache and asterisk call files.

The code I pasted here handles the dial-on-answer side of things, you can easily change it up to do a transfer to an internal extension instead.


For the dialing, I used python instead of php since we’re creating files on the file system, and it’s got more flexibility there. I have a daemon process that is configured via a web interface to parse a MySQL database, build the call files, and move them into the outgoing queue.

There might be more sophisticated solutions out there, but it’s pretty effective and robust.

You should take a look at the the Predictive dialer Suite by Voicent Communications! Call Center Suite

You get all the functionality you need for a call center, including a customer CRM, Call Center Management with reports and agent coaching, it also has the ability to have remote agents in different locations. You should take a look.

If you have questions, feel free to pm me :smile:

You could also have a look at our WombatDialer - it’s even free to use for small systems using no more than two channels.