The World's First Cross-Platform Scalable FREE Multi-Protocol Soft Switch

FreeSWITCH is a scalable open source cross-platform telephony platform designed to route and interconnect popular communication protocols using audio, video, text or any other form of media.  It was created in 2006 to fill the void left by proprietary commercial solutions.  FreeSWITCH also provides a stable telephony platform on which many applications can be developed using a wide range of free tools.

FreeSWITCH was originally designed and implemented by Anthony Minessale II with the help of Brian West and Michael Jerris.  All 3 are former developers of the popular Asterisk open source PBX.  The project was initiated to focus on several design goals including modularity, cross-platform support, scalability and stability.  Today, many more developers and users contribute to the project on a daily basis.

We support various communication technologies such as Skype, SIP, H.323 and WebRTC making it easy to interface with other open source PBX systems such as sipXecs, Call Weaver, Bayonne, YATE or Asterisk.

FreeSWITCH supports many advanced SIP features such as presence/BLF/SLA as well as TCP TLS and sRTP.  It also can be used as a transparent proxy with and without media in the path to act as a SBC (session border controller) and proxy T.38 and other end to end protocols.

FreeSWITCH supports both wide and narrow band codecs making it an ideal solution to bridge legacy devices to the future.  The voice channels and the conference bridge module all can operate at 8, 12, 16, 24, 32 or 48 kilohertz in mono or stereo and can bridge channels of different rates.  The G.729 codec is also available under a commercial license.

FreeSWITCH builds natively and runs standalone on several operating systems including Windows, Max OS X, Linux, BSD and Solaris on both 32 and 64 bit platforms.

FreeSWITCH supports FAX, both over audio and T.38, and can gateway between the two.

Our developers are heavily involved in open source and have donated code and other resources to other telephony projects including openSER, sipXecs, The Asterisk Open Source PBX and Call Weaver.

a Spec Sheet is available on our Wiki.

Latest Posts

FreeSWITCH Launches New Platform on 10th Anniversary

The first line of code in FreeSWITCH was drafted Spring of 2005, nearly a decade ago. 2015 marks the 10-year anniversary of the core code and the 9-year anniversary of the FreeSWITCH Public Community. Over the years, the core developers of the project have worked hard to provide top notch community support. FreeSWITCH Solutions, the consulting firm owned and operated by the core FreeSWITCH team, have been offering commercial support for many years for companies who take things to the next level and use FreeSWITCH to power their products.

Today we are proud to announce the unveiling of FreeSWITCH.com and the FreeSWITCH Advantage™ platform and support. Built on top of Debian Linux, FreeSWITCH Advantage takes our proven support services and couples it with a reliable operating system distribution and the result is a uniform packaged system tuned specifically for running FreeSWITCH. New releases will be simple to apply and any changes to the other packages on the system that have an impact on FreeSWITCH will be applied and managed automatically. Customers will have the best environment possible in place to run their systems as well as the support they need to ensure they stay up and running. The FreeSWITCH Advantage provides critical early-access to releases to make sure any problems encountered are addressed ASAP. All of the code used with FreeSWITCH Advantage is taken straight from the project’s public git repository and packaged with testing and stability in mind so the community continues to benefit as a result.

FreeSWITCH Solutions also continues to offer the most comprehensive consulting services available with the experience and knowledge to create almost anything imaginable that pertains to interfacing with FreeSWITCH.


FreeSWITCH Week in Review (Master Branch) March 14th-20th

Hello, again. This passed week in the FreeSWITCH master branch we had 6 commits. The features for this week are: the ability to pass -T[path to custom sources path] and -K[custom keyfile path] options to build the FS packages with a custom sources and keyring path when using the debian/utils.sh script to build FS packages and play_and_detect_speech can now detect DTMF if you set the playback_terminators channel variable to any or specific DTMF.

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-7373 When using the debian/utils.sh script to build FreeSWITCH packages, add the ability to pass -T[path to custom sources path] and -K[custom keyfile path] options to build the FS packages with a custom sources and keyring path.
  • FS-7378 Play_and_detect_speech can now detect DTMF if you set the playback_terminators channel variable to any or specific DTMF. The result will be stored in speech_detect_result and in playback_terminator_used. Also added channel variable play_and_detect_speech_close_asr which will release the speech recognition port when the detection is completed. This will prevent speech licenses from being held the entire call.

(more…)


ClueCon Call For Speakers is Open!

Call for speakers at ClueCon 2015 is open!

Visit https://cluecon.com/speaking-proposals to submit your speaking proposal Below!

What makes a great ClueCon presentation? The tech savvy crowd that attends ClueCon loves technical presentations. In general, the more technical the presentation, the better.

If you are thinking about a presentation then consider these points:
* ClueCon talks are 30 minutes in length, including Q&A time with the audience (Lightning Talks are also open! 10 minute talks, 5 minutes Q&A)
* ClueCon has a special focus on open source communications, VoIP, and telephony projects like FreeSWITCH, WebRTC OpenSIPS, Asterisk, and Kamailio
* Attendees enjoy hearing about projects built with open source tools, especially those in a production environment
* Highly technical discussions that show the nuts and bolts are especially well-liked
* The audience appreciates seeing and participating in live demonstrations

We are especially interested in Security-related talks and demonstrations

Please register your proposals at https://cluecon.com/speaking-proposals. To complete registration you need the following items:
* Working title
* Brief description of the talk (abstract)
* Name of the presenter(s)
* Bio and headshot of presenter(s)
* Presenter’s contact information (including mobile phone the presenter will have with them at the conference)

Don’t delay! Speaking proposals must be in by July 4, 2015 and scheduling requests are handled on a first come first serve basis.

ClueCon 2015: See You There!
For more details on ClueCon see https://cluecon.com.


FreeSWITCH Week in Review (Master Branch) March 7th-14th

Hello, again. This passed week in the FreeSWITCH master branch we had 13 commits. The features for this week include: the addition of Australian ringback, a minimal configuration for configuring FreeSWITCH from scratch, and the filter feature ported from mod_event_socket to mod_erlang_event .

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-7354 Filter feature ported from mod_event_socket to mod_erlang_event
  • FS-7362 Add minimal configuration for configuring FreeSWITCH from scratch
  • FS-7368 Added Australian ringback

(more…)


FreeSWITCH Week in Review (Master Branch) February 28th-March 6th

Hello, again. This passed week in the FreeSWITCH master branch we had 18 commits. The features for this week include: updating Windows build to use flite-2.0.0-release and updating mod_mongo driver to 1.1.0 .

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-7149 Update Windows build to use flite-2.0.0-release
  • FS-7346 Update mod_mongo driver to 1.1.0

(more…)


FreeSWITCH Week in Review (Master Branch) February 21st-27th

Hello, again. This passed week in the FreeSWITCH master branch we had 11 commits. The features for this week are: updating mod_verto to proxy additional variables and the ability to force URL refresh in mod_http_cache.

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-7312 Update mod_verto to proxy additional variables
  • FS-7323 Add ability to force URL refresh in mod_http_cache using {refresh=true} parameter that can be prefixed to a URL to force refresh when using http:// https:// file formats or the http_get API. And added http_remove_cache API call to manually expire a cached URL.

(more…)


FreeSWITCH Week in Review (Master Branch) February 14th-20th

Hello, again. This passed week in the FreeSWITCH master branch we had 54 commits. The features for this week include: a simplification of command line arguments to allow for using -base instead of specifying each directory when using alternate configs, added support for URL attribute in the grammar tag for mod_rayo (this is useful for MRCP engines to look up their grammars directly), implement cookie-file option for mod_xml_cdr, allowing the removal of User-Agent header from the sip message, and the addition of multiple and reversed ranges for XML dialplan date and time conditions.

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-7284 A simplification of command line arguments to allow for using -base instead of specifying each directory when using alternate configs.
  • FS-7285 Allow eavesdrop to bridge only one leg
  • FS-7164 Added support for URL attribute in the grammar tag for mod_rayo. This is useful for MRCP engines to look up their grammars directly.
  • FS-7299 Implement cookie-file option for mod_xml_cdr
  • FS-7302 Added params to fs_encode.c:-c for path to conf_dir -k for path to log_dir -m for path to mod_dir
  • FS-7309 Allow removal of User-Agent header from the sip message
  • FS-7304 Multiple and reversed ranges for XML dialplan date and time conditions

(more…)


FreeSWITCH Week in Review (Master Branch) February 7th-13th

Hello, again. This past week in the FreeSWITCH master branch we had 24 commits. The new features are: the addition of mongo_find_n API and the addition of error logs in mod_java.

This edition of the FreeSWITCH Week in Review marks the one year anniversary since I started this project! A whole year worth of commits! That is 1701 commits to be exact! And so many more to come!

Join us on Wednesdays at 12:00 CT for some more FreeSWITCH fun! And head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

(more…)