Установка FreeSwitch, SkypOpen, FreeTDM DAHDI mode, FusionPBX.
Установка FreeSWITCH FusionPBX Skypopen FreeTDM DAHDI mode на Centos 6
Подготовим Centos 6.X
Обновим систему
yum update -y
Как всегда, отключаем SELinux
/bin/sed -i -e s,'SELINUX=enforcing','SELINUX=disabled', /etc/selinux/config
reboot
Установим зависимости
yum -y 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 subversion autoconf \ automake libtool gcc-c++ ncurses-devel make libX11-devel Xvfb alsa-utils \ libXv libXScrnSaver xorg-x11-fonts* alsa-lib libXScrnSaver libtiff-devel \ libjpeg-devel kernel kernel-devel git xz xz-devel mesa-dri-drivers \ alsa-lib fontconfig freetype glibc libgcc \ libICE libSM libstdc++ libX11 libXau libxcb \ libXcursor libXext libXfixes libXi libXinerama \ libXrandr libXrender libXScrnSaver libXv \ sqlite sqlite-devel pcre pcre-devel speex-devel libedit-devel bison patch \ php php-pdo php-mysql
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm rpm -Uvh remi-release-6*.rpm epel-release-6*.rpmустановите ldns и ldns-devel
yum install ldns ldns-devel -yУстановим Apache веб-сервер.
yum install http*
Установим и включим MySQL
yum install mysql*
chkconfig mysqld on
service mysqld start
Задайте пароль MySQL
/usr/bin/mysqladmin -u root password "yourpassword"
Установим и настроим ODBC
yum install unixODBC-devel mysql-connector-odbc
Установим символическую ссылку от libmyodbc5.so на libmyodbc.so. [64] - для 64-битной ОС.
ln /usr/lib64/libmyodbc5.so /usr/lib64/libmyodbc.so
Запустим odbcinst -j. Отобразится список конфигурационных файлов.
# odbcinst -j unixODBC 2.2.14 DRIVERS............: /etc/odbcinst.ini SYSTEM DATA SOURCES: /etc/odbc.ini FILE DATA SOURCES..: /etc/ODBCDataSources USER DATA SOURCES..: /root/.odbc.ini SQLULEN Size.......: 4 SQLLEN Size........: 4 SQLSETPOSIROW Size.: 2
Раскомментируйте настройки драйвера MySQL в /etc/odbcinst.ini
Добавьте следующую информацию в файл odbc.ini находящийся в /etc/odbc.ini
[DEFAULT] Driver = MySQL [freeswitch] Driver = MySQL SERVER = localhost PORT = 3306 DATABASE = fusionpbx OPTION = 67108864 Socket = /var/lib/mysql/mysql.sock
Установим FreeSwitch c mod_skypopen.
cd /usr/src git clone https://freeswitch.org/stash/scm/fs/freeswitch.git cd freeswitch ./bootstrap.sh
https://freeswitch.org/issues-with-git-lately-a-few-changes-have-been-made/
October 30 2014
Are you having problems getting the FreeSWITCH sources from GIT since the recent updates?
you might have an older git client that is not following the 302 redirects correctly.
To fix this issue update your GIT origin remote to https://freeswitch.org/stash/scm/fs/freeswitch.git
If you have an existing checkout the following command will fix it.
git remote set-url origin https://freeswitch.org/stash/scm/fs/freeswitch.git
Раскомментируйте дополнительные модули в файле modules.conf
mod_rtmp mod_directory mod_callcenter mod_tts_commandline mod_dingaling mod_flite mod_shout mod_pocketsphinx mod_cidlookup mod_skypopen mod_curl mod_xml_curl
Продолжим установку FreeSWITCH
cd /usr/src/freeswitch
./configure
make
make install
Установим аудио файлы
8 kHz Standard Audio
make sounds-install make moh-install
16 kHz High Definition Audio
make hd-moh-install make hd-sounds-install
32 kHz Ultra High Definition Audio
make uhd-moh-install make uhd-sounds-install
48 kHz CD Quality Audio
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
Звуковые файлы инсталлируются по иерархической системе, т.е. если запустить установку файлов cd качества, все голосовые пакеты более низкого качества установятся автоматически.
Установка с FreeTDM DAHDI Mode
(Опция, пропустите если не требуется)
ссылки по freetdm
https://wiki.freeswitch.org/wiki/FreeTDM
Установим Skypopen
Как настроить skypopen.ko OSS звуковой драйвер (очень важно)
Убедитесь, что никакие звуковые драйверы не загружены, иначе ничего не получится.
После ввода:
lsmod | grep snd
не должно ничего отображаться. Если, все же, драйвера грузятся, попробуйте отключить звуковую карту в bios.
Установим зависимости Skype
yum install libqtxdg libqtxdg-devel qtwebkit qtwebkit-devel
Когда все в порядке, установим аудио драйвер для Skypopen.
cd /usr/src/freeswitch/src/mod/endpoints/mod_skypopen/oss make clean make insmod ./skypopen.ko mknod /dev/dsp c 14 3
Интерактивный установщик и конфигуратор mod_skypopen.
cd /usr/src/freeswitch/src/mod/endpoints/mod_skypopen/install ./install.pl
Добавим скрипт запуска клиента Skype в rc.local
echo "sh /usr/local/freeswitch/skypopen/skype-clients-startup-dir/start_skype_clients.sh" >> /etc/rc.d/rc.local
ссылки по теме skypopen:
http://ad-host.ru/skypopen-asterisk/
http://wiki.freeswitch.org/wiki/Mod_skypopen_Skype_Endpoint_and_Trunk
Продолжим установку FreeSwitch
Добавим пользователя Freeswitch
useradd freeswitch
Установим права и владельцев на файлы FreeSwitch. Скопируем init скрипт.
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
Добавим установки в freeswitch sysconfig
cat >> /etc/sysconfig/freeswitch <<EOT PID_FILE=/var/run/freeswitch/freeswitch.pid FS_USER=freeswitch FS_FILE=/usr/local/freeswitch/bin/freeswitch FS_HOME=/usr/local/freeswitch EOTИзменим права на запуск скрипта инициализации и добавим FreeSwitch в автозапуск при загрузке системы.
chmod 765 /etc/init.d/freeswitch /sbin/chkconfig --add freeswitch /sbin/chkconfig --level 5 freeswitch on /sbin/chkconfig --list freeswitch
Уберем дефолтные конфиги FreeSwitch из загрузки по умолчанию.
cd /usr/local/freeswitch/conf/dialplan/default mv 00_ladspa.xml 00_ladspa.noload mv 00_pizza_demo.xml 00_pizza_demo.noload mv 01_Talking_Clock.xml 01_Talking_Clock.noload
Установим ссылку на CLI
cd /usr/local/bin/ ln -s /usr/local/freeswitch/bin/fs_cli fs_cli
Установим FusionPBX
cd /var/www/html mkdir fusionpbx svn co http://fusionpbx.googlecode.com/svn/trunk/fusionpbx fusionpbxИсправим FusionPBX права доступа.
cd /var/www/html chown -R apache:apache fusionpbx
cd /usr/local/freeswitch/conf/ chmod 770 `find . -type d` chmod 660 `find . -type f`Добавим пользователя apache в группу freeswitch.
usermod -a -G freeswitch apache
Стартуем наши сервисы и установим их в автозагрузку.
service freeswitch start service httpd restart chkconfig freeswitch on chkconfig httpd on yum install monit service monit start chkconfig monit on
Окончательная настройка FusionPBX должна быть выполнена через веб-интерфейс:
http://youraddress/fusionpbx