Book Image

FreeSWITCH Cookbook

Book Image

FreeSWITCH Cookbook

Overview of this book

FreeSWITCH is an open source telephony platform designed to facilitate the creation of voice, chat, and video applications. It can scale from a soft-phone to a PBX and even up to an enterprise-class softswitch.In the FreeSWITCH Cookbook, members of the FreeSWITCH development team share some of their hard-earned knowledge with you in the book's recipes. Use this knowledge to improve and expand your FreeSWITCH installations.The FreeSWITCH Cookbook is an essential addition to any VoIP administrator's library.The book starts with recipes on how to handle call routing and then discusses connecting your FreeSWITCH server to the outside world.It then teaches you more advanced topics like CDR handling, practical examples of controlling FreeSWITCH with the event socket, and configuring many features commonly associated with a PBX installation.
Table of Contents (12 chapters)
FreeSWITCH Cookbook
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

Using the event socket to handle CDRs


Sometimes you need to get CDR information immediately. FreeSWITCH accommodates those needs with the powerful event socket. This recipe will briefly describe how to receive CDR information on the event socket. You will also find more useful information on the event socket interface in the following chapter.

Getting ready

This recipe relies on the event socket interface to FreeSWITCH. However, there are many different ways of connecting to the event socket. Because of this we will use a simple Perl script with the event socket library (ESL) to demonstrate the principles involved. Any language that supports ESL can use the techniques demonstrated here.

Follow the steps in the Setting up the event socket library recipe found in Chapter 4. Specifically, build the Perl module in order to run the example script.

How to do it...

Enter this script (or download it from the Packt website at http://www.packtpub.com):

#!/usr/bin/perl
# handle_cdr.pl 
# Connect to event...