FreeSWITCH

FreeSWITCH is a free and open-source telephony software for real-time communication protocols using audio, video, text and other forms of media. The software has applications in WebRTC, voice over Internet Protocol (VoIP), video transcoding, Multipoint Control Unit (MCU) functionality and supports Session Initiation Protocol (SIP) features.

The software runs on Linux, Windows, macOS, and FreeBSD.

History
The FreeSWITCH project was initially announced in January 2006 and the first version was officially released in May 2008. The subsequent versions, 1.2, 1.3 and 1.4, were released in 2012 and 2014 supporting SIP over Websocket and WebRTC. The 1.6 version supported video transcoding and video conferencing and the 1.8 version was released in 2018. The latest release is version 1.10.

In 2018, SignalWire Inc. was founded to provide commercial cloud telecommunication services utilizing an elastic FreeSWITCH core, and provide a permanent commercial sponsor for the open source project that was controlled by the founders of FreeSWITCH. It then acquired FreeSWITCH Solutions.

Architecture
FreeSWITCH runs on Linux, Windows, macOS, and FreeBSD. It is distributed under the Mozilla Public License (MPL). According to the original designer, Anthony Minessale, FreeSWITCH is intended to be a softswitch that is built around a core library, driven by a state machine, which can be embedded into other projects.

FreeSWITCH provides a scalable system around a stable switching core, and a robust interface for developers to add to and control the system. It is a core component in many PBX in a box commercial products and open-source projects. Some of the commercial products are hardware and software bundles, for which the manufacturer supports and releases the software as open source.

Applications
FreeSWITCH is used to build private branch exchange (PBX), IVR services, videoconferencing with chat and screen sharing, wholesale least-cost routing, Session Border Controller (SBC) and embedded communication appliances. It also has support for encryption, ZRTP, DTLS.

Projects such as BigBlueButton is built on top of FreeSWITCH and FusionPBX is an add-on to FreeSWITCH that provides a web management interface.

In June 2007, FreeSWITCH was selected by Truphone for use, and in August 2007, Gaboogie announced that it selected FreeSWITCH as its conferencing platform. It has also partnered with Five9, Plivo, Samsung, Waeve and Twilio for its usage. The software is also used by The U.S Department of Veterans Affairs.