Get The FreeSWITCH Advantage™

Get the Books! eBook: FreeSwitch50 (50% discount)

What FreeSWITCH can do for you

The world's first cross-platform scalable
FREE multi-protocol softswitch

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 can perform full video transcoding and MCU functionality using its conferencing module. 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. The 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 Confluence.

FreeSWITCH Support

Get the Advantage

FreeSWITCH Solutions Solves Problems So You Can Focus On Your Bussiness.


Whether you're an IT pro or an enthusiast, settings up your own fully-featured telephone system is an exciting challenge.

Commercial Modules

Explore our commercial products & services

FreeSWITCH 1.6.15 released!

Releases -

The FreeSWITCH 1.6.15 release is here!

This is just a routine maintenance release, but there are some great features in this release as well.

Release files are located here:

features New features and improvements that were added:

  • FS-10006 [core] Allow adding parameters to P-Asserted-Identity
  • FS-10008 [mod_say_en] Add military time to say_en
  • FS-10017 [freeswitch-core] Add rtp_nack_buffer_size to control how many rtp packets are saved.
  • FS-9955 [mod_kazoo] Adding setting profile variable when setting channel variables
  • FS-9959 [mod_spandsp] Add two new channel variables: fax_t38_tx_reinvite_packet_count - overrides t38-tx-reinvite-packet-count param in spandsp.conf and fax_t38_rx_reinvite_packet_count - overrides t38-rx-reinvite-packet-count param in spandsp.conf

build Improvements in build system, cross platform support, and packaging:

  • FS-10003 [mod_ilbc] Adding a small tweak to freeswitch.spec file for improper libilbc2 requirement
  • FS-10010 [Windows] Fixed the windows WIX installer by including a proper vc runtime
  • FS-10034 [Windows] Fix WIX to respect Win32/x64 binary output folders
  • FS-9944 [Windows] Add core video support to windows build, add mod_png to windows build, and add mod_av to windows build
  • FS-9924 [CentOS] Removed libvpx dependency from SPEC file.
  • FS-9978 [mod_expr] Fixed an issue with random seed function not working for Windows

bugs The following bugs were squashed:

  • FS-10007 [mod_conference] Fixed an issue with reservation-id and conference video layouts
  • FS-10012 [mod_callcenter] Enabling bypass media if agent's leg have bypass_media_after_bridge=true
  • FS-10019 [mod_conference] Fixed a crash when playing mp4 in personal-canvas mode
  • FS-10020 [mod_av] Fixed an issue with error scrolls endlessly on a recording that fails to rtmp address
  • FS-10021 [RTP] Large RTP timestamp jump when system clock is late from internal timer
  • FS-10022 [mod_sofia] Add "none" as valid answer for tls-verify-policy
  • FS-10025 [core] Fixed global symbol scope issue causing modules to use another modules global pointer
  • FS-10026 [mod_verto] Reduce attach_wake calls by caching it
  • FS-10031 [mod_conference] Fixed an issue with personal canvas mode doesn't switch layouts properly when a group is specified
  • FS-10035 [mod_sofia] Fixed outbound calls use progressing not alerting
  • FS-6683 [mod_dingaling] Fix to deal with TLS-Fragments
  • FS-9137 [mod_openh264] Update to suoport openh264 release 1.5.0 and 1.6.0
  • FS-9206 [core] Enable proxy media auto-adjust on re-invite for video every time as the streams may be being added on re-invite
  • FS-9809 [mod_sofia] URL encode caller id number before sticking it in the FROM header in case we have non URL safe characters in the CID number in the caller profile
  • FS-9929 [core][mod_spandsp] Assert in switch_frame_buffer_dup when receiving a fax using t.38
  • FS-9931 [mod_sofia] Don't send display updates to endpoints who don't have UPDATE in their Allow header
  • FS-9932 [freeswitch-core] Error with group confirm feature combined with enterprise originate
  • FS-9933 [freeswitch-core] Fallback from native file failure to alternate extension
  • FS-9934 [mod_redis] Fixed a segfault on windows on close or connect failure
  • FS-9943 [core] Fixed the default 488 handling for t.38 re-invite switching to udptl mode when it should not.
  • FS-9946 [verto_communicator] Fixed an issue with video size when the window is resized on canary
  • FS-9947 [verto_communicator] Do not try to parse empty chat messages
  • FS-9954 [freeswitch-core] Fixed a crash on switch_ivr_intercept_session due null pointer for buuid
  • FS-9962 [mod_spandsp] Avaya IP Office IB FAX call T38 v0 failed
  • FS-9966 [mod_sofia] Fixed private ip in contact header when invite w/ nosdp
  • FS-9970 [mod_sofia] Don't detect nat in cases when the contact is in the acl, but the packet actually came from a proxy. We need to check where we got the packet from as being a natted address instead of the contact in order to properly handle nat to our next hop
  • FS-9975 [mod_sofia] Add contact params to request uri of outbound recovery reinvite for originally inbound calls
  • FS-9981 [mod_spandsp] Add api_on_fax_success api_on_fax_failure
  • FS-9984 [mod_enum] Fix for handle leak in Windows
  • FS-9989 [mod_kazoo] Add a parameter to ignore transient network issues
  • FS-9990 [freeswitch-core] Exhaust fmtp sensitive codecs before moving on with negotiation in video
  • FS-9997 [mod_verto] Fixed an invalid JSON-RPC response to an incorrect JSON-RPC request.

ClueCon Weekly

Current version


Development: 1.9.0

License: MPL 1.1

Help us better

Get the books