In addition to the well-known Asterisk, there is a vibrant community of open source software PABX systems that can be used for internal and service provider IP telephony.
By leveraging Session Initiation Protocol (SIP) and other standard protocols, open source IP PABXs have achieved some impressive advancements over the years and the integration options for third party apps, like GoogleTalk and Jabber, promises to make them an attractive alternative for enterprises investigating low-cost unified communications (UC) solutions.
Here are five exciting open source VoIP and UC projects to keep an eye on.
Kamailio used to be called OpenSER and is best known for being the “high-end” open source PABX. As its old name implies, Kamailio is predominantly used as a SIP router, but the server itself supports a number of features like instant messaging and presence.
In terms of scalability, Kamailio claims to be able to handle some 5000 call setups per second and its least-cost routing can scale to handle millions of routing rules.
Failover and redundancy is also included. Kamailio also supports authentication to multiple databases and extensions (about 80 are available) can be written in Perl.
There is also a Java API which can be used to extend VoIP services and integrate with Web services.
Yet Another Telephony Engine, or Yate, is a lesser-known open source PABX that claims to be multi-functional and easily extensible.
The core software is written in C++ and it supports scripting in languages like PHP, Python, Perl and Unix shell.
Yate also supports conferencing (up to 200 channels per conference), VoIP to PSTN gateway, ISDN, call centre service and Interactive Voice Response (IVR).
Formerly known as OpenPBX.org, CallWeaver is an open source PABX originally derived from Asterisk. It supports analogue and digital PSTN (public switched telephone network) telephony, multi-protocol VoIP telephony, faxing and standard telephony applications, like IVR, conferencing and call centre queue management.
Other features of CallWeaver include cross platform, STUN support for SIP and call encryption.
FreeSWITCH is an open source telephony platform designed to facilitate the creation of voice and chat-driven products and is capable of scaling from a softphone up to a soft-switch.
The project claims its developers are heavily involved in open source and have donated code and other resources to other open telephony projects.
FreeSWITCH can be used as a simple switching engine, a PABX, a media gateway or a media server to host IVR applications, using simple scripts or XML to control calls.
It supports Skype, SIP, H.323, IAX2 and GoogleTalk, making it possible to interface with other open source PABX systems like sipXecs, CallWeaver, Yate or Asterisk.
FreeSWITCH builds natively and runs standalone on several operating systems, including Windows, Max OS X, Linux, the BSDs and Solaris.
SipXecs' claim to fame is that it offers far more unified communications features than its nearest rivals. There are the common features, like voicemail, unified messaging, conferencing (based on FreeSWITCH), as well as presence features, but sipXecs also does centralised management of a distributed system and P2P routing. which promises better voice quality, unlimited simultaneous calls while also avoiding the PABX becoming a single point of failure.
The SipXecs project was started in 2004 based on a code contribution from Pingtel. Release 4.0 was made public in May 2009. Its flagship reference site is Amazon.com, which uses sipXecs for its more than 6000 employees worldwide.
For those seeking commercial support for sipXecs, it is available under the brand name Software Communications System (SCS) from Novell.