Installing ADA (Asterisk Desktop Assistant) on Elastix

May 11, 2010

Formerly SnapANumber, ADA is now offered by Digium. However, the first thing that you’ll notice is that it was written for their Asterisk Business Edition.

That’s great if you have ABE, but not so good if you’re one of the millions of installs out there that uses vanilla Asterisk.

This guide presumes you already have ADA downloaded and installed. If not, you can get the latest (At the time of writing) version 1.1 from here:


Now you’re going to ignore any instructions you’re previously read, and we’ll start from scratch. Don’t worry, you’ll be up and running in a matter of moments!

Once ADA is downloaded, installed and running, you should be greeted with a login window.

What you now need is the “manager” user to be setup.

The “manager” user is different from your regular extension, in that it allows you to control the actions of Asterisk. With this in mind, you need to be careful when setting up an Ext, not to have a weak password, and make sure you use the permit / deny lines, even for remote extensions. You can get a password generated for you here: http://www.thebitmill.com/tools/password.html

From the shell, we’re going to edit /etc/asterisk/manager_custom.conf like this:

nano -w /etc/asterisk/manager_custom.conf

You’re now going to create a new entry with the following details, in my case I’m Ext 199:

read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user

Now you need to create a manager user for every Ext that will be using ADA. This is because ADA uses the username part as the Ext for it to ring to connect the call to.
Without it, it would be the same as you dialing the number, and the system just sitting there, holding it.

Ctrl + X to quit nano, and you can safely get your ADA desktop client to login with the username: Ext@asteriskIP

In my case it would be something like: 199@

Use the password you specified above in the manager user, and not your regular SIP Secret.

If you find you’re unable to connect, confirm that you’ve got the right password, and adjust the “permit=” line as applicable. I would highly recommend leaving it in there and just adjusting it for your IP range. Same goes for external or remote clients, make sure that you have their IP Address.

Now that you’ve done that, you need to hook ADA into your dial-plan.

Again, the standard documentation is no good here, so, we’re going to edit another file:

nano -w /etc/asterisk/extensions_custom.conf

At the top of this file (Well under the first tow lines of comments) we’re going to add in the following:

include => from-internal

Then hit Ctrl + X and follow the prompts to save and quit.

Again the standard documentation is no good for us there, as the “ADA” context is actually “ada” in lower case, and we’ll use the “from-internal” instead of “default”.

Now you need to refresh the dial-plan (Just this once) so run this:

asterisk -rx 'dialplan reload'

You’re now all good to go! On your ADA desktop client, you can create a test call! It’s easiest to test to another Ext in my opinion, so enter in the Ext # of another extension on the system and hit “enter”.

What should happen:

Your phone will ring immediately

You pick it up and will hear ringing, the destination phone should now also be ringing


If this has helped you in any way, please leave a comment and say Hi.





  1. Thanks Chill ! it works

    • Excellent stuff 🙂 Glad to hear I could help!

  2. Grazie Chill, tentero di seguire le istruzioni su elastix

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: