Asterisk: The new Age Telephone

Asterisk: The new Age Telephone

Asterisk: The New-Age Phone Service?

Are you looking for a professional phone system without the professional price? Perhaps a professional
auto-attendant phone system with bells and whistles that rivals most of the traditional corporate phone systems? Look no further, Asterisk can provide this for you, using a computer that you probably already own! Not a business? That’s OK! This system can be used to enhance your home phone service as well!

Telephone Options in Rochester

Ever since I can remember, Rochester Telephone (now known as Frontier) has been providing telephone services to the Rochester area. At the time, residents looking for telephone service had no choice but to call the telephone company. Likewise, residents looking for cable TV service would need to contact the cable company. Today, satellite TV is challenging the cable TV market, just as other services are now challenging the market once monopolized by the “telephone company”.

Today, if you wish to obtain telephone service for your home, you can choose a traditional phone line with Frontier or Choice One, a “digital phone” with Time Warner, VoIP (Voice over IP) service over your existing broadband Internet connection by using Vonage ( <>) or Broadvoice ( <>) (just to name a few), or install your own PBX (Private Branch eXchange) system. Of course, the PBX system (whether hardware or software) still needs a connection to the PSTN (Public Switched Telephone Network) by some means, such as a T1 (traditional phone line with 24 channels), PRI (a T1 with 1 channel dedicated to Caller-ID and other signaling), standard POTS (Plain Old Telephone Service) phone lines, or VoIP. Hardware PBX systems have traditionally commanded a very high purchase price, while software PBX systems not only required a fast computer and expensive telephony cards, but overpriced software as well! However, with the drop in prices of P-III hardware and the introduction of Asterisk, the software based PBX is much more viable.

Introducing Asterisk

What is Asterisk? I’m glad you asked! Asterisk is a software PBX system that runs on modest computer hardware with add-on cards, and provides many advanced PBX functions that would otherwise cost thousands of dollars!

Asterisk was originally created by Mark Spencer, founder of Digium, Inc ( <>) out of his own need for a low cost PBX system. Digium, Inc is the provider of hardware telephony cards for use with Asterisk. While Asterisk was originally developed for use with Linux, with a little extra work it can also be installed on Mac OSX, OpenBSD, FreeBSD, and probably any other flavor of a UNIX-like operating system. Being that Asterisk requires Linux (or the like), and most likely does not run on Windows, it’s mostly been a product for corporate use, or for the use of a “techno-geek”. However, with the recent release of “Asterisk@Home” ( <>), you can now install a Linux operating system, Asterisk, and a slew of pre-configured web-based tools from one bootable CD in a few minutes! So now that installing it is easy, let’s find something to do with it!

Connectivity Options (FXO)

Asterisk provides a PBX platform in software with pluggable modules that can expand it with protocols and codecs as new technologies arise. While Asterisk can support VoIP without any hardware cards, few people will find it useful without being able to bridge into the traditional telephone network. Early on in Asterisk’s development, Mark Spencer formed Digium to provide inexpensive hardware telephony cards for use with Asterisk.

Illustration 1: Digium’s TE411P, T1/E1 Card

To connect your new Asterisk PBX system to a traditional telephone system, there are many options. With an FXO (Foreign eXchange Office) card, you can plug it into your standard home phone line, and configure it to act like a fancy answering machine. With a Digium T1/E1 card (E1 is a European standard, comparable to our T1), you can connect your Asterisk system to a line from Frontier, Time Warner, PaeTek, and likely many others. However, these are not the only options! Just like a home user can use one of the standard telephone connections, or a VoIP provider, Asterisk can also use both options.

In the world of VoIP, Asterisk supports the older H.323 protocol, the SIP standard protocol, as well as its own IAX (Inter-Asterisk eXchange) protocol, which is much more efficient and less prone to problems with NAT (Network Address Translation) based firewalls. Once your system is connected to the PSTN, you can accept regular phone calls placed to your telephone number, and your callers will likely not know the difference! Well, all except for the fancy greetings and prompts you might create.

With VoIP service, you are not bound by the geographic limitations as with regular phone service. If you have a relative in California, you can easily obtain a San Diego based phone number, and have your Asterisk server in Rochester register with this service. Your friend in California may then call you by dialing a local phone number!

Human Interface Options (FXS)

Illustration 2: Digium’s TDM400P Modular FXS/FXO Card

All is well and good now that you can accept phone calls, but now that the calls are in your new Asterisk system, what can your callers do? How can you talk to them? What about you placing calls? Just as Asterisk offers many options for bringing calls into its switching logic, there are also many ways to get them out. These methods can be broken down to Hardware and Software: let’s look at them separately.

Most telephone calls will use a standard corded or cordless phone. Asterisk also supports this through an FXS (Foeign eXchange Subscriber) card, one of which is manufactured by Digium. After installing the card, and configuring Asterisk to use it, inbound phone calls can ring any standard telephone that’s attached to it. The modular 4 port TDM card from Asterisk allows you to mix at will any combination of 4 FXS or FXO modules on a card. With a good 6 PCI slot motherboard in your PC, you can fit 5 cards with 4 FXS ports, and another card with 4 FXO ports or a T1/E1 card to provide outside connectivity. With this type of hardware, you can easily configure a single PC to provide 20 separate extensions in your home or business, all without purchasing a channel bank! Of course, if you wish to use a T1 card in conjunction with a channel bank, Asterisk supports this, too.

Illustration 3: Digium’s IAXy

There are still other hardware options. You can choose to take VoIP straight to the users’ desk, and avoid having to string separate wires around your office for telephone lines. The Grandstream BudgeTone IP phone uses the SIP protocol to talk to an Asterisk PBX server. Another VoIP hardware solution comes from Diguim themself. The S101i, also known as the “IAXy”, is a small little box that has an ethernet port and a standard telephone jack in it. This little device talks to Asterisk with its own native IAX protocol, and allows you to connect a standard telephone device of your choosing to the other end. With either of the two devices, you can easily take a phone with you on vacation, plug it to any broadband Internet connection, and use it as if you never left your home or office! That’s the power of Asterisk!

All of this is pretty neat, but perhaps you already have to bring your laptop when you travel, why bring yet another device? Just like Asterisk is a PBX in software, you can also use a telephone in software. A quick Google search will turn up things like DIAX ( <>), and Firefly ( <>) for Windows IAX clients, IAXComm ( <>) for Win32, Linux and Mac OSX, as well as Xlite ( <>) for Win32, Linux and Mac OSX using the SIP protocol. While I always prefer an IAX based client, any of these clients can allow you to make and take phone calls from your laptop just as with any hardware phone you may connect to your PBX system. As a matter of fact, you can configure your “extension” to ring a physical phone, a SIP phone, and IAXy, and your laptop at the same time, then you can choose which device to answer the call with! Again, that’s the power of Asterisk!

Call Routing and Features

Besides the VoIP features, doesn’t this sound just like an average PBX system? Yes, and no. Asterisk offers many of the traditional PBX system features, as well as many advanced features usually found in very pricey PBX systems. Some of these features are: auto-attendant, voicemail, fax, IVR (Interactive Voice Response), E911, call monitoring, call queuing, call recording, blacklists, dial by name, DISA (Direct Inward System Access), macros, predictive dialer, transcoding, SMS messaging, CTI (Computer Telephony Integration), remote call pickup, etc. The list of features rivals many enterprise level phone systems not only in features, but also in cost and expandability.

An Asterisk based system can be complete with just one PC, but can also be “clustered” with extensions spread across multiple servers. With the ENUM based DUNDi ( <>) protocol, multiple Asterisk systems can “advertise” to each other what phone numbers or extensions it can provide access to. Appropriately, DUNDi stands for Distributed Universal Number Discovery, and works like a distributed phone book. When a user on one server dials an extension that exists on another server, a properly configured Asterisk system will automatically know which server to contact to complete the call. For a company with multiple locations, this can significantly reduce the initial costs of configuring and well as the ongoing costs of maintaining their dialplan.

Provider Costs

With the host of protocols that Asterisk supports, there are many options for providers. Since any corporate PBX system can support a T1/E1 connection, many people are familiar with the associated costs. For this reason, let’s investigate the VoIP options.

VoIP connections are not fixed connections. As such, you can use one (or more!) provider for inbound calling and another provider for outbound calling. Asterisk can even choose a provider for outbound calls based on time of day and least cost routing!

Personally, I have chosen VoicePulse ( <>) for my inbound calls, as they use the Asterisk-native IAX protocol. I signed up with them, registered a phone number in the Rochester area and configured Asterisk to register itself with their servers. After these steps, anyone can call this phone number and be connected to my Asterisk box. As long as I keep paying my monthly fee (currently $11/mo for unlimited inbound calls!), the calls can flow. As if this already wasn’t a good deal, they allow you yo have 4 simultaneous inbound calls to the same phone number, and each call can be routed separately to any extension on your PBX!

Broadvoice ( <>) offers a similar plan for $9.99+taxes (almost $12/month) with the SIP protocol, except they also offer unlimited outbound calling in your home state! Unfortunately, the closest exchange to Rochester is in Batavia, and is a long distance call for most people in Rochester. However, to optimize your value, you could combine the two to give yourself unlimited inbound and outbound calling in NY State for ~$23/month. While this sounds similar to other plans offered by local providers, remember that you can have multiple simultaneous inbound and outbound calls at the same time, on different internal extensions. Additionally, there are many other providers that use the IAX protocol to provide outbound calling within the United States for anywhere between 1.2c/min to 2c/min. These providers vary in quality, and the “higher priced” providers are usually more reliable. When compared to the typical Sprint, MCI and ATT rates of about 10c/min, this also sounds like a great deal.

To be fully functional, your Asterisk server should be connected to the PSTN with one of the described options. However, it does not have to be connected to a public network at all. You can simply connect 2 or more to each other to connect remote offices with only an Internet connection to each.

Telephony Future

The original telephone “numbers” were actually letters. We quickly converted to a numerical based system where each section of the number represented a more specific geographical location. This creates limitations in the amount of phone numbers that can be assigned in each area, and also explains why area codes are being split to accommodate for the increasing demand for phone numbers. Additionally, with geographic ties to each phone number, if you choose to move out of state, you have no option but to obtain a new phone number.

VoIP in its raw form is a direct connection over the Internet, and a SIP call can be placed by typing what looks to be an email address. For example, Wyle E. Coyote can order an anvil from the sales department of Acme Corp. by directing a SIP call to With this method identifying the intended recipient of the phone call, we’re truly lifting the lid off the jar of “phone numbers” while also removing the geographical limitations. Perhaps the phone number of the future is not a number at all!


All of this may sound very complex. Admittedly, I’ve described some advanced telephony features and configurations. However, this is to underscore the power of the Asterisk PBX. This system is not a cheap replacement for, or a way out of a real phone system… it is a real phone system, and has many very powerful features built in. Even still, for less than $200, you can purchase a 2 port Digium card locally, install Asterisk, and start experiencing the power of running your own PBX system! Once you decide to connect it to the outside world, you merely need to find a provider that you like, and go. The costs of some of these providers are listed above under “Provider Costs”. Given the power harnessed in this humble piece of software, any new company, or any company looking to enhance their current phone system with the power of VoIP should take a look at Asterisk. So, go ahead… play with Asterisk and be amazed!

For more information:

Software and informational links:

Asterisk ( <>) ( <>)

Hardware manufacturer:

Digium, Inc ( <>)

Local hardware reseller:

Switzer Business Solutions, LLC ( <>)

Asterisk compatible service providers:

VoicePulse ( <>)

Voxee ( <>)

VoipJet ( <>)