Установочные архивы WCS доступны для загрузки по ссылке

Загрузка установочного архива возможна непосредственно на сервер при помощи wget, например

wget https://flashphoner.com/downloads/builds/WCS/5.2/FlashphonerWebCallServer-5.2.XXXX.tar.gz

Установка

Для установки WCS необходимо распаковать архив и запустить скрипт установки install.sh:

tar -xvzf FlashphonerWebCallServer-5.2.XXXX.tar.gz
cd FlashphonerWebCallServer-5.2.XXXX
sudo ./install.sh


Установщик выполнит необходимые проверки и произведет установку WCS в директорию /usr/local/FlashphonerWebCallServer

В процессе установки будут пройдены следующие шаги:

В результате будет выведено сообщение об успешном завершении установки. В каталоге /usr/local/FlashphonerWebCallServer появится набор каталогов:

Установка в тихом режиме

В некоторых случаях, при автоматизированном развертывании типовых конфигураций сервера при помощи Ansible или другой системы автоматизации, WCS может быть установлен в тихом режиме

./install.sh -silent

В этом случае:

Особенности установки на различные версии Java

JDK 12 или 14

Необходимо удалить из файла wcs-core.properties следующие настройки

-XX:+UseConcMarkSweepGC
-XX:+PrintGCDateStamps
-XX:+PrintGCDetails

Также необходимо заменить настройку

-Xloggc:/usr/local/FlashphonerWebCallServer/logs/gc-core-

на

-Xlog:gc*:/usr/local/FlashphonerWebCallServer/logs/gc-core-:time

JDK 15

Дополнительно к изменениям настроек в JDK 12 или 14, необходимо удалить из файла wcs-core.properties настройки

-XX:+UseCMSInitiatingOccupancyOnly
-XX:CMSInitiatingOccupancyFraction=70

JDK 16

Дополнительно к изменениям настроек в JDK 12, 14, 15, необходимо добавить в файл wcs-core.properties настройку

--illegal-access=permit

JDK 17

Дополнительно к изменениям настроек в JDK 12, 14, 15, 16, необходимо удалить из файла wcs-core.properties настройку

--illegal-access=permit

и добавить настройки

--add-exports java.base/sun.security.provider=ALL-UNNAMED
--add-opens java.base/java.lang=ALL-UNNAMED

Получение и активация лицензии

Вы можете приобрести коммерческую лицензию онлайн на странице: http://flashphoner.com/prices. Кроме этого доступна 30-дневная ознакомительная версия, которую можно получить на этой странице: http://flashphoner.com/get_trial/?product=wcs5

Активация через веб-интерфейс

При первом входе в веб-интерфейс WCS по адресу https://yourserver:8444/admin/ , где yourserver - имя Вашего сервера, с доступным по умолчанию пользователем admin (пароль admin), отобразится окно с предложением ввести номер лицензии:

Введите номер Вашей лицензии и нажмите Next

Если активация была успешной, отобразится окно ввода учетных параметров.

Активация из командной строки

Воспользуйтесь скриптом активации лицензии:

cd /usr/local/FlashphonerWebCallServer/bin
./activation.sh

Скрипт попросит ввести номер лицензии:

Введите лицензионный ключ чтобы завершить активацию.

Деактивация лицензии

Чтобы активировать эту же лицензию на другом сервере, например в случае переноса WCS на другой сервер, деактивируйте лицензию на старом сервере и активируйте вновь на новом сервере.

Деактивация через веб-интерфейс

Войдите в веб-интерфейс WCS по адресу https://yourserver:8444/admin/, где yourserver - имя Вашего сервера. Нажмите кнопку "License". Отобразится страница просмотра лицензионного ключа:

Щелкните по ссылке Deactivate. Лицензия будет деактивирована, отобразится запрос лицензионного ключа:

Деактивация из командной строки

Для деактивации используется скрипт:

./deactivation.sh

Если активация не проходит

Проверьте firewall и убедитесь, что WCS-сервер может установить HTTPS / TCP соединение с сервером активации my.flashphoner.com:443
При недоступности сервера активации, настройте HTTP proxy по инструкции ниже.

Настройка HTTP proxy при недоступности сервера активации

Лицензионные серверы Flashphoner находятся за AWS ELB (Elastic Load Balancer) по адресу my.flashphoner.com. В случае, если ELB (и, соответственно, серверы лицензий) по каким-либо причинам не будет доступен, требуется настроить HTTP Proxy для работы подписок и активации лицензий.

Настройки прокси находятся в файле конфигурации /usr/local/FlashphonerWebCallServer/conf/wcs-core.properties:

# Proxy configuration
-Dhttp.proxyHost=proxy1.flashphoner.com
-Dhttp.proxyPort=3128
-Dhttps.proxyHost=proxy1.flashphoner.com
-Dhttps.proxyPort=3128
-Dhttp.nonProxyHosts=localhost|127.0.0.1|10.*|169.254.169.254


Вы можете указать адрес Вашего прокси-сервера, либо адрес одного из двух прокси-серверов Flashphoner:

proxy1.flashphoner.com
proxy2.flashphoner.com

Внимание! При указании параметров настройки прокси кавычки не допускаются! Приведенный ниже пример не будет работать:

-Dhttp.proxyHost="proxy2.flashphoner.com"
-Dhttp.proxyPort="3128"
-Dhttps.proxyHost="proxy2.flashphoner.com"
-Dhttps.proxyPort="3128"
-Dhttp.nonProxyHosts="localhost|127.0.0.1|10.*|169.254.169.254"

Настройка Firewall и NAT

Для корректной работы сервера все порты, перечисленные в таблице в разделе Ядро сервера должны быть открыты для входящего трафика в случае UDP и для установления соединения в случае TCP.

В таблице приведен пример правил NAT для маршрутизации входящего трафика, в случае, когда трафик приходит на внешний IP адрес и должен быть маршрутизирован на сервер, где установлен WCS. В таблице представлен минимальный необходимый набор портов для работы сервера. В зависимости от набора используемых функций и модулей (см. раздел Архитектура), набор правил может быть расширен в соответствии с таблицей в разделе Ядро сервера. Эти же порты должны быть открыты на firewall Linux сервера.

В таблице приведены порты используемые по умолчанию. Вы можете сконфигурировать WCS сервер на использование других портов.

TypeProtocolPort RangeSource
Custom UDP RuleUDP30000-330000.0.0.0/0
Custom TCP RuleTCP80810.0.0.0/0
Custom TCP RuleTCP84440.0.0.0/0
Custom TCP RuleTCP84430.0.0.0/0
Custom TCP RuleTCP30000-330000.0.0.0/0
Custom TCP RuleTCP19350.0.0.0/0
SSHTCP

22

0.0.0.0/0


SSH доступ на стандартном порту 22 здесь указан только для администрирования самого Linux-сервера. Таким образном минимальный необходимый набор портов - это:

Описание настройки SSL сертификатов для Secure Websockets и HTTPS см. в разделе Управление SSL-сертификатами.

Конфигурация IP адресов

Для правильной установки потребуется определить внешний IP адрес вашего сервера и адрес сетевого интерфейса. Скрипт установки попытается определить адрес автоматически, в случае, если это по каким-либо причинам не удалось, скрипт потребует ручного ввода адресов.
Если вы воспользовались рекомендацией в разделе 'Подготовка к установке' и начали с использования сервера со статическим и публичным IP адресом, совпадающим с адресом сетевого интерфейса, то IP вашего сервера можно узнать простой командой

#ifconfig



В этом примере IP - сервера 188.40.69.75. Запишите или скопируйте IP адрес вашего сервера. Он понадобится при установке.

Определение IP адресов в случае размещения за NAT

Часто может потребоваться разместить WCS5 сервер за корпоративным NAT или арендовать сервер в датацентре, который не предоставляет выделенных статических IP-адресов. Хороший пример для такого случая Amazon EC2, где серверы расположены за NAT.


При размещении WCS сервера за NAT, понадобится определить два IP адреса.

  1. Внешний IP адрес или Public IP может не принадлежать WCS серверу, но трафик, идущий на этот внешний IP адрес должен обязательно быть перенаправлен на WCS5.
  2. IP адрес сетевого интерфейса или Private IP - это реальный адрес, назначенный сетевому интерфейсу. На нем WCS будет открывать сокеты для взаимодействия с сетью.

Например для тестового сервера на Amazon EC2, внешний IP адрес: 54.189.212.111, а адрес сетевого интерфейса: 172.30.21.25. Если ваш сервер находится за NAT по отношению к браузерным клиентам, запишите или скопируйте эти IP адреса. Они понадобятся вам при настройке сервера.

Определение IP адресов в автоматическом и полуавтоматическом режимах

Начиная со сборки 5.2.921, WCS пытается автоматически определить IP адреса при запуске, если они не заданы, либо если сервер стартует в облачном окружении с поддержкой AWS API или Google Cloud API. Если определить IP адреса при запуске не удается, это можно сделать вручную при помощи команды

cd /usr/local/FlashphonerWebCallServer/bin
sudo ./webcallserver set-ip

Эта команда:

Рекомендуется использовать эту команду при проблемах определения IP адресов на сервере за NAT.