Free Sample
+ Collection

FreeSWITCH 1.2

Anthony Minessale, Michael S Collins, Darren Schreiber, Raymond Chandler

Whether you’re an IT pro or an enthusiast, setting up your own fully-featured telephony system is an exciting challenge, made all the more realistic for beginners by this brilliant book on FreeSWITCH. A 100% practical tutorial.
RRP $26.99
RRP $44.99
Print + eBook

Want this title & more?

$12.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781782161004
Paperback428 pages

About This Book

Learn how to install and configure a complete telephony system of your own, even if this is your first time using FreeSWITCHIn-depth discussions of important concepts like the dialplan, user directory, NAT handling, and the powerful FreeSWITCH event socketBest practices and expert tips from the FreeSWITCH experts, including the creator of FreeSWITCH, Anthony Minessale

Who This Book Is For

This book is written for IT professionals and enthusiasts who are interested in quickly getting a powerful telephony system up and running using the free and open source application, FreeSWITCH. Telephony experience will be helpful, but not required.

Table of Contents

Chapter 1: Architecture of FreeSWITCH
A revolution has begun and secrets have been revealed
The FreeSWITCH design – modular, scalable, and stable
Important modules – Endpoint and Dialplan
Complex applications made simple
Chapter 2: Building and Installation
Setting up the FreeSWITCH environment
Operating system prerequisites
Text editors and XML
Downloading the source
Building from the latest code
Compiling FreeSWITCH for Linux/Unix/Mac OS X
Compiling FreeSWITCH for Windows
Starting FreeSWITCH
Running FreeSWITCH in the background
Chapter 3: Test Driving the Example Configuration
Important concepts to understand
Putting FreeSWITCH to work
Configuring a SIP phone to work with FreeSWITCH
Testing the example Dialplan
Chapter 4: SIP and the User Directory
Understanding the FreeSWITCH user directory
Working with the FreeSWITCH user directory
User features
Adding a user
Testing voicemail
Groups of users
Connecting to the world with gateways
SIP profiles and user agents
Chapter 5: Understanding the XML Dialplan
FreeSWITCH XML Dialplan elements
Call legs and channel variables
Accessing channel variables
Regular expressions
Actions and anti-actions
How Dialplan processing works
Creating a new extension
Important Dialplan applications
Dialstring formats
Chapter 6: Using XML IVRs and Phrase Macros
IVR engine overview
IVR XML configuration file
IVR engine overview
Using phrases with IVRs
Advanced routing
Chapter 7: Dialplan Scripting with Lua
Getting started with Lua
Basic Lua syntax
Building voice applications
Advanced IVR concepts
Scripting tips
Chapter 8: Advanced Dialplan Concepts
Dialplan overview
General Diaplan concepts
Putting it all together
XML Dialplan module review
Pitfalls to avoid
XML Dialplan applications
Utilizing variables
Global variables
Dialplan functions
Set, export, and legs
Passing variables via call headers
XML Dialplan cookbook
Chapter 9: Moving Beyond the Static XML Configuration
The mod_xml_curl basics
The mod_xml_curl Dialplan
The mod_xml_curl folder
The mod_xml_curl configuration
The mod_xml_curl summary
Generating configurations dynamically with language bindings
Making calls from the command line interface
Using ESL to execute commands
Chapter 10: Controlling FreeSWITCH Externally
General overview
Event system architecture
Event-based modules
Sending events
Events from the Dialplan
FreeSWITCH event system commands
FreeSWITCH Console application
Event Socket Library
Events in practice
Chapter 11: Web-based Call Control with mod_httapi
HTTAPI syntax
mod_httapi configuration file
The demo IVR – in HTTAPI
Chapter 12: Handling NAT
A brief introduction to NAT
The four pitfalls of NAT
Demystifying NAT settings in FreeSWITCH
Making media flow
Advanced options and settings
FreeSWITCH on the client side
Other creative uses of FreeSWITCH in a NAT situation
Chapter 13: VoIP Security
Network level protection
Protecting SIP signalling
Protecting audio
Protecting passwords
Chapter 14: Advanced Features and Further Reading
Multi-user conferencing
Alternative endpoints
Configuration tools and related projects
Web GUIs
Supporting libraries
Vestec Automatic Speech Recognition

What You Will Learn

Set up a basic system to make and receive phone calls, make calls between extensions, and utilize basic PBX functionalityDeploy different features of this telephony system with best practices and expert tipsUnderstand the inner workings and architecture of FreeSWITCHUse advanced features to create powerful dialplansOvercome frustrating NAT issuesControl FreeSWITCH remotely with the powerful event socketCreate web-controlled telephony apps with the new HTTAPI systemSecure your VoIP communications

In Detail

FreeSWITCH is an open source telephony platform designed to facilitate the creation of voice and chat-driven products, scaling from a soft-phone to a PBX and even up to an enterprise-class soft-switch. It is always exciting to design and build your own telephony system to suit your needs, but the task is time-consuming and involves a lot of technical skill."FreeSWITCH 1.2" comes to your rescue to help you set up a telephony system quickly and securely using FreeSWITCH. It is rich with practical examples and will give you all of the information and skills needed to implement your own PBX system.You will start with a detailed description of the FreeSWITCH system architecture. Thereafter you will receive step-by-step instructions on how to set up basic and advanced features for your telephony platform.The book begins by introducing the architecture and workings of FreeSWITCH before detailing how to plan a telephone system and then moves on to the installation, configuration, and management of a feature-packed PBX. You will learn about maintaining a user directory, XML dial plan, and advanced dial plan concepts, call routing, and the extremely powerful Event Socket. You will finally learn about the online community and history of FreeSWITCH."FreeSWITCH 1.2" is an indispensable tool for novice and expert alike.


Read More