The Asterisk Masterclass

The Asterisk 5 day Masterclass!
Detailed agenda and overview

Note (January 2015): We are no longer offering this class. Please visit for more information about Asterisk trainings.

Asterisk™, the Open Source PBX, is taking the world by storm. Asterisk makes a complete business- or carrier-class PBX out of an ordinary Linux computer, integrating with the telephony network as well as the new world of voice over IP and Internet.

However, Asterisk is not easy to learn or administer. This five-day training class will give you the knowledge and insights you need to get up to speed with your Asterisk implementation and make it production ready in no time.

The “Asterisk Masterclass” training class starts with installation and covers the most common features in Asterisk: Integration with the PSTN, the IAX2 and SIP channels for VoIP telephony and how to build a dial plan with applications like follow-me, voicemail, conferencing and call queues

Teacher – an active Asterisk developer

The teacher is Olle E. Johansson – one of the Asterisk developers with many years of experience in teaching networking. Olle is an active Asterisk developer with many years of experience of running Asterisk in enterprise and service provider networks. He’s been teaching SIP and Asterisk since early 2005 and have previously taught many classes in networking, IP, IP security, LDAP, XML and other topics.

The Asterisk Bootcamp – Overview

Day Monday Tuesday Wednesday Thursday Friday
Block 1 Introduction Dial Plan Intro VoIP overview PSTN connections Advanced Asterisk topics
Block 2 Asterisk Architecture Handling calls IAX2 Digium hardware
Block 3 Asterisk Installation Implementing features SIP LAB: Building a business PBX dCAP certification
Block 4 Basic
Call queues LAB

Day 1

Introduction and Welcome

Module 1: Asterisk Installation and Basic Configuration

The Asterisk Project

  • Brief History
  • About Digium
  • Open Source Overview
  • Related projects

The Asterisk Architecture

  • PBX Core and Modules
  • Channels
  • Codecs
  • Applications
  • AGI, The Asterisk Gateway Interface
  • AMI, The Asterisk Manager Interface
  • Asterisk calls

Asterisk Installation

  • Hardware Considerations & Options
  • PSTN Connectivity, Timing Devices, Etc.
  • CVS and Versioning
  • “Make” Asterisk & Components
  • Starting and stopping Asterisk: Runtime options, Remote Asterisk consoles, Auto-Start Options for Asterisk, “make samples” and Basic Testing, Lab: Install Asterisk on Linux, From SVN to “Welcome to Asterisk”

Asterisk Configuration

  • Configuration Files: Function, Layout, Location
  • Basic Dahdi – PSTN Connections
  • Basic VoIP Connections: SIP.conf & IAX.conf
  • Introduction To The Dial Plan

Lab: Construct a PBX

Day 2

Module 2: Asterisk Applications, functions & The Dial Plan

Dialplan Overview – Beyond The Basic Extension

  • Contexts
  • Switches
  • Variables
  • Includes
  • Macros
  • Standard extensions and priorities

Building the dialplan

  • Applications
  • Functions
  • Design models
  • Using #include files
  • The Asterisk DB – AstDB

Handling Calls

  • Incoming contexts
  • Extensions
  • Alphanumeric and numeric extensions
  • The Dial command
  • Building a Standard User Macro

LAB: Implementing a basic dial plan

Implementing Features

  • Implementing Features In The Dial Plan
  • Advanced Applications
  • Conferencing with MeetMe
  • Enhanced Voice Mail

LAB: Implementing features in the dial plan

Introduction to Asterisk ACD Functions

  • Call queues
  • Agents
  • Statistics

Day 3

Module 3: Asterisk and VoIP

General Concepts & Definitions

  • VoIP The Asterisk Way: IAX, SIP, MGCP, H323, SCCP
  • Peers, Users & Friends
  • The Registration Process
  • Codecs & Codec Conversion
  • Protocols

Asterisk and IAX

  • Theory and Usage: Why IAX• Bandwidth Calculations • IAX Trunking • IAX Provisioning
  • Configurations and Implementations: User Agent (ATA, Phone, Soft-Phone)
  • IAX HowTo: iax.conf

Lab: IAX Implementations

  • Implement an IAXy Device.
  • Implement a connection between teams.
  • Implement a connection to an IAX Provider.

Asterisk and SIP Communication

  • SIP protocol, server and client models
  • Theory and Usage: Why SIP • SIP Features and Functions • Bandwidth Calculations
  • NAT Traversal Issues
  • SIP How-To: sip.conf

Lab: Sip Implementations

  • Implement A SIP User Agent Device
  • Implement a SIP Service Provider Connection

Day 4

Module 4: Advanced PSTN Connectivity

PSTN Direct Connections (TDM)

  • Overview Of PSTN Interconnectivity
  • Analogue Connections: FXO, FXS
  • Digital T1/E1 Connections: • Direct PSTN Network Connections • Line-Side Connections to PBX • Analogue Break Out & Aggregation w/ Channel Banks • Hybrid Voice & Data Connections (HDLC)
  • Echo & Echo Cancellation Strategies

Connecting Asterisk to PSTN: Digium Telephony Cards

  • Installation & Configuration
  • Kernel device drivers
  • Support, Tuning and Troubleshooting

Lab: Asterisk – Create A VoIP Service

  • Half day practical lab

Day 5

Module 5: The Asterisk Smorgasboard: Advanced Asterisk Topics

  • Clustering & Scaling
  • Billing & CDR Generation
  • AGI IVR Applications
  • Database-Driven Configurations: Realtime
  • Graphical User Interfaces
    Administrative (Configuration), Receptionist, End-User
  • DUNDi, ENUM and Asterisk
  • Working with the Asterisk bug tracker
  • Visions and future ideas: Asterisk SVN head development
  • Conclusion: Review w/ Q&A