Дополнительные опции позволяют изменить внешний вид и поведение приложения, и задаются в файле конфигурации /etc/microimpuls/portal/client.js.
Для интерфейса infinitly доступны следующие опции.
- Логика работы
- Режим авторизации
- Возможность ввода символов в пароле
- Возможность регистрации через SMS
- Режим регистрации
- Маска номера мобильного телефона в экране регистрации
- Отображение кнопки и возможность смены аккаунта
- Сохранение логина и пароля в полях ввода на экране авторизации при перезапуске приложения
- Перезагрузка устройства после первой активации
- Отключение кнопки SET на приставках MAG
- Выбор используемого интерфейса приложения через настройки аккаунта в Smarty
- Выбор используемого интерфейса на странице «Настройки»
- Приостановка запросов к серверу в режиме Stand-By
- Использование системной клавиатуры устройства для ввода
- Логика управления
- Воспроизведение контента
- Шаг перемотки плеера
- Шаг увеличения/уменьшения громкости
- Сохранение выбранного соотношения сторон для каждого канала отдельно
- Сохранение выбранного языка аудио-дорожки для каждого канала отдельно
- Автоматическое скрытие меню при воспроизведении контента
- Настройка UDP Proxy на устройствах Android
- Установка особого соотношения сторон экрана при воспроизведении фильмов
- Внешний вид — общие
- Внешний вид — ТВ
- Внешний вид — видеотека
- Отображение категории «Новинки» в видеотеке
- Отображение категории «Пакеты фильмов» в видеотеке
- Отображение категории «Купленное» в видеотеке
- Отображение категории «Просмотренное» в видеотеке
- Отображение категории «Избранное» в видеотеке
- Группировка фильмов по категориям или по жанрам
- Отображение пункта «Войти на сеанс»
- Способ сортировки фильмов по умолчанию
Логика работы
Режим авторизации
Название опции: auth_mode, тип данных: string.
Возможные значения:
- password — по логину и паролю (по умолчанию).
- device_uid — по уникальному идентификатору устройства (обычно MAC-адресу) или по IP-адресу. В случае неуспешной авторизации абоненту будет предложена авторизация по логину и паролю.
- device_uid_wo_fallback — то же самое, что device_uid, но без обработки некоторых ситуаций неуспешной авторизации и перехода на авторизацию по логину и паролю.
Пример:
var CLIENT_SETTINGS = {
// …
'auth_mode': 'password'
};Возможность ввода символов в пароле
Название опции: is_letters_in_password, тип данных: bool.
Возможные значения:
- true — в пароле можно вводить цифры и буквы.
- false — в пароле можно вводить только цифры (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'is_letters_in_password': false
};Возможность регистрации через SMS
Название опции: registration_available, тип данных: bool.
Возможные значения:
- true — кнопка регистрации через SMS отображается.
- false — не отображается (по умолчанию).
Для возможности регистрации через SMS требуется корректная настройка интеграции с SMS-шлюзом на стороне сервера Smarty.
Пример:
var CLIENT_SETTINGS = {
// …
'registration_available': false
};
Режим регистрации
Название опции: registration_mode, тип данных: string.
Возможные значения:
- phone — регистрация по номеру телефона (по умолчанию).
- phone_and_password — регистрация по номеру телефона и паролю.
Пример:
var CLIENT_SETTINGS = {
// …
'registration_mode': 'phone_and_password'
};
Маска номера мобильного телефона в экране регистрации
Название опции: registration_phone_mask, тип данных: string.
По умолчанию +7 ??? ??? ?? ??.
В маске используется специальный символ ?, вместо которого будет подставляться вводимое значение, остальные символы будут отображены как есть.
Пример:
var CLIENT_SETTINGS = {
// …
'registration_phone_mask': "+7 ??? ??? ?? ??"
};Отображение кнопки и возможность смены аккаунта
Название опции: show_logout_option, тип данных: bool.
Возможные значения:
- true — в экране «Мой профиль» при нажатии желтой кнопки пользователь сможет выйти из своего аккаунта и войти под другим аккаунтом.
- false — возможность логаута будет недоступна (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'show_logout_option': false
};Сохранение логина и пароля в полях ввода на экране авторизации при перезапуске приложения
Название опции: restore_login_form_inputs_from_settings, тип данных: bool.
Возможные значения:
- true — при перезапуске приложения и в случае логаута в полях ввода на экране авторизации будут заполнены логин и пароль с предыдущей сессии.
- false — данные заполнены не будут (по умолчанию).
Рекомендуется использовать эту опцию при методе авторизации password для избежания потери пароля абонентами после логаута.
Пример:
var CLIENT_SETTINGS = {
// …
'restore_login_form_inputs_from_settings': false
};Перезагрузка устройства после первой активации
Название опции: reboot_device_after_login_with_password, тип данных: bool.
Возможные значения:
- true — после авторизации абонента логином и паролем через форму авторизации произойдет перезагрузка устройства.
- false — перезагрузка производиться не будет, приложение будет загружено как обычно (по умолчанию).
Может быть использовано для выполнения системных операций биллинга при первичной «активации» приставки абонентом.
Пример:
var CLIENT_SETTINGS = {
// …
'reboot_device_after_login_with_password': false
};Отключение кнопки SET на приставках MAG
Название опции: disable_set_button_on_mag, тип данных: bool.
Возможные значения:
- true — кнопка SET (Setup) на пульте приставки MAG будет заблокирована.
- false — кнопка будет работать согласно настройкам в прошивке (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'disable_set_button_on_mag': false
};Выбор используемого интерфейса приложения через настройки аккаунта в Smarty
Название опции: check_account_template, тип данных: bool.
Возможные значения:
- true — после авторизации аккаунта будет осуществляться проверка шаблона, установленного в настройках аккаунта в Smarty, и если он отличается от используемого приложение будет перезагружено в нужном шаблоне (по умолчанию).
- false — установленный шаблон в настройках аккаунта в Smarty будет игнорироваться.
Пример:
var CLIENT_SETTINGS = {
// …
'check_account_template': true
};Выбор используемого интерфейса на странице «Настройки»
Название опции: show_change_template_settings, тип данных: bool.
Возможные значения:
- true — на странице «Настройки» внутри приложения будет отображен пункт «Выбор шаблона». Список шаблонов для выбора будет сформирован из массива, прописанного в опции
available_templates. - false — пункт «Выбор шаблона» на странице настроек будет скрыт (по умолчанию).

Пример:
var CLIENT_SETTINGS = {
// …
'show_change_template_settings': true
};Приостановка запросов к серверу в режиме Stand-By
Название опции: block_requests_in_standby, тип данных: bool.
Возможные значения:
- true — включает блокировку запросов к серверу, если устройство находится в режиме Stand-By. После выхода из Stand-By отправка запросов к серверу восстанавливается, однако данные в интерфейсе могут быть устаревшими в течение некоторого времени.
- false — запросы не прекращаются даже в Stand-By, отображаемые в интерфейсе данные не устаревают (по умолчанию).
Опция позволяет сэкономить ресурсы сервера в моменты простоя пользовательских устройств.
Пример:
var CLIENT_SETTINGS = {
// …
'block_requests_in_standby': false
};Использование системной клавиатуры устройства для ввода
Название опции: use_system_keyboard, тип данных: bool.
Возможные значения:
- true — включает использование системной клавиатуры устройства для ввода значений вместо встроенной клавиатуры приложения.
- false — для ввода значений используется встроенная клавиатура приложения (по умолчанию).
Опция работает только для устройств с поддержкой вызова системной клавиатуры.
Пример:
var CLIENT_SETTINGS = {
// …
'use_system_keyboard': true
};Логика управления
Режим совместимости с гайдлайнами Smart TV платформ
Название опции: samsung_guidelines_compatibility_mode, тип данных: bool.
Возможные значения:
- true — включить режим совместимости с рекомендациями Smart TV платформ.
- false — отключить (по умолчанию).
Режим совместимости влияет на логику поведения портала, в том числе на назначение кнопок пульта, и необходим для включения некоторых специальных ограничений для более простой публикации в магазины приложений Samsung и LG.
Пример:
var CLIENT_SETTINGS = {
// …
'samsung_guidelines_compatibility_mode': false
};Переключение каналов внутри выбранной категории
Название опции: switching_channels_inside_category, тип данных: bool.
Возможные значения:
- true — переключение каналов кнопками Ch+/- будет происходить внутри выбранной категории каналов.
- false — переключение будет происходить внутри категории «Все», даже если выбрана другая категория (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'switching_channels_inside_category': false
};Воспроизведение контента
Шаг перемотки плеера
Название опции: player_rewind_step, тип данных: int.
Позволяет установить шаг перемотки плеера в режиме архива и видеотеки за одно нажатие кнопки перемотки. Шаг задается в секундах, по умолчанию 30.
Пример:
var CLIENT_SETTINGS = {
// …
'player_rewind_step': 30
};Шаг увеличения/уменьшения громкости
Название опции: volume_control_step, тип данных: int.
По умолчанию 5 (процентных пунктов из 100, где 100 — максимальная громкость, 0 — минимальная).
Пример:
var CLIENT_SETTINGS = {
// …
'volume_control_step': 5
};Сохранение выбранного соотношения сторон для каждого канала отдельно
Название опции: save_aspect_ratio_per_channel, тип данных: bool.
Возможные значения:
- true — в настройках приложения на устройстве выбранное пользователем соотношение сторон будет сохраняться отдельно для каждого канала.
- false — будет сохраняться последнее выбранное соотношение сторон общее для всех каналов (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'save_aspect_ratio_per_channel': false
};Сохранение выбранного языка аудио-дорожки для каждого канала отдельно
Название опции: save_audio_track_lang_per_channel, тип данных: bool.
Возможные значения:
- true — в настройках приложения на устройстве выбранный пользователем язык аудио-дорожки будет сохраняться отдельно для каждого канала.
- false — будет сохраняться последний выбранный язык общий для всех каналов (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'save_audio_track_lang_per_channel': false
};Автоматическое скрытие меню при воспроизведении контента
Название опции: autohide_timer, тип данных: int.
Позволяет задать тайм-аут (в минутах), по истечению которого должен быть текущий экран будет скрыт и открыт полноэкранный плеер, если в настоящий момент есть воспроизведение какого-то контента.
По умолчанию 0 (скрытие отключено).
Пример:
var CLIENT_SETTINGS = {
// …
'autohide_timer': 2
};Настройка UDP Proxy на устройствах Android
Название опции: show_udp_proxy_settings, тип данных: bool.
Возможные значения:
- true — в меню настроек будет отображаться пункт «UDP Proxy», с помощью которого можно настроить оборачивание Multicast-ссылок через UDP Proxy.
- false — пункт будет скрыт (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'show_udp_proxy_settings': false
};Установка особого соотношения сторон экрана при воспроизведении фильмов
Название опции: set_default_aspect_ratio_for_vod, тип данных: bool.
Возможные значения:
- true — после включения воспроизведения фильма из видеотеки будет принудительно установлено соотношение сторон 16×9.
- false — будет сохранено соотношение сторон, выбранное ранее абонентом (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'set_default_aspect_ratio_for_vod': false
};Внешний вид — общие
Дополнительный CSS класс для тела интерфейса
Название опции: custom_body_class, тип данных: string.
Позволяет подключить дополнительный класс к тегу body портала. Может быть использовано для кастомизации интерфейса через дополнительный CSS-файл.
По умолчанию не задано.
Пример:
var CLIENT_SETTINGS = {
// …
'custom_body_class': "custom"
};Внешний вид — ТВ
Глубина отображения телепрограммы
Название опции: max_epg_depth, тип данных: int.
Определяет глубину EPG в днях для экрана «Телепрограмма». Если значение опции больше 0, то глубина будет равна этому значению. Если опция не задана (или равна 0), то для канала с архивом будет использована глубина архива (поле max_archive_duration канала), а если у канала нет архива — программа передач будет отображаться только за текущий день.
По умолчанию 0.
Пример:
var CLIENT_SETTINGS = {
// …
'max_epg_depth': 0
};Отображение категории «Избранное» для телеканалов
Название опции: tv_show_favorites, тип данных: bool.
Возможные значения:
- true — в списке каналов будет отображаться категория «Избранное» и пользователю доступна возможность добавлять каналы в избранное.
- false — функция будет отключена (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'tv_show_favorites': false
};Внешний вид — видеотека
Отображение категории «Новинки» в видеотеке
Название опции: vod_show_news, тип данных: bool.
Возможные значения:
- true — отображать категорию «Новинки» (по умолчанию).
- false — не отображать.
Пример:
var CLIENT_SETTINGS = {
// …
'vod_show_news': false
};Отображение категории «Пакеты фильмов» в видеотеке
Название опции: vod_show_packages, тип данных: bool.
Возможные значения:
- true — в списке категорий в видеотеке будет показана категория «Пакеты фильмов» с пакетами фильмов, настроенными в Smarty как пакеты (по умолчанию).
- false — категория будет скрыта.
Пример:
var CLIENT_SETTINGS = {
// …
'vod_show_packages': true
};Отображение категории «Купленное» в видеотеке
Название опции: vod_show_purchased, тип данных: bool.
Возможные значения:
- true — в списке категорий в видеотеке будет показана категория «Купленное», содержащая купленные фильмы (в рамках аренды или подписки).
- false — категория будет скрыта (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'vod_show_purchased': false
};Отображение категории «Просмотренное» в видеотеке
Название опции: vod_show_viewed, тип данных: bool.
Возможные значения:
- true — в списке категорий в видеотеке будет показана категория «Просмотренное», содержащая просмотренные и недосмотренные фильмы.
- false — категория будет скрыта (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'vod_show_viewed': false
};Отображение категории «Избранное» в видеотеке
Название опции: vod_show_favorited, тип данных: bool.
Возможные значения:
- true — в списке категорий в видеотеке будет показана категория «Избранное» и пользователю доступна возможность добавлять фильмы в избранное.
- false — функция будет отключена (по умолчанию).
Пример:
var CLIENT_SETTINGS = {
// …
'vod_show_favorited': false
};Группировка фильмов по категориям или по жанрам
Название опции: filter_videos_by_genres, тип данных: bool.
Возможные значения:
- true — фильмы будут группироваться по жанрам (по умолчанию).
- false — фильмы будут группироваться по категориям (жанры в Smarty с включенной опцией «Является категорией»).
Пример:
var CLIENT_SETTINGS = {
// …
'filter_videos_by_genres': true
};Отображение пункта «Войти на сеанс»
Название опции: show_seances, тип данных: bool.
Возможные значения:
- true — будет показан пункт «Войти на сеанс» внутри раздела «Мой профиль».
- false — пункт входа на сеанс показан не будет (по умолчанию).
Сеанс — усеченный вариант просмотра фильма, доступный абоненту в определенное время после ввода билета. Плеер в режиме сеанса лишен возможности перемотки или постановки на паузу (имитация реального сеанса в кинотеатре).
Пример:
var CLIENT_SETTINGS = {
// …
'show_seances': true
};
Способ сортировки фильмов по умолчанию
Название опции: default_vod_sort_order, тип данных: string.
Возможные значения:
- -created_at — по дате добавления (сначала самые новые) (по умолчанию).
- -kinopoisk_rating — по рейтингу Кинопоиска (сначала самые популярные).
- -imdb_rating — по рейтингу IMDB (сначала самые популярные).
- -year — по году выхода фильма (сначала самые новые).
- -premiere_date — по дате выхода премьеры фильма (сначала самые новые).
- name — по названию (в алфавитном порядке).
Пример:
var CLIENT_SETTINGS = {
// …
'default_vod_sort_order': "-created_at"
};