Asterisk and FreeSWITCH are both Back-to-back user agents, often abbreviated B2BUA. Asterisk and FreeSWITCH act as a user agent for multiple ends (two or more), and use a common protocols like Session Initiation Protocol (SIP). The system allows handling of all SIP signaling – route calls, transfer calls, and can even translate codecs between different legs of the call. They can offer value-added features such as voicemail, call transfers, and others.
Essentially, both Asterisk and FreeSWITCH function similarly to telephones that can be used to create voice or chat driven products and applications. With FreeSWITCH, the programmer can scale the prdouct from simply a soft-phone all the way up to a soft-switch – including simple switching engines, media gateway, media server (capable of hosting other applications and XML controls), or even a PBX.
Asterisk is full of features, such as inbound and outbound calls, interactive voice response, conference calling, voicemails, and call forwarding (similar to most VoIP/PBX servers.) However, Asterisk does not provide some of these oft-desired and beneficial features:
● Dialing out from conferences
● Dialing out from soft-based conferences
● Easy integration with other conferencing software (MeetMe, Zaptel, and app_conference.)
This is where FreeSWITCH has the advantage – it provides all of the above features, including self-induced timing (mitigating the need for Zaptel services), and a much cleaner and simpler user interface. Asterisk is plagued with software issues, sound corruption, call dropping, and data delivery. FreeSWITCH is without these issues, everything can be set up quickly and works as one would expect.
The biggest advantage of FreeSWITCH is that its core architecture is simply better designed – it has fewer glitches, better integration, and more consistent performance with a number of codecs commonly used in the industry. The company’s support is impressive, providing custom solutions for enterprise scale clients and constant troubleshooting for those making use of their software.
FreeSWITCH also has the ability to load programs and scrips written in Python, Perl, PHP, LUA, and XML as “applications” – providing an enormous amount of flexibility and freedom in how your VoIP network is configured.
Overall, FreeSWITCH is a far superior platform to Asterisk. Their core functionality is better designed, more complete, robust, and much more flexible. The small issues reported to their staff are fixed immediately, with constant development of new features (even customizable ones for customers that request as such.) Asterisk is plagued with too many problems, and any complete VoIP/PBX system should make use of FreeSWITCH.