Introduction
One of the most powerful features of FreeSWITCH is the ability to connect to it and control it from an external resource. This is made possible by the powerful FreeSWITCH event system and its connection to the outside world—the event socket. The event socket interface is a simple TCP-based connection that programmers can use to connect to the inner workings of a FreeSWITCH server. Furthermore, the developers of FreeSWITCH have also created the Event Socket Library (ESL), which is an abstraction layer meant to make programming with the event socket a lot simpler. The following languages are supported by ESL:
- C/C++
- Lua
- Perl
- PHP
- Python
- Ruby
- Java
- Managed
- TCL
Keep in mind that ESL is only an abstraction library. You can connect to the event socket with any socket-capable application, including telnet!
The tips in this chapter will focus mostly on using the event socket for some common use cases. The last tip, however, will introduce a particularly interesting way to connect to FreeSWITCH...