Big Nerd Ranch front page

Asterisk Bootcamp

Asterisk Bootcamp is an intensive 5-day training course providing in-depth coverage of the key points of Asterisk installation, configuration and administration. The course (designed by Sokol & Associates) begins with a comprehensive review of Asterisk as an application, a project and a community. Students will learn to download, compile, install, and tune Asterisk, to connect it with both end-user devices (phones) and the outside world. Students will learn to create dialplans, to implement applications, and to make use of the long list of features included with Asterisk. At the end of the course, students will be able to create a working Asterisk system from a standard Linux computer, configure the system to support end users connected via multiple technologies, and to handle all necessary adds, moves and changes. If you want to learn how to implement a working Asterisk system, Asterisk Bootcamp is your class.

Asterisk Bootcamp is designed for:

Upon completion of Asterisk Bootcamp, the student will:

Prerequisites

For best results, students should have previous programming experience and basic Linux experience.

For students interested in more advance preparation, we recommend Asterisk: The Future of Telephony, by Jim Van Meggelen, Jared Smith, and Leif Madsen.

Syllabus

The syllabus is listed below, but our extensive knowledge of Asterisk enables us to customize the course to your needs and speak on topics that may not be in the outline. Let us know what you want.

Section Contents
Introducing Asterisk What is a PBX?
Asterisk: The Program, Tool Kit, Platform, Product, Project, Community, and Business Ecosystem
The History of Asterisk and Open Source
The GNU GPL
Why do Open Source?
What Business Model?
Asterisk’s Dual License Model
GPL Asterisk
Asterisk Business Edition
Asterisk OEM License
The 9,000 Faces of Asterisk
Asterisk Architecture Asterisk & Linux
The Big Picture
Asterisk Configuration
Installing Asterisk Versions & Releases
Repository
Asterisk Components
Pre-Install Requirements
How to get the Source Code
What Source Code to get
Compile the Code
What you get
Starting Asterisk
Connecting to Asterisk’s CLI
Configuring a Basic PBX Asterisk Call Flow
Call Flow Details
Configuration Files
Adding a phone
Adding a SIP Phone
Adding an Extension
Building a 2 Extension PBX
Install X-Lite on your PC
Introducing the Dial Plan What is a dialplan?
Dialplan Syntax and Structure
Contexts
Extensions
Priorities
Applications
Application Syntax
The Answer() Application
The Playback() Application
The Hangup() Application
Putting it all together
Extending the Dialplan Making an Interactive dialplan
DTMF
The Background() Application
Background() Example
Background() and Timeouts
Auto-fallthrough
The WaitExten() Application
Special Extensions
Adding jumps and loops
The Goto() Application
Goto() Syntax
Other Useful Applications
Dialing from the Dialplan
Voicemail
Voicemail.conf
Dial-by-name directory
The record() application
Authenticate your callers
VMAuthenticate()
Echo() and Milliwatt()
VoIP Fundamentals VoIP Protocols: What are they?
VoIP Protocols in Asterisk
Codecs
Users, Peers and Friends
Voice Over IP Fundamentals SIP
IAX: Inter Asterisk Exchange
VoIP: The Underlying Network
Networking Basics
Re-invites
More Dialplan Concepts What are variables?
How are variables used?
Global Variables
Channel Variables
Environment variables
Global vars for end-points
Variables {DIALSTATUS}
Pattern Matching
Pattern Matching Syntax
The wild card match
NANPA Toll Fraud
The ${EXTEN} Variable
Includes
Applications II
Expressions and Branching Expressions
Dialplan functions
Conditional Branching
Priority Labels
Looping
Connecting to the PSTN History of Open Source
Hardware
Telephony
FXO vs. FXS
Analog Signaling
Obtaining the Zaptel drivers
Compiling Zaptel
Systems running udev
Configuring zaptel.conf
Loading the drivers
Ztdummy
CallerID over POTS
Passing through Caller ID
Flash Transfers
DUNDi What is DUNDi?
GPA (General Peering Agreement)
How does it work?
DUNDi call flow
Simple Lab Schema
Configuration
How does it work?
Dundi.conf
Dialplan (extensions.conf)
Channel Configuration file
Dundi.conf configuration
Extensions.conf
Iax.conf
Sip.conf
DUNDi as a routing protocol
Advanced Dialplan Applications Macros
The AstDB database
Switches
DIDs
Asterisk call files
Call Queues and ACD Concepts What are queues?
What are agents?
Queue Strategies
Simple call queues without agents
Call queues using agents
Configuring agents.conf
Logging in agents
Adding agents to the queue
Queue statistics
Debugging your system Helping yourself to debug
Digital Telephony with Zaptel History of Digital Telephony
T1/E1 Low-Levels
Channelized vs. PRI
Advantages/Disadvantages
ISDN PRI Connections
PRI Advantages/disadvantages
Zaptel Configuration
Configure Zaptel signaling
Zapata.conf configuration
Channels connected to phones
Zap call groups
Asterisk CLI help messages
PRI-B Channel Restarts
AGI: Beyond the dialplan What is AGI?
Standard Interface
Communication
STDIN, STDOUT, and STDERR
Typical AGI Program
Calling AGI Scripts
AGI Notes
Manager and Realtime Computer Telephony Integration
Manager Basics
Manager Commands
Manager Applications
The Manager Proxy
Manage Future
Asterisk Realtime Architecture (ARA)
Realtime to the rescue
APA: Good/Bad/Ugly
Realtime Future
Other Configuration Options

Price

A five-day class, a student guide, a luxury room, three delicious meals a day, a stylish "Big Nerd Ranch" t-shirt, and transportation to and from the airport for only $4000. Plan to arrive on Sunday evening and depart on Friday afternoon.

When the class is offered in Europe, the price is €3200 plus VAT. (€2900 plus VAT if you register at least five weeks before the class begins.)