Цель статьи - рассказать о простом способе установки и
настройки freeswitch в Centos.
Статья не является
полным руководством и не претендует на истину в последней инстанции, я
бы сказал эта памятка самому себе.
Итак, начнем.
Весь процесс установки очень прост, нужно только скачать
скрипт gitit.sh
Переходим в папку
cd /usr/src/
Скачиваем скрипт
Wget http://files.mail.ru/F58956DD9EE04B89B196959834A12598
Даем права на запуск
chmod +x gitit.sh
и запускаем
./gitit.sh
Во время скачивания и установки можно пойти сделать себе
кофе :)
После того как freeswitch установился, сделаем
автозагрузку при старте системы
cp /usr/src/freeswitch/build/freeswitch.init.redhat /etc/init.d/freeswitch
редактируем
mcedit /etc/init.d/freeswitch
(должен быть установлен MC кому религия не позволяет использовать
MC могут
использовать vi или nano)
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}
Даем права 755
chmod 755 /etc/init.d/freeswitch
включаем запуск freeswitch при старте системы
chkconfig --level 345 freeswitch on
проверяем
chkconfig --list freeswitch
добавляем группу freeswitch
groupadd freeswitch
и пользователя freeswitch в только что созданную группу
useradd -g freeswitch freeswitch
меняем владельца файлов
chown -R freeswitch.freeswitch /usr/local/freeswitch
можно попробовать перезапустить систему
shutdown –r now
после перезагрузки проверим запустился ли freeswitch
ps auxw | grep freeswitch
мы должны увидеть
примерно следующие
500 2874
0.0 1.7 36388 17912 ? SNl
20:38 0:01
/usr/local/freeswitch/bin/freeswitch -nc
root 3673 0.0
0.0 4016 688 pts/0
S+ 22:12 0:00 grep freeswitch
первое, что нужно сделать после установки freeswitch - это
сменить дефолтный пароль "1234" к sip логинам 1000-1019:
редактируем vars.xml
mcedit /usr/local/freeswitch/conf/vars.xml
находим строку
и меняем на
свой пароль
<X-PRE-PROCESS cmd="set" data="default_password=1234"/>
теперь зайдем
CLI freeswitch
/usr/local/freeswitch/bin/fs_cli
Перезагрузим
reloadxml
и
sofia
profile restart all
Выходим из консоли
/exit
теперь попробуем зарегистрировать sip login 1000 любым софтфоном и позвонить на тестовый номер IVR 5000.
Следующим шагом будет загрузка русских фраз.
Скачиваем архив
cd /usr/src/
распаковываем архив в папку
tar –xvf freeswitch-sounds-ru-RU-elena-16000-1.0.13.tar.gz –C /usr/local/freeswitch/sounds/
в vars.xml
добавляем строку
<X-PRE-PROCESS
cmd="set" data="default_language=ru"/>
Снова заходим в CLI и перезагружаем XML
Reloadxml
Теперь при звонке на номер 5000 мы услышим русский IVR.
Следующим этапом будет подключение провайдера sipnet.ru к freeswitch
Mcedit /usr/local/freeswitch/conf/vars.xml
<X-PRE-PROCESS
cmd="set" data="default_provider=sipnet"/>
<X-PRE-PROCESS cmd="set"
data="default_provider_username=mylogin"/>
<X-PRE-PROCESS cmd="set"
data="default_provider_password=mypassword"/>
<X-PRE-PROCESS cmd="set"
data="default_provider_from_domain=sipnet.ru"/>
<!-- true or false -->
<X-PRE-PROCESS cmd="set"
data="default_provider_register=true"/>
<X-PRE-PROCESS cmd="set"
data="default_provider_contact=5000"/>
Не забываем перезагрузить конфиги в CLI.
Теперь попробуем позвонить на любой номер (на счете sipnet.ru должен быть положительный баланс).
Осталось настроить входящую маршрутизацию
mcedit /usr/local/freeswitch/conf/dialplan/public/00_inbound_did.xml
<include>
<extension name="incoming_SIPNET_to_1000">
<condition
field="destination_number" expression=mylogin>
<action application="set"
data="domain_name=$${domain}"/>
<action
application="transfer" data="1000 XML default"/>
</condition>
</extension>
<include>
Перезагружаем конфиги и пробуем принять звонок .
З.Ы если нашли ошибку PLS сообщите в комментариях.
Спасибо за шпаргалку.
ОтветитьУдалитьА вот кто скажет, почему такой длинный коннект даже между внутренними абонентами?
До момента КПВ больше 10 сек.
Очень раздражает :(
Смени дефолтный пароль vars.xml
ОтветитьУдалить