Этой статьей мы начинаем наш цикл статей об открытой телефонной платформе Freeswitch. Сегодня мы расскажем как устанавливать Freeswitch на CentOS 6.5
Первым делом обновим систему
yum update
Как всегда отключаем SELinux и перезагружаем машину
SELINUX=disabled
reboot
Устанавливаем необходимые компоненты
sudo yum install git gcc-c++ autoconf automake libtool wget python make expat-devel ncurses-devel
zlib zlib-devel e2fsprogs-devel libjpeg-devel unixODBC-devel openssl-devel sqlite-devel libcurl-devel pcre-devel speex-devel gnutls-devel libogg-devel libvorbis-devel curl-devel
gdbm gdbm-devel libedit-devel ldns dns-devel libldns-dev
Теперь можно переходить к непосредственной установке Freeswitch.
cd /usr/src
git clone -b v1.4 https://freeswitch.org/stash/scm/fs/freeswitch.git
cd /usr/src/freeswitch
./bootstrap.sh –j
В файле /usr/src/freeswitch/modules.conf раскомментируйте следующие модули (они нам пригодятся в дальнейшем):
mod_rtmp
mod_directory
mod_callcenter
mod_tts_commandline
mod_dingaling
mod_flite
mod_shout
Ознакомиться с значениями модулей вы можете по ссылке https://wiki.freeswitch.org/wiki/Modules
Далее стандартная процедура компиляции.
./configure
make && make install
Пока выполняется инсталляция можно пойти перекурить или выпить чашечку кофе.

Следующим шагом мы установим аудиофайлы
make sounds-install
make moh-install
make hd-moh-install
make hd-sounds-install
make uhd-moh-install
make uhd-sounds-install
make cd-sounds-install
make cd-moh-install
Установим русские звуковые файлы
make sounds-ru-install
make cd-sounds-ru-install
make uhd-sounds-ru-install
make hd-sounds-ru-install
Теперь нужно сделать так, чтобы наш Freeswitch стартовал автоматически при загрузке системы.
useradd freeswitch
cd /usr/local/
chown -R freeswitch:freeswitch freeswitch
chmod -R g+w freeswitch
cd /usr/src/freeswitch/build
cp freeswitch.init.redhat /etc/init.d/freeswitch
chmod +x /etc/init.d/freeswitch
cp freeswitch.sysconfig /etc/sysconfig/freeswitch
Подредактируем /etc/init.d/freeswitch
PROG_NAME=freeswitch
PID_FILE=${PID_FILE-/usr/local/freeswitch/log/freeswitch.pid}
FS_USER=${FS_USER-freeswitch}
FS_FILE=${FS_FILE-/usr/local/freeswitch/bin/freeswitch}
FS_HOME=${FS_HOME-/usr/local/freeswitch}
LOCK_FILE=/var/lock/subsys/freeswitch
FREESWITCH_ARGS="-nc"
RETVAL=0
Ссылку для CLI
cd /usr/local/bin/
ln -s /usr/local/freeswitch/bin/fs_cli fs_cli
По умолчанию после установки будут существовать номера 1000-1019 с default паролями 1234, так что, первым делом, советуем поменять этот пароль на любой другой.
Для этого переходим vars.xml
nano /usr/local/freeswitch/conf/vars.xmlВ строке
<X-PRE-PROCESS cmd="set" data="default_password=1234"/>
Теперь перейдем в CLI и сделаем перезагрузку XML
fs_cli
И в командной строке FS сделаем
reloadxml и reload mod_sofiaНа этом наша установка завершена.
Если вы в статье нашли ошибки или несоответствия, мы будем благодарны, если вы напишите нам о них в комментариях.