Introducing AIM Call Out for Asterisk

Today we’re taking a Margarita Break from our shiny new PBX in a Flash 1.2 server to play with AOL’s new AIM® Call Out. AOL actually introduced the service as an Open Voice API, but it walks and quacks like a SIP termination gateway so that, of course, tempted us to try it. Since it is SIP-compatible, we thought it would be fun to see if we could get it working with Asterisk®. It didn’t take long. This is a great opportunity for all of us that live and breathe Asterisk because of AOL’s huge infrastructure. You can sign up from anywhere in the world and call over 200 countries. Plus, their pricing is competitive. Worst case: It provides another layer of redundancy for every Asterisk-based telephony system. Complete rate table is available here.

Prerequisites. If you want to follow along with our five-minute setup, then you’ll need a LAMP-based Asterisk server with FreePBX. PBX in a Flash, trixbox, and Elastix all should work. You’ll also need an AOL account if you don’t already have one. Then you’ll need to sign up for the AIM Call Out service before we reconfigure a trunk in Asterisk to support the AOL offering. Nothing in the AIM Call Out Terms of Service precludes use with Asterisk so long as it is for home or small business use and not for resale of phone service. This is not legal advice, blah, blah, blah…

Getting Started with AIM Call Out. If you don’t already have an AOL account, you can sign up for free. Or just pull out one of the thousands of CDs they mailed you and register. Once you have an AOL account name, head over to the AIM Call Out web site and register for the service. Don’t use your AOL password for your AIM Call Out service. After all, this is SIP. You will need a credit card because you’re signing up for pay-as-you-go minutes. Five bucks will get you started. The published rates are reasonable at 1.7¢ per minute for U.S. calls and 2¢ per minute to Canada, Mexico City, England, China, Germany, and Australia. We used the word “published” advisedly…

AOL Math: 1.7 + .3 = 4   AOL has taken a page from Ma Bell in terms of creative mathematics. With each call, AOL first rounds UP the time of the call to the next minute and then rounds UP the total price to the next penny. Here’s the way their Terms of Service describe it: “For point of clarity, the rounded up minutes are multiplied against the current rate effective at the end of the call (generally based on the location the call is placed) and then rounded up to whole cents (USD).” So a 70-second call in the U.S. (which should cost under 2¢ at 1.7¢ per minute using Plain Old Math) actually is billed to you at 4¢. Charitably speaking, it’s creative to advertise the cost of a call in the U.S. as 1.7¢ per minute with all the rounding that is taking place. For short calls, it can be more than double that rate once you factor in AOL’s double rounding. In our example, the 70-second call is first rounded up to 2 minutes. And then the cost of the call is computed at 3.4¢ for the already rounded up call. Then the 3.4¢ computation is rounded up to 4¢. So you see 1.7 + .3 really does equal 4 in the bowels of AOL. And welcome to a class action law suit about a year down the road if we were betting. You’d think the bean counters would learn sooner or later that you can’t publish a 1.7¢ per minute rate in the headlines and then bury a very different pricing scheme in the fine print. Ma Bell, of course, turned rounding into an art form, and AOL has simply picked up where the Baby Bells and the cell phone companies left off. And, lest we forget, six months of non-use, and your minutes (and money) disappear just like with Skype. There also are some weird rules about how much money you can spend for the first several months of use. That’s probably a good thing. They get to watch how you behave, and you get to carefully evaluate their service and performance. In the meantime, please join us in asking AOL to clean up their act and return to performing simple addition the old-fashioned way. </whining>

Now, where were we? Once your account is set up, you’ll need three pieces of information: your userid, your password, and the name of the AIM SIP gateway: sip.aol.com:5060.

Configuring an AOL Trunk in FreePBX. With relatively recent versions of FreePBX, there are two steps to get your new termination service with AIM Call Out functioning. We need to add a Trunk. And then we need to add an Outbound Route to your dialplan. To add the new trunk, click on Setup, Trunks, Add SIP Trunk in the FreePBX web interface. You can leave the General Settings, Incoming Settings, and Registration blank for now because AOL won’t let you set your CallerID and AOL won’t sell you a DID… yet. You might want to include your CallerID info just so it’ll be there if AOL ever enables the feature. For now, when you dial out through AOL, your callees will get a number displayed which, if called, plays a 30-second ad for the AIM Call Out service and then hangs up.

For the Outgoing Dial Rules, we set up our AOL service so that we dial a 6 prefix to use AOL. Then you must dial a “1″ and area code and number in the U.S. to complete a call. For other countries, you’d dial the country code, city code, and number. So our entry for U.S. calls looks like this:

6|1NXXNXXXXXX
6|1+NXXNXXXXXX

The important piece to get things working is the Incoming Settings. Name the trunk AOL or whatever you prefer. The remaining PEER Details should look something like the following using your userid and password obviously:

dtmfmode=rfc2833
host=sip.aol.com
insecure=very
nat=yes
secret=YourPasswordHere
sendrpid=yes
type=friend
username=YourAOLaccountname@aim.com

Once you save your trunk settings and reload the dialplan, then choose Setup, Outbound Routes, Add Route. Again, we’re using a dialing prefix for this service so you’ll want to be sure you move the route toward the top of your list of outbound routes when you’re finished to make sure it snags all outbound calls starting with 6 and 10 or 11-digit numbers. Here are our settings for the outbound route:

Route Name: aol
Dial Patterns:
61NXXNXXXXXX
6NXXNXXXXXX
Trunk Sequence: SIP/AOL

Save the settings and then move the outbound route to the top of your route listing. Then reload the FreePBX dialplan, and you’re done.

Overall Impressions. We’d rate the service and call quality as pretty good based on a quick look. The pricing is reasonable except on very short calls, and the Terms of Service aren’t overly offensive. In fact, if we were betting, we’d predict that AOL will offer an all-you-can-eat plan in the very near future. For now, when your call credit is getting low, you will get an email as well as a whispering voice in your ear that you’re about to run out of minutes. Could be worse. We also had no problem placing multiple, simultaneous outbound calls through the service. That’s good news for Asterisk users. For an excellent review and some good tips on AIM Call Out generally, see Dan York’s blog. Enjoy!


Late-Breaking News Flash. Ben Sharif’s PiaF Without Tears tutorial (all 208 pages) has just been released. Forget about the contents. You know that’ll be terrific like all of Ben’s previous works. But wait until you see the cover!

PBX in a Flash 1.2 Update. The response to PBX in a Flash 1.2 continues to be a bit overwhelming. If you read last week’s article, you already know that, for the first time, there now is a turnkey LAMP install that supports 32-bit and 64-bit versions of CentOS as well as the latest 32-bit and 64-bit releases of Asterisk 1.4 and Asterisk 1.6-beta. Now’s your chance to really do some experimentation. The performance of the 64-bit install is eye-popping on both a dedicated machine and running under VMware. And the Asterisk 1.6 beta has some new features that are well worth a careful look. Don’t use it in a production environment obviously!

For the first time, you now have to be careful in loading new applications because many 32-bit apps don’t play nicely (or at all) on a 64-bit version of Asterisk and CentOS. Here’s a gotcha that you need to watch out for. You can’t use a 32-bit version of Cepstral or a 32-bit Cepstral voice on a machine running the 64-bit version of PBX in a Flash. And you can’t load the Asterisk 1.4 interface to Cepstral on a machine running Asterisk 1.6-beta. So… we have reworked our tutorial on Cepstral to reflect the proper download locations for all four new flavors of PBX in a Flash 1.2.

And, of course, Digium® has broken some applications that worked just fine under Asterisk 1.4. In the next few weeks, we will provide a road map for all the Nerd Vittles applications and what it takes to get them running under Asterisk 1.6. But, if you want the short answer, everything including MailCall works on both 32-bit and 64-bit versions of Asterisk 1.4. And everything including MailCall works on 32-bit and 64-bit versions of Asterisk 1.6 once you execute the following command after installing all of the Nerd Vittles apps you wish to use. MailCall takes some special care to set up. See this message thread.

sed -i 's|\||\,|g' /etc/asterisk/extensions_custom.conf

One might ask why it was necessary to (again) ruin existing dialplans by changing vertical bars to commas. Another brilliant performance enhancement in Asterisk 1.6 courtesy of Digium and the Asterisk Development Team. NOT!


Some Recent Nerd Vittles Articles of Interest…

Be Sociable, Share!

4 Responses to “Introducing AIM Call Out for Asterisk”

  1. Mike says:

    Ward, Great article as usual!!! & Happy Cinco de Mayo !

  2. Lester Vecsey says:

    Ideally the rate list should be kept up to date at voip-info.org as a file that can easily be brought into asterisk. Then you can have a macro rule to decide which outgoing service to use automatically.

  3. Ken says:

    When I checked the rates, it said the rates for calling to the U.S were as little as 0.017 cents / minute. Maybe they changed them since you posted this article?

    Anyway, I have my system configured but I am getting one-way audio, outbound only. Any ideas?

  4. Sonu says:

    Very Nice article. I cant afford to miss any article of yours. Great Work !!
    I have a question. In this article, it is said that INCOMING SETTINGS are very important and then provided are the details of OUTGOING SETTINGS for AOL Trunk. For Ex, the name of the trunk and PEER Details are part of the Outgoing Settings and for Incoming Settings the details to be filled are User Context and User Details. I was confused. I put it in outgoing rules and now the dialing doesn’t work from my x-lite. Kindly help !! BTW, i am using the latest FreePBX (for PIF).

Ringbinder theme by Themocracy