free_switch

Got Stuck in FreeSwitch Installation? Let us help you in the crisis.

FreeSWITCH whereas is an extensible open source cross-platform telephony platform designed to route and interconnects prominent communication protocols using audio, video, text or any other form of media. It can be used as a soft-client, carrier-class SoftSwitch or even as PBX.

FreeSwitch Installation:

Following are the needed steps to get it up and running.

Installing FreeSwitch Dependencies:

  • 1. Pre-requisites: We require using git to drag FreeSwitch from the GIT repo. To install GIT we require the EPEL repository installed:
1
2
[root@voip ~]# rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-5.noarch.rpm
[root@voip ~]# yum install git
  • 2. Install the required packages:
1
[root@voip src]# yum install autoconf automake gcc-c++ git-core libjpeg-devel libtool make ncurses-devel unixODBC-devel openssl-devel gnutls-devel libogg-devel libvorbis-devel curl-devel libtiff-devel libjpeg-devel python-devel expat-devel zlib zlib-devel bzip2 which
  • 3. Change directory and drag the source from the git repo :
1
2
[root@voip src]# cd /usr/local/src
[root@voip src]# git clone git://git.freeswitch.org/freeswitch.git
  • 4. Change into the recently downloaded source code directory:
1
[root@voip src]# cd freeswitch/
  • 5. Run the bootstrap and configure scripts to create the required modules.conf and get the code ready for compiling:
1
2
[root@voip freeswitch]# ./bootstrap.sh
[root@voip freeswitch]# ./configure --without-libcurl --without-pgsql
  • 6. Edit the modules.conf file. Remove the # in front of any modules you want to compile:
1
[root@voip freeswitch]# vim modules.conf
  • 7. Make and Install Freeswitch:
1
[root@voip freeswitch]# make && make install
  • 8. Install the default sounds:
1
[root@voip freeswitch]# make uhd-sounds-install && make uhd-moh-install
  • 9. Copy the init script and set the correct permissions:
1
2
[root@voip freeswitch]# cp build/freeswitch.init.redhat /etc/init.d/freeswitch
[root@voip init.d]# chmod 755 /etc/init.d/freeswitch
  • 10. Configure Freeswitch to start on boot:
1
2
[root@voip freeswitch]# chkconfig --add freeswitch
[root@voip freeswitch]# chkconfig freeswitch on
  • 11. You require modifying the default init script. It points to Freeswitch being installed in /opt/freeswitch/ however we installed it in /usr/local/freeswitch/ You require changing the lines:
1
2
3
4
5
FS_FILE=${FS_FILE-/opt/freeswitch/bin/freeswitch}
FS_HOME=${FS_HOME-/opt/freeswitch}
<strong>To</strong>
FS_FILE=${FS_FILE-/usr/local/freeswitch/bin/freeswitch}
FS_HOME=${FS_HOME-/usr/local/freeswitch}
  • 12. Next, we require changing the FreeSWITCH directory permissions as we will be running it under the FreeSWITCH account:
1
2
3
[root@voip local]# cd /usr/local
[root@voip local]# chown -R freeswitch freeswitch
[root@voip local]# chgrp -R freeswitch freeswitch
  • 13. For performance reasons, it is recommended to change the kernel boot parameters to disable the tick-less feature. To do this you require adding nohz=off to the end of your boot parameters in your grub.conf.
1
[root@voip freeswitch]# vim /boot/grub/grub.conf
  • Add to the end of the line starting with kernel to add nohz=off at the end. Mine becomes
1
kernel /vmlinuz-2.6.32-71.el6.x86_64 ro root=/dev/mapper/vg_voip-lv_root rd_LVM_LV=vg_voip/lv_root rd_LVM_LV=vg_voip/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us crashkernel=auto rhgb quiet nohz=off
  • 14. Restart for the kernel parameters to take effect.

At Gventure Technology, Our FreeSWITCH Engineers will be providing an environment where your issues can be resolved ASAP.

Tagged: