Asterisk Workshop
Course Duration  
5-day instructor-led training, 0900-1700

Course Objectives
The Participant will be able to install Asterisk IP PBX, to install PSTN/POTS interface cards, to configure the application for the dial plan and for PBX features and to understand the VoIP realm.

Course Overview
 
In this course you will learn the necessary VoIP Technology, what is IP PBX, how it is implemented by Asterisk, how you will install and configure and then build few IP PBX implementations. The Course will be accompanied by protocol analyzer that will support the interaction with IP Protocols.

Key Benefits
 
Participants of this course will be able to plan microwave point-to-point links using software planning tool Pathloss 4.0, including ability to analyse data from path surveys, create respective profile data and decide upon antenna heights, calculate Performance and Availability percentages of the link and optimise them with respect to the ITU-R objectives as well as cost-effectiveness. They will be able to perform frequency planning for large networks, avoiding their design to suffer from harmful interference.

Pre-requisite for Participants
Basic knowledge of:
  • IP Networks
  • Some basic Linux know-how of shell commands and scripts.


Who Should Attend?
Professional people in the communication and IT, Network administrators, Engineers, software developer, Technical support, field engineers.

Course Outline
Day 1

Introduction

1 VoIP and IP PBX
Introduction to VoIP
  • Convergence of Voice and Data
  • Why VoIP?
  • Packet-switch versus Circuit switch
  • VoIP based Services
  • VoIP Architecture
  • Network topology
  • VoIP components
  • Distributed approach versus Centralized concepts
  • Carrier Grade requirements

Introduction to PBX and IP PBX

2 The Asterisk Project

  • Brief Asterisk History
  • Open Source Overview
  • Related projects: AsteriskDocs.org, Voip-Info (Wiki), Asterisk for BSD, Asterisk
    IPv6
  • Asterisk: The Program, Tool Kit, Platform, Product, Project, Community, and Business Ecosystem

3 The Asterisk Architecture
PBX Core and Modules

  • Channels
  • Codecs
  • Applications
  • AGI, the Asterisk Gateway Interface
  • AMI, the Asterisk Manager Interface
  • Asterisk calls

* Asterisk Installation and Basic Configuration

4 Asterisk Installation

  • Hardware Considerations & Options;
  • PSTN Connectivity, Timing Devices, Etc.
  • CVS and Versionss
  • “Make” Asterisk & Components
  • Starting and stopping Asterisk: Runtime options, Remote Asterisk
  • Consoles, Auto-Start Options for Asterisk

Lab: Installing Asterisk on Linux

5 Asterisk Basic Configuration

  • Configuration Files: Function, Layout, Location
  • Interface: Basic Zaptel, Zapata & PSTN Connections
  • Basic VoIP Connections: SIP.conf & IAX.conf
  • Introduction to the Dial Plan

Lab: Construct A 1 x 1 PBX topology

  • [Digium or other] Card (X100P or TDM4xxP)
  • Low-Cost SIP Phone or ATA (Sipura)

**Configuration might be different according to customer's installation.

1st day Test



Day 2

* Asterisk Applications & the Dial Plan

1 Dialplan Overview

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

2 Building the Asterisk Dialplan

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

3 Handling Calls

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

LAB: Implementing a basic dial plan

  • Features Implementing
  • The Dial Plan Implementation Features
  • Advanced Applications
    • Conferencing, Voice Mail

LAB: On Implementing dial plan features

  • Introduction to Asterisk ACD Functions
  • Call queues
  • Agents
  • Statistics

2nd day Test


Day 3

*Asterisk and VoIP

1 VoIP In Details
H.323

  • H.323 Topology
  • H.323 Architecture and Components
  • H.323 Call-Flow
  • H.323 versions

Session Initiation Protocol

  • Why SIP?
  • SIP User Agent and SIP Client
  • SIP Servers
  • Current status


MGCP and Megaco (H.248)

  • Master/Slave concept
  • Network architecture and components
  • MGCP and Megaco differences

Media Compression methods

  • Coders types
  • Bandwidth utilization
  • Side effects due to compression

RTCP, RTP and CRTP

  • Internet Multimedia Protocol Stack
  • RTP profile
  • RTP Packet Encapsulation
  • RTCP Profile and structure
  • CRTP and Bandwidth consumption

2 IAX (Inter-Asterisk eXchange) Protocol

  • Theory and Usage: Why IAX • Bandwidth Calculations • IAX Trunking • IAX Provisioning
  • Configurations and Implementations: User Agent (ATA, Phone, Soft-Phone) • Asterisk Cluster Interconnection • Service Provider Links
  • Peers, Users & Friends
  • The Registration Process

Lab: IAX Implementations

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

3 Asterisk and SIP Communication
Session Description Protocol

  • Describing Media Sessions with SDP RFC 2327
  • Session Description
  • Media Descriptions
  • SDP Example

SIP architecture

  • Protocol Stack
  • SIP Transactions and response codes
  • Addressing format
  • DTMF and VoIP (In-Band and Out of Band methods)

SIP structure and commands

  • SIP Timers for reliability
  • SIP Transactions and response codes
  • Forking Methods
  • Messages structure
  • Provisional Response Acknowledge method
  • Call-flow Examples

NAT/Firewall Traversal Issues

Lab: Asterisk's Sip Implementations

  • Implement A SIP User Agent Device
  • Implement a SIP Service Provider Connection
  • Using Ethereal Protocol Analyzer to trace SIP sessions

3rd day Test


Day 4

* Advanced PSTN Connectivity

1 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

2 Connecting Asterisk to PSTN: Digium Telephony Cards

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

Lab: Asterisk Practicum – Create A VoIP Service
Half day practical lab

4th day Test


Day 5

* Advanced Asterisk Topics
Final Test (we will solve it together later)

1 Clustering & Scaling

2 Billing & CDR Generation

3 AGI IVR Applications

4 Database-Driven Configurations: Realtime, MYSQL_FRIENDS

5 Graphical User Interfaces

  • Administrative (Configuration), Receptionist, End-User

6 DUNDi, ENUM and Asterisk

7 Visions and future ideas: Asterisk CVS head development

Review, solving the final test and Q&A