Home Cloud & Networking Asterisk 1.6

Asterisk 1.6

books-svg-icon Book
eBook $25.99 $17.99
Print $43.99
Subscription $15.99 $10 p/m for three months
$10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
BUY NOW $10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
eBook $25.99 $17.99
Print $43.99
Subscription $15.99 $10 p/m for three months
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
  1. Free Chapter
    Introduction to Asterisk
About this book
Asterisk is a powerful and flexible open source framework for building feature-rich telephony systems. As a Private Branch Exchange (PBX) which connects one or more telephones, and usually connects to one or more telephone lines, Asterisk offers very advanced features, including extension-to-extension calls, queues, ring groups, line trunking, call distribution, call detail rerecords, and call recording. This book will show you how to build a telephony system for your home or business using this open source application. 'Asterisk 1.6' takes you step-by-step through the process of installing and configuring Asterisk. It covers everything from establishing your deployment plan to creating a fully functional PBX solution. Through this book you will learn how to connect employees from all over the world as well as streamline your callers through Auto Attendants (IVR) and Ring Groups.This book is all you need to understand and use Asterisk to build the telephony system that meets your need. You will learn how to use the many features that Asterisk provides you with. It presents example configurations for using Asterisk in three different scenarios: for small and home offices, small businesses, and Hosted PBX. Over the course of ten chapters, this book introduces you to topics as diverse as Public Switched Telephony Network (PSTN), Voice over IP Connections (SIP / IAX), DAHDI, libpri, through to advanced call distribution, automated attendants, FreePBX, and asterCRM. With an engaging style and excellent way of presenting information, this book makes a complicated subject very easy to understand.
Publication date:
September 2009
Publisher
Packt
Pages
240
ISBN
9781847198624

 

Chapter 1. Introduction to Asterisk

In this chapter, we will look at what Asterisk is and what it can do for us. As we explore features, we can make note of what features will help us to accomplish our goals.

What is Asterisk?

This is a fascinating question—what exactly is Asterisk? There are a number of answers, all of which are accurate.

First, Asterisk is a symbol which is denoted as *. The symbol represents a wildcard in many computer languages. This gives us an insight into the developers' hopes for Asterisk. It is designed to be flexible enough to meet any need in the telephony realm.

Second, Asterisk is an open source software package. Hundreds, if not thousands, of developers are working every day on Asterisk, extensions of Asterisk, software for Asterisk, and customized installations of Asterisk. A big portion of the product's flexibility comes from the availability of the source code. This means, we can modify the behavior of Asterisk to meet our needs.

Finally, and most importantly, Asterisk is a framework that allows selection and removal of particular modules, allowing us to create a custom phone system. Asterisk's well-thought-out architecture gives flexibility by allowing us to create custom modules that extend our phone system, or even serve as drop-in replacements for the default modules.

 

What is Asterisk?


This is a fascinating question—what exactly is Asterisk? There are a number of answers, all of which are accurate.

First, Asterisk is a symbol which is denoted as *. The symbol represents a wildcard in many computer languages. This gives us an insight into the developers' hopes for Asterisk. It is designed to be flexible enough to meet any need in the telephony realm.

Second, Asterisk is an open source software package. Hundreds, if not thousands, of developers are working every day on Asterisk, extensions of Asterisk, software for Asterisk, and customized installations of Asterisk. A big portion of the product's flexibility comes from the availability of the source code. This means, we can modify the behavior of Asterisk to meet our needs.

Finally, and most importantly, Asterisk is a framework that allows selection and removal of particular modules, allowing us to create a custom phone system. Asterisk's well-thought-out architecture gives flexibility by allowing us to create custom modules that extend our phone system, or even serve as drop-in replacements for the default modules.

 

What's new in Asterisk 1.4?


Since the last edition of this book, Asterisk has come out with two major releases—1.4 and 1.6. The new features of Asterisk 1.4 are as follows:

  • Pass through ITU standard T.38 fax calls: Asterisk now supports the passthrough of fax transmissions to a fax machine.

  • IM support for Jabber and Google Talk: IM software that supports the Jingle protocol can now be connected to Asterisk.

  • Whisper paging: This is a new feature of call barging, which allows a user to listen-in on a phone conversation and speak. However, the person listening into the conversation cannot hear the conversation. This feature allows an assistant to talk to someone else in the same office when they're on a call. For example, conveying time-sensitive or important information without the person on the other end hearing what’s being said.

  • Improved sound prompts (English, French, and Spanish): Digium re-recorded all the sound prompts and included higher quality sound files.

  • Generic jitter buffer: In the past, the jitter buffer was developed just for the IAX protocol. In this new release, Asterisk now supports other VoIP protocols such as SIP and TDM interfaces.

  • Shared Line Appearance: This feature mimics the traditional PBX Key Systems, allowing subscribers to share external lines (VoIP, ISDN, PSTN), and also provides status monitoring of the shared line. When a user places an outgoing call using such an appearance, all members belonging to that particular SLA group are notified of this usage. They are also blocked from using this line appearance until the line goes back to idle state or the call is placed on hold.

  • Built-in voicemail system: In the past, you could either store voicemail as files on the Asterisk server or on an external database. Now voicemail can be retrieved through IMAP on any IMAP-compliant storage system. One benefit of this is unified messaging. This means you can now read a message in your email client and once it is marked read, you will see the MWI (Message Waiting Indicator) switched off on your phone.

For a complete list of changes since Asterisk 1.2, visit: http://svn.digium.com/svn/asterisk/tags/1.4.0/CHANGES.

 

What's new in Asterisk 1.6?


Most of the changes in Asterisk 1.6 are enhancement changes that improve the reliability and scalability of Asterisk. The new features of Asterisk 1.6 are:

  • New Bridge feature: In this release, a new Bridge action has been created, which allows a user to connect two existing channels. This functionality will enable the use of advanced features such as in-call announcements and call center monitoring, by a third party.

  • Improved NAT support and support for STUN: This provides improved connectivity capability with phones located behind a router or firewall.

  • Improved reporting: A new call event logging capability was developed to give a more complete tracking of events that take place during a call. This will provide more details than traditional CDR (Call Detail Recording) and allow more granular tracking and auditing.

  • Support for asynchronous events: This enables modules in Asterisk to communicate with each other across a cluster. For example, MWI events could be allowed to be distributed among multiple Asterisk servers. This means it is now possible to have SIP endpoints registered to a different server rather than the one holding their mailboxes.

For a complete list of changes since Asterisk 1.4, visit: http://svn.digium.com/svn/asterisk/tags/1.6.0/CHANGES.

Asterisk is a PBX

Asterisk is a Private Branch Exchange (PBX). A Private Branch Exchange (PBX) can be thought of as a private phone switchboard connecting to one or more telephones on one side, and usually connecting to one or more telephone lines on the other. This is usually more cost effective than leasing a telephone line for each telephone needed in a business.

Extension-to-Extension calls

First, as a PBX, Asterisk offers extension-to-extension calls. This means users can dial from one phone to another phone. While this seems obvious, elementary phone systems are available (often referred to as Key Systems) that support multiple phones and multiple lines, and allow each phone to use any line.

In operation, the handsets do not have individual extensions that can be dialed, and so there is no way to initiate a call from one handset to another. These systems can usually be identified by having a blinking light for all outgoing lines on every telephone. Unlike Key Systems, Asterisk allows for extension-to-extension calls, allowing directed internal communications.

In the previous diagram, each extension (meaning everything to the left of the PBX) can connect to any other extension by dialing it directly. This means if a modem were to send a fax to a local fax machine, it would be done by creating a direct connection between the devices through the PBX.

Line trunking

Secondly, Asterisk offers line trunking. In its simplest form, line trunking simply shares access to multiple telephone lines. These telephone lines are usually used to connect to the global telephone network, known as the Public Switched Telephone Network (PSTN). However, they can also be used as private lines for other phone systems.

These connections can be a single analog trunk, multiple analog trunks, or high-capacity digital connections that allow multiple concurrent calls to be carried on a single connection.

Telco features

Asterisk supports all of the standard features we would expect from any telephone company (or telco). Asterisk supports sending and receiving caller ID and even allows us to route calls based on the caller ID. Using caller ID with the PSTN requires us to subscribe to that feature with our PSTN connection provider.

As expected, Asterisk also supports other features such as call waiting, call return (*69), distinctive ring, transferring calls, call forwarding, and so on. These basic features and more are provided by Asterisk.

Advanced Call Distribution

Asterisk can receive a phone call, look at attributes of the call, and based on that make routing decisions. If enough information is not supplied by our PSTN connection provider, we can ask the caller to input the information using a touch-tone phone.

Once we make a decision on how to route a call, we can send it to a single extension, a group of extensions, a recording, a voicemail box, or even a group of telephone agents who can roam from phone to phone. We can use call queues to serve our customers more effectively while maintaining operational efficiency.

This flexibility gives us the ability to move from having just a phone system, to creating powerful solutions that are accessed through the telephone. Advanced Call Distribution (ACD) empowers us to serve our customers in the best way possible.

One major differentiating factor between Asterisk and other PBX systems that support ACD is that Asterisk does not require the purchase of a special license to enable any of these features. For example, the limit on how many calls can be queued at a time is determined only by the hardware we use.

Call Detail Records

Asterisk keeps complete Call Detail Records (CDR). We can store this information in a flat file or preferably a database for efficient look up and storage. Using this information, we can monitor the usage of the Asterisk system, looking for patterns or anomalies that may have an impact on business.

We can compare these records to the bill that the phone company sends out. They allow us to analyze call traffic, say to run a report to find the ten most commonly-dialed phone numbers. We can also determine the exchange that calls us most frequently so that we can target our marketing to the right area.

Moreover, we can look at the time duration of each call. We can count the number of calls a specific agent answers and compare it with the average. There are many uses of this feature.

Using this information, we can also identify abuses of our long-distance calling service. Employees all around the world misuse long-distance call facilities provided by employers. Asterisk gives us the tools to detect possible misuse. The importance of calling records should not be underestimated. This information is invaluable for a variety of business functions. As many countries operate a national do-not-call list, we can quickly determine if we have called anyone on the list to ensure that our verification and checking processes are adequate.

Call recording

Asterisk gives us the ability to record calls that are placed through the PBX. We can use this to provide training material, as examples of calls that went badly or went well. This can also be used to provide call content to satisfy customers or partners, which could potentially be helpful in a legal situation. It's important to consider this feature when setting up your Asterisk service, as you may have substantial hardware and storage issues to address if your PBX is destined to handle and record a substantial number of calls.

Asterisk provides this feature and it is up to us to determine if it is legal, appropriate, and helpful to use in particular circumstances.

Call parking

For users still used to the old Key Systems, call parking is a great feature that allows you to take a call, place it into a parked slot, and then allow another person in the office to pick up that line by accessing the slot. This process mimics the old Key System approach where you pick up a call, place the caller on hold, and then communicate the line number to another person in the office. Instead of a line number, call parking will give an employee a slot number, which if dialed will allow you to pick up that parked call. The slot number will be communicated to the user transferring the caller into call parking, which is accessed by dialing the call parking feature code.

For example, let's say you receive a call in the front office, but you need to check on something in the back. You don't want to transfer the call to the back office because if nobody is there then the caller might end up in voicemail before you reach the phone. Call parking allows you to place the caller into a parked slot. A slot number will be communicated to you. Now you can take your time to go to the back office, pick up a phone, and dial the slot number. Once it is dialed, you will be reconnected with the caller.

Call barging

This is an excellent feature for managers who are training new employees or for those who want to conduct quality assurance. Call barging allows a user to listen to another conversation currently in progress on the Asterisk server. Through Whisper mode, a manager can even communicate to his employee without the remote user hearing the conversation. This allows the manager to coach the employee on a live call without the customer knowing it.

Asterisk is an IVR system

Interactive Voice Response (IVR) revolutionizes just about every business it touches. The power and flexibility of a programmable phone system gives us the ability to respond to our customers in meaningful ways.

We can use Asterisk to provide 24-hour service while reducing the workload for our employees at the same time. Asterisk allows us to play back files, read text, and even retrieve information from a database. This is the type of technology you come across in telephone banking or bill payment systems. When you call your bank, you hear a variety of recordings and issue commands usually using a touch-tone telephone. For example, you may hear greetings and status messages, along with the messages asking you to type in your account number and other personal information or authentication credentials. You will also often hear personalized information such as your last few transactions or your account balance, which will be retrieved from a database. Systems such as this can be and have been implemented using Asterisk.

Asterisk is a call center system

Through the use of queues, call detail records, and its open source nature, Asterisk has become a popular choice among call centers. Queues allow call centers to handle calls in a controlled fashion by placing callers in a holding pattern until an agent is free to take the call. Music on hold can be customized to play messages that further help advertise a company's products or services while the caller is waiting. Other features such as approximate wait time, position in line, and ability to play an IVR with options (such as allowing a caller to leave a voicemail) are some of the enhanced features a call center will need.

Call detail records can also aid call centers as they contain data that can be sorted and put together by queue statistic applications. Some of these open source statistic applications can identify strengths and weaknesses in a call center's routing strategies. For example, the call detail records can record when a caller has hung up and left the queue before an agent has answered the call. This data can be useful as it can identify average wait time and how often callers become impatient and hang up.

Asterisk, being open source has also opened doors for other open source call center applications to be developed for it. For example, today you will find many CRM and predictive dialing applications working with Asterisk.

Asterisk is a voicemail system

Asterisk has a fully-functional voicemail system included. The voicemail system is surprisingly powerful. It supports voicemail contexts so that multiple organizations can be hosted from the same server. It supports different time zones so that users can track when their phone calls come in. It even provides the option to notify the recipient of new messages through email. In fact, we can even attach the message audio.

Asterisk is a Voice over IP (VoIP) system

Asterisk gives us the ability to use the Internet Protocol (IP) for phone calls, in tandem with more traditional telephone technologies.

Choosing to use Asterisk does not mean that we can use only Voice over Internet Protocol (VoIP) for calls. In fact, many installations of Asterisk do not use it at all. But each of those systems has the ability to add Voice over IP easily, any time, and with no additional cost.

Most companies have two networks—one for telephones and the other for computers. What if we could merge these two networks? What would the savings be? The biggest savings are realized by reducing the administrative burden for Information Technology staff. We can now have a few experts on computing and networking. As telephony will run on a computer and over our IP network, the same core knowledge will empower our staff to handle the phone system.

We will also realize benefits from decreased equipment purchasing in the long run. Computer equipments get progressively cheaper while proprietary phone systems seem to remain nearly constant in price. Therefore, we may expect the cost for network switches, routers, and other data network equipments to continue to decrease in price.

In most current phone systems, extensions can only be as far away as the maximum cabling length permitted by the telephone system manufacturer. While this seems perfectly reasonable, sometimes we would like it not to be so. When using VoIP we can have multiple users using the same Asterisk service from a variety of locations. We can have users in the local office using PSTN phones or IP phones, we can have remote VoIP users, we can even have entire Asterisk systems operated and run separately but with integrated routing.

One way to slash overhead cost is to reduce the amount of office space required. Many businesses use telecommuting for this purpose. This often creates a problem—which number do we use to reach a telecommuter? Imagine the flexibility if telecommuting employees could simply use the same extension when at home as when in the office or even when using their mobile.

VoIP allows us to have an extension anywhere we have a reasonably fast Internet connection. This means employees can have an extension on the phone system at home if they have a broadband connection. Therefore, they will have access to all of the services provided in the office, such as voicemail, long distance calling, and dialing other employees by extension.

Just as we can bring employees into the PBX from their homes, we can do the same for remote offices. In this way, employees at multiple locations can have consistent features accessed exactly the same way, helping to ease the burden of training employees.

But this is not all that VoIP can give us. We can use an Asterisk server in each office and link them. This means each office can have its own local lines, but office-to-office communications are tunneled over the Internet. The savings to be realized by avoiding call tolls can be significant. But there's more.

Once we have our offices linked in such a way, we can handle calls seamlessly, irrespective of which office the employees are in. For instance, if a customer calls Office A to ask about their account, and the accounting department is in Office B, we simply transfer the call to the appropriate person in the other office. We don't have to care about where that other office is. As long as they have a reliable Internet connection, they don't even have to be in the same country.

We can route calls based on cost. If it is more cost effective, we can send our calls to another office, where the remote Asterisk server will then connect them with the regular phone network. This is commonly referred to as toll bypass.

Another benefit of linking our phone systems together is that we can route calls based on time. Imagine we have two offices in different time zones. Each office will probably be open at different times. In order to handle our customers effectively, we can transfer calls from a closed office to the one that is open. Again, as we are using an Internet connection to link the offices, there is no additional expense involved in doing so.

By linking our offices together using VoIP, we can increase our customer service while decreasing our expenses—a true win-win situation.

The existence of all these options doesn't necessarily mean we should be using them. With the versatility of Asterisk, we may use or ignore options as it suits our requirements. If we were to use every single line type and feature that Asterisk supports, it could lead to a very complicated and difficult-to-administer system. We should choose the subset that fits our requirements and would function well within our current communications setup.

Asterisk 1-2-3

Setting up Asterisk and working with configuration files without a database is not intended for a beginner. Originally, Asterisk was not considered an off-the-shelf PBX. However, in recent years all of this has changed.

For those who are looking for an off-the-shelf Asterisk PBX system, Digium created the Asterisk Appliance, a feature-rich PBX solution that's easy to install and manage. The Asterisk Appliance allows users to use traditional analog lines as well as a VoIP service provider.

For those who are just beginners, there is a packaged solution called Trixbox CE (www.trixbox.org). Trixbox CE offers a free single CD installation that installs Linux, Asterisk, a database (MySQL), as well as an easy-to-use web-based interface to create and manage your PBX settings. The installation takes approximately 30-60 minutes and once complete, you have a VoIP server ready to go. However, if you want to connect traditional analog lines to your server, you will need to purchase an FXS/FXO card. Please note that for connecting standard POTS (Plain Old Telephone Service) lines to your Asterisk PBX, you will need to purchase an FXO expansion card called Fonality.

For those of you who are a bit more technically inclined and desire to install each piece of Asterisk individually, you may still want an easy-to-manage interface for your deployment. FreePBX is an easy-to-use GUI (graphical user interface) that controls and manages Asterisk (www.freepbx.org).

Another great resource for those interested in FreePBX is the book called FreePBX 2.5 Powerful Telephony Solutions. You may also visit:

http://www.packtpub.com/freepbx-2-5-powerful-telephony-solutions

Asterisk scalability

In the past, Asterisk was not a solution for those requiring 100 SIP devices or more. However, in recent years major releases have dramatically increased reliability, scalability, and capacity. Today Asterisk servers can support hundreds of extensions and up to 240 simultaneous calls. For example, Asterisk Business Edition has been tested to handle up to 240 simultaneous calls without any issues. However, it being computerized, the speed, capacity, and reliability is fully dependent on the parts that make up the system. For this reason, ensure you have enough hard drive space, RAM, and CPU power to run your Asterisk server. Those of you who will be using a VoIP service provider for origination (receiving incoming calls) and also termination (outgoing calls) supporting SIP/IAX devices on remote networks, please ensure you have enough bandwidth from your ISP.

Asterisk does not run on Windows

At one point, Asterisk had a demonstration CD that worked with Windows. However, Asterisk offered direct from Digium does not run on the Microsoft platform. Asterisk requires near real-time access to system resources. It also requires hooks into certain resources. Actually, Asterisk is built to use Linux, the open source *NIX operating system.

AsteriskWin32 (http://www.asteriskwin32.com) is an open source project that has managed to get Asterisk 1.2.26.2 compiled for Windows. However, it is highly recommended that you stick with Linux as you will find more support for it in the Asterisk community.

 

Is Asterisk a good fit for me?


Looking at what Asterisk is and is not, the natural question follows—is Asterisk right for me? This is a vitally important question that should be given serious consideration. Let's take a moment and look at some of the considerations we must explore before we commit to using Asterisk.

Trade-offs

There are a series of trade-offs we must consider with Asterisk. Choosing Asterisk will lock us into certain choices, while others will be available whether we install an Asterisk server or not. We will now examine some of these trade-offs so that we can gauge the impact they have on us.

Flexibility versus ease of use

Asterisk is a very powerful framework into which we can install almost anything. We can configure each piece of Asterisk to the minutest detail. This gives us an amazing amount of flexibility.

This flexibility comes with a price. Each of these details must be researched, understood, and tried. Each change we make affects other parts of the phone system, whether for good or bad. Asterisk is not an easy-to-use platform, especially for a beginner.

There is a learning curve, but it is one that can be surmounted. Many developers have become experts in telephony and many telephony experts have mastered server administration. But each of us must decide what we expect from our phone system. I like to think of it in three major categories, as outlined in the following table:

Description

Solution

I want to plug in the telephone system and never think about it again. I want to call someone when things are not working. I do not plan to add anything to the system once it is set up.

A proprietary phone system is probably your best bet. Many offer a pre-configured system, and when changes are made, a certified consultant will be required.

I don't know much about phone systems, but I want to learn. I need a phone system soon. I'd like to have flexibility and additional features, and may change the configuration of my phone system from time to time.

Either use a packaged version of Asterisk or have a consultant build a customized Asterisk server. Learn to use Asterisk. Build a couple of Asterisk servers just to explore. Add features as necessary.

I want to learn and build my own phone system. I am interested in creating a custom solution for my problems. I am willing to accept the responsibility if something doesn't work, and take the time to figure out why.

Build an Asterisk server from the ground up. Much will be learned in the process, and the result will be an extremely powerful business tool.

Of course, these are not distinct categories. We each fall into a continuum. It is important to realize that Asterisk, as great as it is, is not the right solution for everybody. Like any technology we implement, we must consider its impact on the business. We must also decide whether it will become something useful that enables us to work better, or whether it will require too much maintenance and other work to make it an efficient addition. This depends entirely on our purposes and the other technology we have that requires our attention.

Graphical versus configuration file management

Asterisk currently uses plain text files to configure most options. This is a very simple way to create, back up, and modify configurations for those who are comfortable with command-line tools.

Some PBX systems offer a GUI to update the configurations. Others don't allow the configuration to be changed except by dialing cryptic code on telephone handsets. Still others cannot be configured at all, except by certified technicians who receive the required software and cables from the phone system manufacturer.

A few good open source tools are being created to ease the management of Asterisk. However, to get the full ability to customize Asterisk, editing of text files is still required. To help get used to this method of configuration, this book focuses on the text files without relying on any GUI package.

Calculating total cost of ownership

Asterisk is distributed as free, open source software. The only costs involved with Asterisk are hardware, right? Well, maybe not.

As we have been discussing, Asterisk is very flexible. Determining how to use the flexibility in the best way can quickly become a huge time sink. Compatible handsets are also not free. If we are going to use the G.729 protocol, which compresses VoIP traffic by a factor of eight while maintaining excellent voice quality, we will also have to pay licensing fees.

With commercial phone systems, the costs are typically higher than with Asterisk. However, they are a fixed, known constant. Depending on the way we use Asterisk, costs can vary greatly.

The total cost of owning Asterisk can also include downtime. If we choose to support Asterisk on our own, and have to work to try to get Asterisk back up after a failure, there is an opportunity cost involved in the calls we should have received. This is why we should choose to support our phone system internally only if we have the appropriate resources to back that up.

Total Cost of Ownership (TCO) is not an easy calculation to make. It involves assumptions of how many times it will break, how long it will take us to get it up and running, and how much the consultants will charge us if we hire their services.

TCO is useful only when comparing phone systems to each other. The following elements should be included when comparing TCO of multiple phone systems:

  • Procurement cost: This is the cost to buy the PBX. In the case of Asterisk, it is only the cost of the hardware; other systems will include an element of licensing.

  • Installation cost: This is the cost to configure and deploy the PBX. Some companies choose to do the deployment in-house. In such instances, there is still a cost, and to enable fair comparisons it should be included.

  • Licensing cost (one-time): This is the cost of any one-time licensing fees. Some PBX systems will require a license to perform administration, maintenance, connection to a Primary Rate ISDN line (PRI), and so on. In Asterisk, this would include the G.729 licensing cost, if required.

  • Annual support cost: This is the estimated cost of ongoing maintenance. Of course some assumptions will have to be made. In order to keep the comparison fair, the same assumptions should be carried over between vendors.

  • Annual licensing cost: Some phone systems will have an annual cost to license the software on the handsets as well as a license to be able to connect those handsets to the PBX.

When we have created the table, we can calculate the TCO for one year, two years, and so on. We can then evaluate our business and decide what costs we're willing to incur for our phone system.

Return on Investment

The cost of owning a phone system is only one piece of the Return on Investment (ROI) puzzle. ROI attempts to quantify an expenditure's effect on the bottom line, usually used to justify a large capital outlay.

Just as an example, one phone system that I installed went into an existing business. Its existing phone system had an automated attendant that had the unfortunate habit of hanging up on customers if they pressed the 0 key, or if they didn't press any key for 5 seconds.

What was the ROI for moving to a new phone system? Not having angry customers who got hung up is a hard value to calculate. According to one of the owners of the business, that value was infinite. That made the cost of Asterisk very easy to justify!

ROI is basically the TCO subtracted from the quantification of the benefit (in money) to the business. Therefore, if we calculated that a new phone system would save $5000 and cost $4000, the ROI would be $1000.

Another interesting calculation to make, which is also categorized as ROI, is the time for the cost to be recouped. This calculation is the one that I find helpful in making a business case for Asterisk.

Suppose a phone system costs $5000 to install. Using toll bypass, you can save a net $500 per month. In 10 months, the cost of installing the system will be swallowed up in the savings.

These are simple examples, but ROI can help to justify replacing an existing phone system. By having these numbers prepared before proposing to replace the phone system, we can have a more professional appearance and be more likely to succeed in starting our Asterisk project.

 

Summary


Asterisk is a powerful and flexible framework, based on open source software. It can be used to create a customized PBX for almost any environment. However, it is not always the best choice for reasons we have just explored. We must consider this carefully in order to be confident that Asterisk is the right choice for our situation. Moreover, we should also ensure that the time and money invested in setting up the Asterisk service is a worthwhile outlay.

Asterisk 1.6
Unlock this book and the full library FREE for 7 days
Start now