About


This page describes FreeSWITCH™ numbering conventions, basic download instructions, and directions to useful installation pages.


Conventions

The FreeSWITCH™ numbering format is "version.release.maintenance". The release numbering convention is even numbers for current public releases and odd numbers for development branches.

Selecting a Version

The primary FreeSWITCH™ releases are: Current public release, recommended for production systems. Current branch, contains in-test fixes since the current public release, intended as the next maintenance release. Master development, containing the latest fixes and features, intended as the next major release.

If you find bugs or issues with the current public release, they must be tested using the latest Master because it's possible the problem was fixed. Also, the developers require all bugs to be tested using the latest Master before considering any bug reports.

 If the bug persists in Master, then you must file an issue on GitHub: https://github.com/signalwire/freeswitch/issues


If you're using version 1.8 which is tagged End Of Life, you should upgrade to 1.10 NOW.

Download Current Public Release

The current public version/release of FreeSWITCH™ recommended for production systems is 1.10, created 5 August, 2019 followed by maintenance levels. The current release of sounds and prompts is 1.0.52 as of 19 August, 2016.

The latest maintenance level of the current public release of FreeSWITCH™ can be downloaded from freeswitch-files via a browser. For linux, it's easier to copy/paste the command line below. This single long line performs: 1- Determines the latest public release available. 2- Downloads the compressed source file. 3- Decompresses the file into a folder in the current directory. 4- Renames the folder to freeswitch. If you don't want the folder renamed, remove the last && to the end of the line.

FSfile=$(curl -s https://files.freeswitch.org/releases/freeswitch/ | grep -oE "freeswitch-[0-9]*\.[0-9]*\.[0-9]*\.-release\.tar\.bz2" | tail -n 1) && echo Downloading $FSfile && curl https://files.freeswitch.org/freeswitch-releases/$FSfile | tar -xj && mv ${FSfile/.tar.bz2//} freeswitch

Download Current Branch

The current branch contains fixes going into the next maintenance level for the release. Download the current branch using the -b argument followed by 'v' concatenated with the release number. The git command creates the freeswitch directory and downloads the FreeSWITCH™ source files, replace # with the release number. 

git clone –b v1.# https://github.com/signalwire/freeswitch.git

Download Master Development

The master development release contains the latest fixes and features going into the next release. Download the latest master release using the "git clone" command below which creates the freeswitch directory and downloads the FreeSWITCH™ master development source files.

git clone https://github.com/signalwire/freeswitch.git








SignalWire STACK is a supported version of FreeSWITCH that comes with expert engineering services

SignalWire also offers Cloud Hosted resources including low-cost PSTN and SMS services for your FreeSWITCH Installation.

Using mod_signalwire in your FreeSWITCH server, and a SignalWire cloud account, you can connect to SignalWire to terminate SIP calls with no configuration.


Full details available by calling 877.742.2583 or by visiting freeswitch.com or signalwire.com







If you're new to FreeSWITCH™ consider purchasing the Mastering FreeSWITCH™ book and be sure to read this introductory article: http://www.linuxpromagazine.com/Issues/2009/106/TALK-SOFT.


Installation Methods



The easiest way to get FreeSWITCH™ is to install a pre-built package for your operating system, available for some Linux and Unix distributions and Windows.

Debian 8 Package (FreeSWITCH 1.6)

Debian 8 Jessie (preferred) The development team uses and builds against Debian 8 "Jessie". They recommend Debian because of its stable, yet updated, kernel and wide support. 

Centos 7 Package (FreeSWITCH  1.6)

CentOS 7 and RHEL 7

Windows




FreeSWITCH™ is available for source compilation on Unix , Linux, macOS, and Windows for the following reasons:

  • Pre-built binaries are not available
  • You want to see the entire process
  • You want to build the Master Development version because you require the very latest features or patches, or wish to hack FreeSWITCH

Debian 8 Jessie Source

1.6 depends on a number of libraries included with Debian 8, which is now the distribution of choice for FS core development team. Follow the instructions on the Debian 8 Jessie page; refer to Debian Post-Install Tasks for finishing touches.

macOS

There is an installer and comprehensive macOS guide containing instructions for setting up FreeSwitch™ on a Mac with features such as autostart, emailing voicemails and log management.

OpenBSD

Special notes for building from source on OpenBSD.

Smartos

Recently updated installation guide for SmartOS





Updating Binaries

In version 1.4 the names of a number of configuration settings were changed, so you can not simply use old config files on your new binaries.

Settings of the form sip_*_media have become rtp_*_media because they properly control RTP media streams, SIP has nothing to do with them.

For example, sip_secure_media is now called rtp_secure_media


Deprecated Instructions



FreeSWITCH™ is developed on Debian 8 "Jessie" which is the much preferred platform. These instructions for older operating systems are maintained as a courtesy, but are unlikely to work without a great deal of effort.

Debian 7 Package (FreeSWITCH 1.4)

Debian Wheezy Package

CentOS 6 Package

rpm -Uvh http://files.freeswitch.org/freeswitch-release-1-0.noarch.rpm
yum install freeswitch-config-vanilla
yum install sox freeswitch-sounds*

Enjoy FreeSWITCH!




These deprecated instructions are FreeSWITCH you may compile from source code. FreeSWITCH™ is available for source compilation on Unix and Linux distributions as well as Windows.

Debian 7 Source

Makefile that builds including libraries and build dependencies.

CentOS 6 Source

Makefile that builds including libraries and build dependencies.

Unix Variants

Mac OS X

Instructions for non-supported OS X systems can be found at Mac OS X Archive.

Windows

Compile with Visual Studio.