Ниже приведена инструкция по установке портала для STB и Smart TV на сервер с ОС Debian, а также по настройке его взаимодействия с сервером Smarty Lite. Информацию о настройке тех или иных возможностей и об изменении поведения портала вы можете найти здесь: ссылка.
Для работы потребуется SSH доступ к серверу с правами root. Установка будет производится в консольном режиме через команды терминала. Если для получения привилегий root требуется выполнить команду sudo, то перед началом установки необходимо выполнить команду:
sudo su
Предполагается, что портал устанавливается на тот же сервер, на котором уже установлен сервер Smarty Lite, иначе на шаге настройки конфигурации nginx будут возникать ошибки из-за отсутствия настроек Smarty Lite.
Установка Web-сервера nginx
Портал это статический одностраничный сайт, состоящий из файлов html/css/javascript. Для хостинга портала можно использовать Web-сервер nginx с базовой конфигурацией для раздачи статики.
Устанавливаем зависимости с помощью apt:
apt update apt install nginx-common nginx nginx-extras
Установка пакетов портала
Портал состоит из двух видов установочных пакетов:
mw-engine-*.deb
— основной код портала и механизмы взаимодействия с устройством.mw-template-*.deb
— шаблон интерфейса.
Для работы портала необходимо обязательно установить и mw-engine
и какой-либо mw-template-*
, при этом можно установить несколько различных шаблонов интерфеса mw-template-*
.
Про особенности и возможности различных интерфейсов портала можно узнать на этой странице: ссылка.
Установочные пакеты портала можно скачать в вашем личном кабинете оператора также, как и пакеты Smarty Lite.
Внимание! Всегда используйте последнюю версию
mw-engine
вместе с последними версиямиmw-template-*
, поскольку обратная совместимость при выпуске новых версий портала между этими пакетами не гарантируется.Также при обновлении Smarty Lite рекомендуется обновлять и портал до последней версии, поскольку в API могут быть изменения, не поддерживающиеся в старой версии портала.
Далее установим пакеты портала, для примера будем настраивать шаблон futuristic
и impuls
:
dpkg -i mw-engine_*.deb
dpkg -i mw-template-*.deb
При возникновении ошибки
dpkg: warning: 'ldconfig' not found in PATH or not executable
dpkg: warning: 'start-stop-daemon' not found in PATH or not executable
выполните следующую команду:
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
После этого попробуйте установить пакеты еще раз.
Подготовка конфигурации Web-сервера nginx
Активируем конфигурацию портала для nginx и отключим default-конфигурацию:
ln -s /etc/nginx/sites-available/portal /etc/nginx/sites-enabled/portal rm /etc/nginx/sites-enabled/default
По умолчанию портал подключается к полной версии Smarty, поэтому в стандартной конфигурации используется имя smarty. Для Smarty Lite нужно выполнить замену на smarty-lite с помощью следующей команды:
sed -i -e 's/smarty/'smarty-lite'/g' /etc/nginx/sites-available/portal
Создаем директорию для кеша и логов nginx:
mkdir -p /var/cache/nginx mkdir -p /var/log/nginx/microimpuls/portal
Установим правильные права на директории для логов и загрузки файлов в Smarty:
chown -R www-data:www-data /usr/share/nginx/html/microimpuls
Перезапустим nginx с актуальными настройками:
/etc/init.d/nginx restart
Подключение портала к Smarty Lite
Портал взаимодействует с сервером Smarty Lite с помощью API. Данные для подключения задаются в файле конфигурации портала /etc/microimpuls/portal/client.js
.
После завершения установки Smarty Lite и запуска команды setup_initial_data в Smarty создается первый оператор с идентификатором Client ID = 1 и генерируется случайное значение API key. Это значение можно посмотреть в панели управления Smarty Lite в разделе «Общие настройки» → «Общие настройки Client» в поле «TVMW API key»:
Скопируйте данное значение (в этом примере: 07cbf5f6610149c987ed648bb86be7b3) и вставьте его в поле api_key
в файле конфигурации портала /etc/microimpuls/portal/client.js
:
sed -i -e 's/PUT API KEY HERE/'07cbf5f6610149c987ed648bb86be7b3'/g' /etc/microimpuls/portal/client.js
В конфигурации nginx по умолчанию задан специальный location /api
, который направляет запросы к API в uwsgi-сокет Smarty Lite, поэтому стандартное значение параметра api_url
можно не менять.
Более подробно об опциях подключения портала к Smarty и других настройках вы можете узнать на этой странице: ссылка.
После этого откройте портал в браузере для проверки правильности настройки, введя IP-адрес сервера (порт 80 по умолчанию). Если все сделано верно, то вы должны увидеть экран авторизации:
Для входа используйте логин и пароль демо-аккаунта 123 : 123.
Для открытия портала на ТВ-приставке укажите в настройках устройства тот же адрес портала, что и в браузере.