blog

I.T. Softphone Home: Trunking Skype to Asterisk Without a Sledgehammer

by | May 17, 2013 | Developer Blog | 2 comments

With 50 million concurrent users, it’s hard to ignore Skype as a communications channel. These days everyone has it. My problem with Skype, out of the box, has always been that it’s a nuisance to run Skype software on every computer. Even then, you are tied to the computer. I won’t even start on Skype for Linux and it’s many incompatibilities. I prefer freedom and mobility, just not enough to buy a Rascal scooter. What I wanted was a way to answer Skype calls with my existing telephones.

I recently set upon a new personal jihad: reduce my telecommunications dependency on big cellular. With smartphones costing upwards of $80/mo (~$1000/yr), feature phones $50/mo, and basic residential lines $30/mo, a lot of money can be saved by moving your at-home communications to the ‘net. Sprint so generously gives me 450 minutes every month before they start dinging me $0.45 per minute. As a result my bill can greatly fluctuate upwards, but is never lower than $80 per month.
In stark contrast, I have an account at Flowroute, one of many good Voice-over-IP providers. I pay $1.25/mo for a DID (phone number), and $0.0098 per minute on every phone call. For 450 minutes that comes out to about $6.25. If I go over, maybe it’s eight bones. If I have a wildly excessive month of using the phone, I might even be in the pizza delivery price range. This is acceptable, and calculable, and makes me happy. So much so that I’ve splurged on my own toll-free number (the last four digits are B-E-R-T). It’s just an additional $1.25/mo and $0.02/min. (There is an additional connection cost incurred if called from a pay phone.) I don’t use it much but it’s great to be able to allow friends and neighbors to call me toll-free and not get taken to the ringer by their local telcos. After all, the DID I chose was a number assigned to another county, one which is still considered “long distance calling”, and not just “calling”, by the legacy telcos with their inappropriately named “service areas.” So every month I have unlimited minutes for $2.50 plus 1-2 pennies per minute. For the same $80 that I pay to Sprint each month, I’d get close to 8000 “anytime” minutes here. I may be late to the VOIP party, but that’s not for lack of desire.
So, assuming you have set up Asterisk to handle your incoming calls, why not also for inbound Skype calls? Of course this used to be free, implemented by a software package called Skype For Asterisk, but that method is no longer available. Skype Connect is what you’re looking for now, and it’ll cost you another eight bones every month, paid to Microsoft. It’s a small price to pay to expand your service area, i.e. where you can answer your Skype calls, and allow people to call you via soft phones they’re already using. Here’s how.
Get a Skype For Business account. It’s free. You can use your existing personal Skype account, and it will become the “Skype Manager”. Note, however, that any personal account subscriptions may need to be cancelled to manage it with the business account. For this reason you may want to create a new Skype account just for the purposes of using Skype Manager.
screenshot_area_2013-05-17_08:21:23Next, create a SIP Profile. Skype will charge $6.95 per channel, and each channel allows either one outgoing or incoming call to be made on it. You can leave out the minute bundles for now – I see no reason to prefer Skype for outbound calls over a good VOIP provider anyway. Incoming calls are of course free. Skype will pass the calling user as caller ID, which is pretty nifty, and would allow you to route Skype callers based on your relationship with them.
screenshot_area_2013-05-17_08:30:27Add a business account to the SIP Profile. Skype Managers can create a near-unlimited amount of Skype business accounts (Skype names, really) at no cost. Here I used rj.adams.demo. This will be a dummy account that you will not be able to sign-in with. Once set to receive incoming calls in the SIP Profile, this account will always appear online when added as a Skype contact.
Now you’ll need to set up the trunk in your Asterisk configuration. Input your credentials from Skype SIP Profile settings page. You may be running FreePBX, Asterisk GUI, or no GUI at all.

screenshot_area_2013-05-17_08:37:32

Here I’m using Asterisk GUI, simply because it came with the Asterisk package from Synology, the manufacturer of my NAS.


Asterisk VOIP trunk settings. The account information is fictitious.

Asterisk VOIP trunk settings. The account information is fictitious.


screenshot_area_2013-05-17_08:23:21Once you apply changes to Asterisk, you should soon see “SIP user successfully registered at sip.skype.com” in the Skype Manager “SIP Profile Authentication details” screen.
You will also need to add an incoming calling rule with the pattern being your Skype SIP username. Without this, Asterisk won’t know how to route the call coming from Skype.screenshot_area_2013-05-17_14:59:28
Now it is time to call and remind yourself just how handsome and smart you are. Add your business account as a new contact to your running Skype client, and dial it. If it takes close to a minute to actually reach your Asterisk, don’t fret- this is a problem I and others have experienced as well, but it seems to go away on its own after some time.
Calling my Skype business account on Skype now rings softphones on all of my computers, this desk IP phone (SPA504G), and all phones attached to my house telephone system (via an OBi100 adapter). Skype inserts the caller's Skype name as the Caller ID.

It’s glorious! Calling my Skype business account on Skype now rings softphones on all of my computers, this desk IP phone (SPA504G), and all phones attached to my house telephone system (via an OBi100 adapter). Skype inserts the caller’s Skype name as the Caller ID.


You can now share your business Skype account with anyone you’d like to be able to call you, while receiving those calls wherever you wish to route them, whether you’re in front of a computer or in front of the house.

+ more

Accurate Timing

Accurate Timing

In many tasks we need to do something at given intervals of time. The most obvious ways may not give you the best results. Time? Meh. The most basic tasks that don't have what you might call CPU-scale time requirements can be handled with the usual language and...

read more