Building Telephony Systems With Asterisk

There is a newer version of this book available - Asterisk 1.6
Building Telephony Systems With Asterisk
eBook: $17.99
Formats: PDF, PacktLib, ePub and Mobi formats
save 50%!
Print + free eBook + free PacktLib access to the book: $47.98    Print cover: $29.99
save 37%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Table of Contents
Sample Chapters
  • Install, configure, deploy, secure, and maintain Asterisk
  • Build a fully-featured telephony system and create a dial plan that suits your needs
  • Learn from example configurations for different requirements

Book Details

Language : English
Paperback : 176 pages [ 235mm x 191mm ]
Release Date : September 2005
ISBN : 1904811159
ISBN 13 : 9781904811152
Author(s) : Barrie Dempster, David Gomillion
Topics and Technologies : All Books, Networking and Servers, Linux Servers, Networking & Telephony, Open Source

Table of Contents

Chapter 1: Introduction to Asterisk
Chapter 2: Making a Plan for Deployment
Chapter 3: Installing Asterisk
Chapter 4: Configuring Asterisk
Chapter 5: Creating a Dialplan
Chapter 6: Quality Assurance
Chapter 7: Asterisk@Home
Chapter 8: Case Studies
Chapter 9: Maintenance and Security
  • Chapter 1: Introduction to Asterisk
    • What is Asterisk?
      • Asterisk is a PBX
        • Station-To-Station Calls
        • Line Trunking
        • Telco Features
        • Advanced Call Distribution
        • Call Detail Records
        • Call Recording
      • Asterisk is an IVR System
      • Asterisk is a Voicemail System
      • Asterisk is a Voice over IP (VoIP) System
    • What Asterisk Isn't
      • Asterisk is Not an Off-the-Shelf Phone System
      • Asterisk is Not a SIP Proxy
      • Asterisk Does Not Run on Windows
    • Is Asterisk a Good Fit for Me?
      • Trade-Offs
        • Flexibility versus Ease of Use
        • Graphical versus Configuration File Management
      • Calculating Total Cost of Ownership
      • Return on Investment
    • Summary
  • Chapter 2: Making a Plan for Deployment
    • The Public Switched Telephony Network (PSTN)
      • Connection Methods
        • Plain Old Telephone Service (POTS) Line
        • Integrated Services Digital Network (ISDN)
        • T1 or E1
        • Voice over IP Connections
      • Determining Our Needs
    • Terminal Equipment
      • Types of Terminal Devices
        • Hard Phones
        • Soft Phones
        • Communications Devices
        • Another PBX
      • Choosing a Device
        • Features, Features, and More Features…
        • Determining True Cost
        • Compatibility with Asterisk
        • Sound Quality Analysis
        • Usability Issues
      • Recording Decisions
    • How Much Hardware do I Need?
    • Choosing the Extension Length
    • Summary
  • Chapter 3: Installing Asterisk
    • Preparing to Install Asterisk
    • Obtaining the Source Files
    • Installing Zaptel
    • Installing libpri
    • Installing Asterisk
    • Getting to Know Asterisk
    • Summary
  • Chapter 4: Configuring Asterisk
    • Zaptel Interfaces
      • zaptel.conf
        • Lines
        • Terminals
      • zapata.conf
        • Lines
        • Terminals
    • SIP Interfaces
    • IAX Interfaces
    • Voicemail
    • Music On Hold
    • Queues
    • Conference Rooms
    • Summary
  • Chapter 5: Creating a Dialplan
    • Creating a Context
    • Creating an Extension
    • Creating Outgoing Extensions
    • Advanced Call Distribution
      • Call Queues
      • Call Parking
      • Direct Inward Dialing (DID)
    • Automated Attendants
    • System Services
    • Summary
  • Chapter 6: Quality Assurance
    • Call Detail Records
      • Flat-File CDR Logging
      • Database CDR Logging
    • Monitoring Calls
    • Recording Calls
    • Legal Concerns
    • Summary
  • Chapter 7: Asterisk@Home
    • CentOS
    • Preparation and Installation
      • The Asterisk Management Portal (AMP)
        • Maintenance
        • Setup
        • Flash Operator Panel (FOP)
        • Flash Operator Configuration Files
      • Web MeetMe
      • Flexibility When Needed
    • A Simple One-to-One PBX
      • Extensions
      • Trunks
      • Routes
    • Customer Relationship Management/SugarCRM
      • Adding Contacts
      • Call Scheduling
      • Administration of SugarCRM
        • Configure Settings
        • User Management
      • User Roles
    • Summary
  • Chapter 8: Case Studies
    • Small Office/Home Office
      • The Scenario
      • The Discussion
      • The Configuration
        • zaptel.conf
        • zapata.conf
        • musiconhold.conf
        • voicemail.conf
        • modules.conf
        • extensions.conf
      • Conclusions
    • Small Business
      • The Scenario
      • The Discussion
      • The Configuration
        • zaptel.conf
        • zapata.conf
        • musiconhold.conf
        • agents.conf
        • queues.conf
        • sip.conf
        • meetme.conf
        • voicemail.conf
        • extensions.conf
      • Conclusions
    • Hosted PBX
      • The Scenario
      • The Discussion
      • The Configuration
        • zaptel.conf
        • zapata.conf
        • musiconhold.conf
        • sip.conf
        • voicemail.conf
        • extensions.conf
      • Conclusions
    • Summary
  • Chapter 9: Maintenance and Security
    • Backup and System Maintenance
      • Backing Up Configurations
      • Backing Up Voice Data
      • Backing Up Log Files
        • Backup Scripts
      • Time Synchronization
        • Adding It All to cron
      • Rebuilding and Restoring the Asterisk Server
      • Disaster Recovery Plan (DRP)
    • Asterisk Server Security
      • Internal Access Control
    • Host Security Hardening for Asterisk
      • Integrity Checker
      • Root-Kit Detection
      • Automated Hardening
      • Role Based Access Control (RBAC)
    • Network Security for Asterisk
      • Firewalling the Asterisk Protocols
        • SIP (Session Initiation Protocol)
        • H.323
        • IAX
        • RTP—The Real-Time Transport Protocol
      • Controlling Administration of Asterisk
    • Asterisk Scalability
      • Load Balancing with DNS
    • Support Channels for Asterisk
      • Mailing Lists
      • Forums
      • IRC (Internet Relay Chat)
      • Digium
    • Summary

Barrie Dempster

Barrie Dempster is currently employed as a Senior Security Consultant for NGS Software Ltd a world-renowned security consultancy well known for their focus in enterprise-level application vulnerability research and database security. He has a background in Infrastructure and Information Security in a number of specialised environments such as financial services institutions, telecommunications companies, call centres, and other organisations across multiple continents. Barrie has experience in the integration of network infrastructure and telecommunications systems requiring high calibre secure design, testing and management. He has been involved in a variety of projects from the design and implementation of Internet banking systems to large-scale conferencing and telephony infrastructure, as well as penetration testing and other security assessments of business critical infrastructure.

David Gomillion

David Gomillion currently serves as Director of Information Technology for the Eye Center of North Florida. There, he orchestrates all of the technological undertakings of this four-location medical practice, including computers, software (off-the-shelf and custom development), server systems, telephony, networking, as well as specialized diagnostic and treatment systems. David received a Bachelor's of Science in Computer Science from Brigham Young University in August, 2005. There he learned the theory behind his computer experience, and became a much more efficient programmer. David has worked actively in the Information Technology sector since his freshman year at BYU. He has been a Networking Assistant, an Assistant Network Administrator, a Supervisor of a large Network and Server Operations unit, a Network Administrator, and finally a Director of Information Technology. Through his increasing responsibilities, he has learned to prioritize needs and wants, and applies this ability to his Asterisk installations.

Code Downloads

Download the code and support files for this book.

Submit Errata

Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.


- 7 submitted: last submission 06 Jan 2012

Errata type: Typo | Page number: 75

{exten should be {EXTEN



Errata type: Typo | Page number: 76

{exten should be {EXTEN



Errata type: Typo | Page number: 77

{exten should be {EXTEN



Errata type: Typo | Page number: 78

{exten should be {EXTEN



Errata type: Typo | Page number: 133

In the example part of aa.incl the last line reads:" exten => 100,1,Macro (stdexten,100@aa,SIP/al100); Only AA extension". If this example is to route to Auto Auction extension it should read the following: "exten => 100,1,Macro (stdexten,100@aa,SIP/aa100); Only AA extension". The previous example routes the call to Al Getrich (al100).



Errata type: Typo | Page number: 140

Line 19: The character ' should be `



Errata type: Typo | Page number: 150

In the chapter for maintenance and security, sub section SIP (Session Initiation Protocol) it says the incoming and outgoing connection ports for SIP are 5090. The port number should be 5060.



Sample chapters

You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

Frequently bought together

Building Telephony Systems With Asterisk +    Apache Flume: Distributed Log Collection for Hadoop =
50% Off
the second eBook
Price for both: £17.90

Buy both these recommended eBooks together and get 50% off the cheapest eBook.

What you will learn from this book

This book takes you from installing and configuring Asterisk to using its various advanced features�, helping you build feature-rich telephony systems. With this book, you will learn how to:


  • Install, configure, and deploy Asterisk
  • Create a dialplan that suits your needs
  • Build a fully-featured telephony system
  • Monitor, record, and log calls
  • Install and use Asterisk@Home
  • Backup, secure, and maintain Asterisk
  • Use example configurations for different requirements


In Detail

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 station-to-station calls, line trunking, call distribution, call detail rerecords, and call recording.

Asterisk can be used to provide Interactive Voice Response (IVR). The power and flexibility of a programmable phone system gives us the ability to respond to our customers in meaningful ways.

Asterisk has also a fully-functional voicemail system included. 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 via email.  In fact, we can even attach the message in audio!

Finally, Asterisk is a Voice Over IP (VoIP) system. The benefits of VoIP are numerous. For instance, 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 completely separately but with integrated routing; We can have an extension anywhere we have a reasonably fast Internet connection, which means employees can have an extension on the phone system at home if they have a broadband connection. The benefits are too many to list.

Flexibility often means complexity, and this is true in the case of Asterisk. 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.

This book shows how to build a telephony system for your home or business using the free and open source application, Asterisk. 'Building a Telephony System with Asterisk' takes you step-by-step through the process of installing and configuring Asterisk. It shows you how to make a deployment plan, and how to create a dial plan.

The book also presents example configurations for using Asterisk in three different scenarios: for small and home offices, small businesses, and Hosted PBX.

With an engaging style and excellent way of presenting information, this book makes a complicated subject very easy to understand.

Read Chapter 2: Making a Plan for Deployment [164KB]


Who this book is for

This book is aimed at anyone who is interested in building a powerful telephony system using the free and open source application, Asterisk, without spending many thousands of dollars buying a commercial and often less flexible system.

This book is suitable for the novice and those new to Asterisk and telephony. Telephony or Linux experience will be helpful, but not required.

Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us
Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software