Данный скрипт предназначен для упрощения процесса установки и настройки, системы домашней автоматизации MajorDoMo, так же установки и настройки, платформы VoIP телефонии FreeSWITCH.
Обязательно запуск скрипта выполняем из под пользователя root (запускаем терминал и входим в систему на которую будем устанавливать и настраивать, MajorDoMo и/или FreeSWITCH с логином и паролем root пользователя)
Шаг.1 Скачиваем файлы скрипта в директорию /root/* командой
Код: Выделить всё
wget https://github.com/x-guest/mjdmfs/raw/master/mjdmfs.zip
Код: Выделить всё
unzip mjdmfs.zip
Код: Выделить всё
sudo bash ./mjdmfs.sh
Код: Выделить всё
sudo bash /root/mjdmfs.sh
Все скаченные и распакованные файлы необходимы для корректной работы данного скрипта. После установки и настройки всех необходимых компонентов, файлы можно будет удалить из директории root/*, список файлов приведен ниже.
Сам файл bash скрипта.
Код: Выделить всё
/root/mjdmfs.sh
Код: Выделить всё
/root/freeswitch/vars.xml
Код: Выделить всё
/root/freeswitch/autoload_configs/modules.conf.xml
Код: Выделить всё
/root/freeswitch/autoload_configs/xml_rpc.conf.xml
Код: Выделить всё
/root/freeswitch/sip_profiles/internal.xml
Обратите внимание, весь процесс установки системы домашней автоматизации MajorDoMo, является полностью автоматическим и начнётся сразу без подтверждения действия после ввода значения предложенного в главном меню скрипта, пример графического отображения меню приведен ниже.
На данном этапе выбираем нужное нам значение, предложенное в меню (рис. выше с лево) путем ввода значения 2 (нажимаем клавишу 2 ) что бы запустить установку MajorDoMo.
Если ранее устанавливали MajorDoMo на данную систему, скрипт обнаружит установленный сервис MajorDoMo и Вам будет предложено переустановить систему домашней автоматизации (рис. выше с право), соответственно для переустановки вводим значение 2
Переустановка корректно пройдет только в случае если ранее устанавливали MajorDoMo на Вашу систему данным скриптом.
** Web сервер поднят на чистом Apache без установки и надстройки Nginx - т.е. если у Вас ранее был установлен MajorDoMo, Вам необходимо настроить конфигурационный файл Nginx.
Обратите внимание, ввод значений ограничен, в случае ввода не правильного значения (отсутствующее в данном меню), будет отображено соответствующее сообщение об ошибке, в таком случае следуем подсказкам в появившемся сообщении, вводим любое значение затем вводим значения 2 для установки или переустановки системы домашней автоматизации MajorDoMo.
Весь процесс установки и настройки системы домашней автоматизации MajorDoMo займет ~30 минут, для оценки времени выполнения установки можно обратить внимание на лог хода установки, все выполняемые действия подписаны и пронумерованы от 1 до 93 , для визуального представления работы скрипта, ниже приведён в пример графического отображение процесса установки и настройки.
В процессе выполнения скрипта, установка приостановится и будет ожидать ввода с клавиатуры (рис. выше), ниже описаны причины и действия.
~20-й минута установка приостановится будет ожидать ввода libmcrypt prefix, следуйте подсказки в сообщении – просто нажмите ENTER установка продолжится.
~25-я минута, на данном этапе установка приостановится будет ожидать ввода придуманного вами пароля, для конфигурации подключения к базе данных, следуйте подсказки в сообщении – введите пароль для подтверждения нажмите ENTER установка продолжится.
Обратите внимание, весь процесс установки и настройки полностью автоматизирован и не требует Ваших действий, вплоть до ~20-й и ~25-й минуты установки с момента запуска, по завершению система автоматически перезагрузится.
После успешной установки воспользуйтесь любым браузером для входа в web интерфейс системы домашней автоматизации MajorDoMo, который будет доступен по IP адресу Вашего сервера (в адресной строке браузера введите http://ваш.ip.адрес.системы ).
Запомните важную информацию!
Web интерфейс vlc плейера, будет доступен по адресу:
Код: Выделить всё
http://ваш.ip.адрес.сервера:7070
Логин: пустой
Пароль:
Код: Выделить всё
password
Hostname:
Код: Выделить всё
localhost
Port:
Код: Выделить всё
1883
Логин:
Код: Выделить всё
root
введенный вами на ~25-й минуте установки.
③ Установка FreeSWITCH.
Аналогично как с установкой MajorDoMo (см. выше), процесс установки является полностью автоматическим и начнётся сразу без подтверждения действия после ввода значения предложенного в главном меню скрипта, пример графического отображения меню приведен ниже.
На данном этапе выбираем нужное нам значение, предложенное в меню (рис. выше с лево) путем ввода значения 3 (нажимаем клавишу 3 ) что бы запустить установку FreeSWITCH.
Если ранее устанавливали FreeSWITCH на данную систему, скрипт обнаружит установленный пакет FreeSWITCH и Вам будет предложено переустановить платформу VoIP телефонии FreeSWITCH (рис. выше с право), соответственно для переустановки вводим значение 3 .
Ввод значений ограничен, в случае ввода не правильного значения (отсутствующее в данном меню), будет отображено соответствующее сообщение об ошибке, в таком случае следуем подсказкам в появившемся сообщении, вводим любое значение затем вводим значения 3 для установки или переустановки платформы VoIP телефонии FreeSWITCH.
Обратите внимание, весь процесс установки полностью автоматизирован и займет ~20 минут.
В отличие от процесса установки системы домашней автоматизации MajorDoMo (см. выше) установка платформы VoIP телефонии FreeSWITCH не требует Ваших действий вообще (запустили скрипт установки и через ~20 минут, платформа VoIP телефонии FreeSWITCH готова к настройке), по завершению установки система автоматически перезагрузится.
④ Настройка FreeSWITCH.
Так же, как с процессом установки (см. выше), настройка является полностью автоматическим процессом и начнётся сразу без подтверждения действия после ввода значения предложенного в главном меню скрипта, пример графического отображения меню приведен ниже.
Обратите внимание, данный пункт меню будет доступен только если в системе будет установлена, платформа VoIP телефонии FreeSWITCH.
В ходе выполнения настройки конфигурации FreeSWITCH будут добавлены новые файлы на сервер, предыдущие версии файлов не будут удалены, они остаются в системе помеченными как файл.noload (переименованы).
На данном этапе выбираем нужное нам значение, предложенное в меню (рис. выше с лево) путем ввода значения 4 (нажимаем клавишу 4 ) что бы запустить настройку FreeSWITCH.
Если ранее настраивали FreeSWITCH на данной системе, скрипт обнаружит настроенный web интерфейс FreeSWITCH и Вам будет предложено перенастроить платформу VoIP телефонии FreeSWITCH (рис. выше с право), соответственно для перенастройки вводим значение 4 .
Для представления самого процесса настройки ниже приведен в пример ход действий для возможности настройки платформы VoIP телефонии FreeSWITCHвручную.
Обратите внимание все действия приведенные ниже необходимо произвести только в том случае если НЕ БУДЕТЕ настраивать платформу VoIP телефонии FreeSWITCH с помощью данного скрипта т.е. будете настраивать в ручную. При запуске настройки скриптом, Важно! правильно произвести "① Запуск скрипта" (см. выше), все настроенные файлы будут закачены на Ваш сервер, при этом предыдущие версии файлов остаются в системе помеченными как файл.noload (переименованы).
На чистом FreeSWITCH по умолчанию web интерфейс управления отсутствует, на данном этапе установим и настроим web интерфейс.
Создаем и директорию и загружаем в нее файлы web интерфейса.
Командой
Код: Выделить всё
mkdir /usr/share/freeswitch/htdocs/portal
Скачиваем файлы PORTAL (web интерфейса) в директорию usr»share»freeswitch/htdocs/portal
командой
Код: Выделить всё
git clone https://github.com/seven1240/FreeSWITCH-Portal.git /usr/share/freeswitch/htdocs/portal
Код: Выделить всё
sudo nano /etc/freeswitch/autoload_configs/modules.conf.xml
Код: Выделить всё
<!-- <load module="mod_xml_rpc"/> -->
Код: Выделить всё
<!-- <load module="mod_xml_curl"/> -->
Код: Выделить всё
<!-- <load module="mod_httapi"/> -->
Код: Выделить всё
<!-- <load module="mod_say_ru"/> -->
Код: Выделить всё
<load module="mod_xml_rpc"/>
Код: Выделить всё
<load module="mod_xml_curl"/>
Код: Выделить всё
<load module="mod_httapi"/>
Код: Выделить всё
<load module="mod_say_ru"/>
Код: Выделить всё
sudo nano /etc/freeswitch/autoload_configs/xml_rpc.conf.xml
перед ней вставляем следующею строку
Код: Выделить всё
<param name = "enable-websocket" value = "true" />
Код: Выделить всё
<param name="auth-realm" value="freeswitch"/>
<param name="auth-user" value="freeswitch"/>
<param name="auth-pass" value="works"/>
Код: Выделить всё
<!-- <param name="auth-realm" value="freeswitch"/> -->
<!-- <param name="auth-user" value="freeswitch"/> -->
<!-- <param name="auth-pass" value="works"/> -->
Открываем файл etc»freeswitch» 🞄vars.xml для редактирования командой sudo nano /etc/freeswitch/vars.xml .
Меняем пароль для VoIP абонентов, находим строку
Код: Выделить всё
<X-PRE-PROCESS cmd="set" data="default_password=1234"/>
Код: Выделить всё
<X-PRE-PROCESS cmd="set" data="default_password=1111"/>
Код: Выделить всё
<X-PRE-PROCESS cmd="set" data="sound_prefix=$${sounds_dir}/en/us/callie"/>
Код: Выделить всё
<X-PRE-PROCESS cmd="set" data="sound_prefix=$${sounds_dir}/ru/RU/vika"/>
Код: Выделить всё
<X-PRE-PROCESS cmd="set" data="default_language=ru"/>
Код: Выделить всё
<X-PRE-PROCESS cmd="set" data="use_profile=external"/>
Код: Выделить всё
<X-PRE-PROCESS cmd="set" data="use_profile=internal"/>
Код: Выделить всё
<X-PRE-PROCESS cmd="set" data="default_country=US"/>
Код: Выделить всё
<X-PRE-PROCESS cmd="set" data="default_country=RU"/>
Код: Выделить всё
<X-PRE-PROCESS cmd="set" data="default_areacode=918"/>
Код: Выделить всё
<X-PRE-PROCESS cmd="set" data="default_areacode=375"/>
Открываем файл etc»freeswitch»sip_profiles» 🞄internal.xml для редактирования командой
Код: Выделить всё
sudo nano /etc/freeswitch/sip_profiles/internal.xml
Код: Выделить всё
<param name="ext-rtp-ip" value="$${external_rtp_ip}"/>
Код: Выделить всё
<param name="ext-sip-ip" value="$${external_sip_ip}"/>
Код: Выделить всё
<param name="ext-rtp-ip" value="auto-nat"/>
Код: Выделить всё
<param name="ext-sip-ip" value="auto-nat"/>
Web интерфейс FreeSWITCH, будет доступен по адресу:
Код: Выделить всё
http://ваш.ip.адрес.сервера:8080/portal/index.html
Логин:
Код: Выделить всё
freeswitch
Код: Выделить всё
works
Код: Выделить всё
1111
Код: Выделить всё
1234
Код: Выделить всё
/etc/freeswitch/lang/ru/ru.xml
Код: Выделить всё
<language name="ru" sound-prefix="$${sounds_dir}/ru/RU/elena" tts-engine="cepstral" tts-voice="elena">
Код: Выделить всё
<language name="ru" sound-prefix="$${sounds_dir}/ru/RU/vika" tts-engine="cepstral" tts-voice="elena">