FreeSWITCH
   HOME

TheInfoList



OR:

FreeSWITCH is free and open-source server software for
real-time communication Real-time communication (RTC) is a category of software protocols and communication hardware media that gives real-time guarantees, which is necessary to support real-time guarantees of real-time computing.Sharad Sundaresan; Riccardo Bettati"Distr ...
applications, including
WebRTC WebRTC (Web Real-Time Communication) is a free and open-source project providing web browsers and mobile applications with real-time communication (RTC) via application programming interfaces (APIs). It allows audio and video communication to wor ...
,
video Video is an electronic medium for the recording, copying, playback, broadcasting, and display of moving visual media. Video was first developed for mechanical television systems, which were quickly replaced by cathode-ray tube (CRT) syst ...
, and
voice over Internet Protocol Voice over Internet Protocol (VoIP), also called IP telephony, is a method and group of technologies for the delivery of voice communications and multimedia sessions over Internet Protocol (IP) networks, such as the Internet. The terms Internet t ...
(VoIP). It runs on
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, w ...
,
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ser ...
,
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lapt ...
, and FreeBSD. FreeSWITCH is used to build private branch exchange (PBX)
telecommunication Telecommunication is the transmission of information by various types of technologies over wire, radio, optical, or other electromagnetic systems. It has its origin in the desire of humans for communication over a distance greater than that fe ...
systems,
IVR Interactive voice response (IVR) is a technology that allows telephone users to interact with a computer-operated telephone system through the use of voice and DTMF tones input with a keypad. In telecommunications, IVR allows customers to interac ...
services,
videoconferencing Videotelephony, also known as videoconferencing and video teleconferencing, is the two-way or multipoint reception and transmission of audio and video signals by people in different locations for real time communication.McGraw-Hill Concise Ency ...
with chat and screen sharing, wholesale
least-cost routing In voice telecommunications, least-cost routing (LCR) is the process of selecting the path of outbound communications traffic based on cost. Within a telecoms carrier, an LCR team might periodically (monthly, weekly or even daily) choose between ro ...
,
Session Border Controller A session border controller (SBC) is a network element deployed to protect SIP based voice over Internet Protocol (VoIP) networks. Early deployments of SBCs were focused on the borders between two service provider networks in a peering environme ...
(SBC) and embedded communication appliances. It has support for
encryption In cryptography, encryption is the process of encoding information. This process converts the original representation of the information, known as plaintext, into an alternative form known as ciphertext. Ideally, only authorized parties can de ...
,
ZRTP ZRTP (composed of Z and Real-time Transport Protocol) is a cryptographic key-agreement protocol to negotiate the keys for encryption between two end points in a Voice over IP (VoIP) phone telephony call based on the Real-time Transport Protocol. ...
,
DTLS Datagram Transport Layer Security (DTLS) is a communications protocol providing security to datagram-based applications by allowing them to communicate in a way designed to prevent eavesdropping, tampering, or message forgery. The DTLS protocol i ...
, and Session Initiation Protocol (SIP). It is implemented as a core library, libfreeswitch, which can be embedded into other projects. It is distributed under the
Mozilla Public License The Mozilla Public License (MPL) is a free and open-source weak copyleft license for most Mozilla Foundation software such as Firefox and Thunderbird The MPL license is developed and maintained by Mozilla, which seeks to balance the concerns ...
(MPL), a
free software license A free-software license is a notice that grants the recipient of a piece of software extensive rights to modify and redistribute that software. These actions are usually prohibited by copyright law, but the rights-holder (usually the author) ...
.


History

The FreeSWITCH project was announced in January 2006 at O'Reilly Media's ETEL Conference. In June 2007, FreeSWITCH was selected by Truphone for use, and in August 2007, Gaboogie announced that it selected FreeSWITCH as its conferencing platform. The official release 1.0.0 (Phoenix) of FreeSWITCH was available on May 26, 2008. At ClueCon 2012, Anthony Minessale announced the release of FreeSWITCH version 1.2.0, and that the development team had adopted separate stable (version 1.2) and development (version 1.3) branches. FreeSWITCH 1.4, released in early 2014, is the first version supporting SIP over Websocket and WebRTC. FreeSWITCH 1.6 added support for video transcoding and video conferencing, Verto protocol for WebRTC, and all WebRTC codecs and standards. FreeSWITCH 1.8 was released at ClueCon in 2018 with further updates and stability improvements to the project.


Acquisition

SignalWire Inc. was founded in 2018 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.


Design

According to the lead designer, Anthony Minessale, FreeSWITCH is intended to be a
softswitch A softswitch (''software switch'') is a call-switching node in a telecommunications network, based not on the specialized switching hardware of the traditional telephone exchange, but implemented in software running on a general-purpose computing ...
that is built around a core library, driven by a state machine. The stated goals of the project include stability,
scalability Scalability is the property of a system to handle a growing amount of work by adding resources to the system. In an economic context, a scalable business model implies that a company can increase sales given increased resources. For example, a ...
, and abstraction.


Derived products

FreeSWITCH 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. * BigBlueButton is built on top of FreeSWITCH
FusionPBX
is an add-on to FreeSWITCH that provides a web management interface


See also

*
List of free and open-source software packages This is a list of free and open-source software packages, computer software licensed under free software licenses and open-source licenses. Software that fits the Free Software Definition may be more appropriately called free software; the GNU ...
*
List of SIP software This list of SIP software documents notable software applications which use Session Initiation Protocol (SIP) as a voice over IP (VoIP) protocol. Servers Free and open-source license A SIP server, also known as a SIP proxy, mana ...
– other SIP related programs


References

{{DEFAULTSORT:Freeswitch Free VoIP software Lua (programming language)-scriptable software Software using the Mozilla license