Smarty

  1. Домой
  2. Документы
  3. Smarty
  4. Конфигурация и обслуживание Smarty
  5. Системные параметры

Системные параметры

Данные настройки необходимо указывать в файле конфигурации Smarty /etc/microimpuls/smarty/smarty.py, либо в вашем кастомном файле конфигурации. Файл имеет синтаксис Python.

Внимание! Для того, чтобы изменения вступили в силу, необходимо перезагрузить uwsgi. Перезагрузка uwsgi осуществляется командой sudo service uwsgi restart

Общие настройки

  • DEBUG — включить режим отладки. При возникновении ошибок будут показаны развернутые stacktrace ошибки в браузере. Тип данных: bool. По умолчанию False.
  • TIME_ZONE — часовой пояс сервера согласно именованию IANA. Тип данных: string. По умолчанию Europe/Moscow.
  • SECRET_KEY — уникальный секретный ключ инстанса. Используется для безопасного кеширования секретных данных в процессе работы. Не забудьте поменять параметр SECRET_KEY на уникальное значение. Тип данных: string.
  • BILLING_CLIENTS_EXCLUDE — отключает работу встроенного биллинга (команды check_accounts и make_autopayments) для определённых Client ID. Тип данных: list.
  • UWSGI_THREADING_ENABLED — включает использование потоков uWSGI вместо нативных при выполнении некоторых фоновых задач, что предотвращает их ошибочное завершение при очистке ресурсов после выполнения запроса к серверу. Рекомендуется использование данного параметра при обнаружении ошибок инвалидации кэша после запросов. Требует включенного параметра enable-threads в конфигурации uWSGI.

Пример настройки:

DEBUG = False
TIME_ZONE = "Europe/Moscow"
SECRET_KEY = "de2kpvtRn19EGXu8r93DB1CDCZTmW5yE194pY7PQiw2kI7z002e1aCapj5HYITiY"
BILLING_CLIENTS_EXCLUDE = [1, 2,]

Список включенных модулей

  • INSTALLED_APPS — список включенных модулей. Список дополняет базовые модули, прописанные в base.py, через операцию +=. Тип данных: list.

Пример настройки:

INSTALLED_APPS += (
    'viewstats',
    'megogo',
    'tvzavr',
    'device_monitoring',
    'custom'
)

Настройки подключения к БД

  • DATABASES — в этом массиве настраивается подключение к СУБД. При использовании нескольких СУБД для репликации необходимо отдельно настроить подключение к каждой из них, задав для каждого подключения уникальное имя. Тип данных: dict.

Пример настройки:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'smarty',
        'USER': 'root',
        'PASSWORD': 'jAE427aAyzVA8k8p',
        'HOST': '192.168.77.150',
        'PORT': '',
    }
}

Настройки путей и адресов

  • SMARTY_URL — полный URL к инстансу Smarty. Используется для генерации полных URL к API и влияет на работу Smarty и модулей на низком уровне. Тип данных: string. По умолчанию http://smarty.example.com.
  • MEDIA_BASE_URL — полный URL, который используется в ответах API в качестве базового пути к изображениям и статическим ресурсам, например для иконок телеканалов, картинок EPG или обложек фильмов. В базовом варианте может быть равен значению SMARTY_URL. Тип данных: string.
  • TVMIDDLEWARE_PORTAL_DOMAIN — имя домена, на котором располагается портал для устройств типа STB и Smart TV. Используется только для вспомогательных информационных целей и не влияет на работу приложения. Тип данных: string. По умолчанию example.com.
  • TVMIDDLEWARE_API_URL — полный URL к TVMW API для использования в портале и приложениях. Используется для генерации полных URL к API и влияет на работу Smarty и модулей на низком уровне. Тип данных: string. По умолчанию http://smarty.example.com/tvmiddleware/api. Для мультидоменной инсталляции можно использовать относительное значение /api.

Пример настройки:

SMARTY_URL = 'http://smarty.example.com:8180'
MEDIA_BASE_URL = 'http://smarty.example.com:8180'
TVMIDDLEWARE_PORTAL_DOMAIN = 'example.com'
TVMIDDLEWARE_API_URL = '/api'

Настройки поведения абонентов и аккаунтов

  • TVMIDDLEWARE_CUSTOMER_LOG_ENABLED — включает логирование активности абонентов в БД. Тип данных: bool. По умолчанию False.
  • TVMW_REGISTRATION_DEFAULT_TARIFFS_LOCATION_FILTER — включает фильтрацию подключаемых по умолчанию тарифов по геолокации регистрации. При значение True в момент регистрации нового абонента ему будут подключены тарифы, помеченные как «Подключаемый по умолчанию» и соответствующие его геолокации (поля «Доступен в городах» или «Доступен в странах» в форме тарифа). В обратном случае геолокация при регистрации будет игнорироваться. Тип данных: bool. По умолчанию: True.

Пример настройки:

TVMIDDLEWARE_CUSTOMER_LOG_ENABLED = True
TVMW_REGISTRATION_DEFAULT_TARIFFS_LOCATION_FILTER = True

Настройки поведения TV и EPG

  • TVMIDDLEWARE_PROGRAM_LIST_SEARCH_DAYS_PAST — глубина поиска EPG в прошлое в днях. Используется при запросах на поиск контента. При использовании большого значения поиск будет осуществляться дольше и задействовать больше ресурсов сервера БД и Middleware. Тип данных: int. По умолчанию 1.
  • TVMIDDLEWARE_PROGRAM_LIST_SEARCH_DAYS_FUTURE — глубина поиска EPG в будущее в днях. Используется при запросах на поиск контента. При использовании большого значения поиск будет осуществляться дольше и задействовать больше ресурсов сервера БД и Middleware. Тип данных: int. По умолчанию 1.
  • TVMIDDLEWARE_PROGRAM_LIST_SEARCH_LIMIT_RESULTS_TO — максимальное количество результатов, которое будет возвращено сервером на запрос поиска передач (метод API ProgramListSearch). Тип данных: int. По умолчанию 20.
  • TVMIDDLEWARE_RECOMMENDATIONS_ENABLED — включить категорию «Рекомендуемые» в разделе «ТВ по интересам». Тип данных: bool. По умолчанию False.
  • TVMW_CONSIDER_PROGRAM_CATEGORY — если значение False, то в выдаче API-метода ProgramCategoryChannelList («ТВ по интересам») динамическая категория текущей передачи не учитывается, и список каналов формируется только исходя из фиксированной категории EpgChannel. Тип данных: bool. По умолчанию True.
  • TVMW_DISABLE_MULTICAST_SMARTTV — при True будут скрыты каналы с мультикаст-адресами для Smart TV. Тип данных: bool. По умолчанию True.
  • TVMW_DISABLE_MULTICAST_MOBILE — при True будут скрыты каналы с мультикаст-адресами для мобильных устройств. Тип данных: bool. По умолчанию True.
  • TVMIDDLEWARE_CHANNEL_LIST_MAX_ACCOUNTS_PER_MINUTE — скорость выставления флага необходимости обновления списка каналов у аккаунтов, регулирует максимальное количество аккаунтов в минуту, которым выставляется данный флаг (работает только при включенном механизме smarty_rq). Тип данных: int. По умолчанию 1000.
  • RQ_CHANNEL_LIST_CHANGED_JOB_TIMEOUT — максимальное время работы RQ в процессе выставления флага необходимости обновления списка каналов у аккаунтов. Тип данных: int. По умолчанию 3600.
  • TVMW_EPG_DO_NOT_IMPORT_UNUSED — опция позволяет отключить импорт неиспользуемых EPG-каналов и ускорить работу команды epg_import. Тип данных: bool. По умолчанию False.
  • TVMW_EPG_SAVE_MULTIPLE_CATEGORIES — сохранять ли все категории передачи, которые описаны в XMLTV, при импорте EPG. При значении False будет сохранена только первая найденная категория. Опция присутствует для обеспечения обратной совместимости со старыми версиями приложений. Тип данных: bool. По умолчанию True.
  • TVMW_EPG_IMPORT_ALLOW_PARSER_HANDLING — позволяет во время импорта EPG передать управление импортированием парсеру, если включено, то парсер может не загружать EPG при определенных условиях, необходимо отключать, если EPG не грузится по каким-то причинам. По умолчанию True.
  • TVMW_EPG_OPTIMIZE_DUMMY_SOURCE — включение упрощённого импорта, который не пересоздаёт существующие программы. По умолчанию False.
  • TVMW_EPG_DEFAULT_ASPECT_RATIO — указывает стандартное значение соотношения сторон для постеров импортируемых программ. При отсутствии постера с дефолтным соотношением происходит загрузка первого соответствующего постера. Возможные значения: 16:9, 4:3, 2:3. Тип данных: string. По умолчанию: 4:3.
  • TVMW_SELECTION_PREVIEW_ASPECT_RATIO — указывает размер возвращаемых постеров для методов, связанных с подборками. Тип данных: string. По умолчанию: None (при None берется значение TVMW_EPG_DEFAULT_ASPECT_RATIO).
  • TVMW_EPG_PREVIEW_MAX_WIDTH — ограничение длины превью-картинки передачи с разрешением 4×3. Предупреждение: для работы опции необходимо включить конвертацию постеров и иконок каналов в источнике EPG. Изображение сжимается согласно параметрам по следующему условию: если размер какой-либо стороны исходного изображения превышает заданные границы, то изображение сжимается пропорционально заданному условию (например, при наличии исходного изображения 1000×500 и ограничения 500×500 оно сжимается до 500×250). Тип данных: int. По умолчанию: 300.
  • TVMW_EPG_PREVIEW_MAX_HEIGHT — ограничение высоты превью-картинки передачи с разрешением 4×3. Предупреждение: для работы опции необходимо включить конвертацию постеров и иконок каналов в источнике EPG. Изображение сжимается согласно параметрам по следующему условию: если размер какой-либо стороны исходного изображения превышает заданные границы, то изображение сжимается пропорционально заданному условию (например, при наличии исходного изображения 1000×500 и ограничения 500×500 оно сжимается до 500×250). Тип данных: int. По умолчанию: 300.
  • TVMW_EPG_PREVIEW_MAX_WIDTH_16_9 — ограничение длины превью-картинки передачи с разрешением 16×9. Предупреждение: для работы опции необходимо включить конвертацию постеров и иконок каналов в источнике EPG. Изображение сжимается согласно параметрам по следующему условию: если размер какой-либо стороны исходного изображения превышает заданные границы, то изображение сжимается пропорционально заданному условию (например, при наличии исходного изображения 1000×500 и ограничения 500×500 оно сжимается до 500×250). Тип данных: int. По умолчанию: 300.
  • TVMW_EPG_PREVIEW_MAX_HEIGHT_16_9 — ограничение высоты превью-картинки передачи с разрешением 16×9. Предупреждение: для работы опции необходимо включить конвертацию постеров и иконок каналов в источнике EPG. Изображение сжимается согласно параметрам по следующему условию: если размер какой-либо стороны исходного изображения превышает заданные границы, то изображение сжимается пропорционально заданному условию (например, при наличии исходного изображения 1000×500 и ограничения 500×500 оно сжимается до 500×250). Тип данных: int. По умолчанию: 300.

Пример настройки:

TVMIDDLEWARE_PROGRAM_LIST_SEARCH_DAYS_PAST = 1
TVMIDDLEWARE_PROGRAM_LIST_SEARCH_DAYS_FUTURE = 3
TVMIDDLEWARE_PROGRAM_LIST_SEARCH_LIMIT_RESULTS_TO = 20
TVMW_EPG_DO_NOT_IMPORT_UNUSED = True
TVMW_EPG_DEFAULT_ASPECT_RATIO = '2:3'
TVMW_SELECTION_PREVIEW_ASPECT_RATIO = '16:9'
TVMW_EPG_PREVIEW_MAX_WIDTH = 300
TVMW_EPG_PREVIEW_MAX_HEIGHT = 300
TVMW_EPG_PREVIEW_MAX_WIDTH_16_9 = 300
TVMW_EPG_PREVIEW_MAX_HEIGHT_16_9 = 300

Настройки поведения VOD и онлайн-кинотеатров

  • TVMIDDLEWARE_VIDEO_NEW_DAYS — период в днях с даты добавления фильма, в течение которого добавленный фильм считается новинкой и отображается в соответствующем разделе в приложениях абонента. Тип данных: int. По умолчанию 60.
  • TVMIDDLEWARE_VIDEO_PREMIERE_DAYS — период в днях с даты премьеры фильма, в течение которого фильм считается премьерой и отображается в соответствующем разделе в приложениях абонента. Тип данных: int. По умолчанию 90.
  • TVMIDDLEWARE_VIDEO_PREMIERE_YEARS — диапазон лет, в котором добавленные фильмы считаются премьерами и будут возвращаться методом VideoList при добавлении параметра premiere. Диапазон высчитывается по следующей формуле: [текущий_год — TVMIDDLEWARE_VIDEO_PREMIERE_YEARS; текущий_год]. Предупреждение: при значении None возвращаются только те фильмы, в которых заполнено поле premiere. Тип данных: int. По умолчанию None.
  • TVMIDDLEWARE_CONTENT_POSITION_TTL_DAYS_VIDEO — период в днях, в течение которого необходимо хранить на сервере сохраненные позиции просмотра видео для возможности предложить абоненту продолжить просмотр с прошлой позиции. Тип данных: int. По умолчанию 30.
  • TVMIDDLEWARE_CONTENT_POSITION_TTL_DAYS_PROGRAM — период в днях, в течение которого необходимо хранить на сервере сохраненные позиции просмотра программы для возможности предложить абоненту продолжить просмотр с прошлой позиции. Тип данных: int. По умолчанию 30.
  • TVMIDDLEWARE_VIDEO_IS_VIEWED_TO_END_THRESHOLD_PERCENTAGE — устанавливает пороговое значение (в процентах) оставшегося времени до конца фильма, по достижении которого фильм считается просмотренным. Тип данных: int. По умолчанию 1.
  • TVMIDDLEWARE_VIDEO_EXTERNAL_API_REQUIRED — при значении True поля «Внешний ID» и «Обработчик API» в форме создания фильма будут обязательными. Тип данных: bool. По умолчанию False.
  • EXTERNAL_API_VIDEO_CHECK_BALANCE_REQUEST — при значении True включается оповещение биллинга во время проверки баланса (с помощью вызова метода perform_subscr_action_in_default_video_api_client с action='check_balance'), опция актуальная для операторов с интеграцией внешнего биллинга.
  • TVMIDDLEWARE_VIDEO_ACTORS_EXTENDED_UPDATE — при загрузке фильмов из стороннего источника будет производиться автоматическая подгрузка дополнительной информации об актёрах. Тип данных: bool. По умолчанию True.
  • TVMIDDLEWARE_MOVIEDB — выбор базы с фильмами, которая используется для заполнения информации о добавляемых фильмах. Доступные значения: kinopoisk, tmdb, kinopoisk_api_unofficial . Тип данных: string. По умолчанию kinopoisk_api_unofficial.
  • TVMIDDLEWARE_TMDB_API_KEY — API-ключ для работы с базой themoviedb.org (находится в личном кабинете сайта themoviedb.org в разделе Settings). Тип данных: string.
  • TVMIDDLEWARE_KINOPOISK_API_UNOFFICIAL_API_KEY — ключ для доступа к API Kinopoisk Api Unofficial https://kinopoiskapiunofficial.tech/
  • TVMW_VIDEO_LIST_SEARCH_BY_RELEVANCE — включает поиск по релевантности в поисковых запросах, в котором список фильмов в ответе будет отсортирован по положению поисковой строки: сначала возвращаются фильмы, где набор символов поиска находится на первых позициях. Предупреждение: в поисковой выдаче учитывается символ пробела, если в поисковой строке в конце будет указан пробел, то в ответе будут приходить только те фильмы, в которых одно из слов будет заканчиваться на соответствие поисковой строки (пробел в начале поискового запроса также учитывается). Тип данных: bool. По умолчанию: False.

Настройки поведения PVR

  • TVMIDDLEWARE_VODPVR_TIMEOUT_OFFSET — определяет за какое времени до удаления архивной записи они должны пропасть из выдачи для клиентов в часах. Тип данных: int. По умолчанию 2.
  • TVMW_DONT_USE_ENDLESS_WRT — при True отключается добавление флага endless=1 для приставок WRT в ссылках на видеопотоки. Тип данных: bool. По умолчанию False.
  • TVMIDDLEWARE_PROGRAM_RECORD_ONLY_FINISHED — при значении True в API-методе для получения списка записей в экране «Архив» не будут передаваться ещё неоконченные передачи. Тип данных: bool. По умолчанию False.

Настройки авторизации аккаунтов и устройств

  • TVMIDDLEWARE_CLEAN_OLD_SESSIONS_DAYS — время жизни сессии авторизации в днях. Если сессия не была в статусе «онлайн» в течение этого периода, то она будет автоматически удалена. Тип данных: int. По умолчанию 3650.
  • TVMIDDLEWARE_MULTILOGIN_ENABLED — включает или отключает механизм мультилогинов (аккаунт с неограниченными возможностями авторизации) в Smarty. Тип данных: bool. По умолчанию True.
  • TVMW_USE_DIRECT_AUTHKEY_GENERATOR — если True, то при авторизации будет использоваться генератор типа Direct вместо Secondary для незарегистрированных типов устройств. Тип данных: bool. По умолчанию False.
  • TVMW_REGISTRATION_SAVE_MOBILE_PHONE — cохраняет номер телефона, использованный при регистрации. Тип данных: bool. По умолчанию True.
  • RANDOM_NEXT_ABONEMENT — флаг переключения режима генерации абонементов при создании аккаунтов. При установке False номер каждого нового абонемента равен инкременту от максимального значения абонемента среди аккаунтов клиента, при установке True номер абонемента генерируется случайно (шесть знаков). Тип данных: bool. По умолчанию False.
  • TVMW_REGISTRATION_SUBNETS_FOR_CAPTCHA — устанавливает список подсетей, при регистрации из которых пользователям будет показана капча. Тип данных: array. По умолчанию [‘0.0.0.0/0’].
  • TVMW_UPDATE_PHONE_NUMBER_ON_REGISTER — при выставлении данной опции в True при попытке регистрации аккаунта на устройство, уже зарегистрированное в Smarty, не создаётся новый аккаунт, а к текущему аккаунту устройства дописывается указанный номер телефона. Тип данных: bool. По умолчанию False.
  • TVWM_MULTILOGIN_CREATE_DEVICE — при выставлении данной опции в True во время авторизации с аккаунта с выставленным мультилогином в Smarty создаётся привязанное устройство. Тип данных: bool. По умолчанию False.
  • TVMW_REMOVE_DUPLICATE_UID_ON_LOGIN — если True, то при вызове метода Login удаляются дубликаты устройств с одинаковым UID. Тип данных: bool. По умолчанию False.
  • TVWM_REBIND_DEVICE_ON_LOGIN — при значении True метод авторизации не возвращает ошибку о том, что устройство уже привязано к другому аккаунту, а вместо этого отвязывает устройство от старого аккаунта и привязывает к новому. Тип данных: bool. По умолчанию False.
  • TVMIDDLEWARE_API_ALLOW_ACCOUNT_REGISTER — при значении False блокируется возможность регистрации новых пользователей через TVMW API. Тип данных: bool. По умолчанию True.
  • TVMW_UPDATE_IP_IN_REALTIME — при значении True включается обновление IP и геолокации у аккаунта при любых API-запросах. Тип данных: bool. По умолчанию False.
  • TVMIDDLEWARE_LOGIN_TYPE_PRIORITY_ORDER — настройка порядка проверки типа авторизации. Используется для определения типа авторизации, при запросе на авторизацию в TVMW API. При авторизации в TVMW API Smarty проверяет переданные в соответствующий API-метод данные на удовлетворение условию каждого из типов авторизации по порядку. Будет принят первый тип, условию которого удовлетворяют переданные данные. Допустимые значения типов авторизации:
    • multilogin — мультилогин (если он включен и доступен для аккаунта)
    • ip — авторизация на основе ip-адреса источника запроса. Не учитывает ограничений на количество сессий устройств
    • basic_device — устройство базового типа
    • secondary_device — устройство дополнительного типа

По умолчанию:

TVMIDDLEWARE_LOGIN_TYPE_PRIORITY_ORDER = [
   'multilogin',
   'ip',
   'basic_device',
   'secondary_device',
]

Настройки внутреннего биллинга Smarty

  • TVMIDDLEWARE_API_ALLOW_UNSUBSCRIBE_BASIC — включает возможность отключения базовых тарифов через TVMiddleware API (через клиентские приложения), без данной опции биллинг Smarty позволяет только заменять один базовый тариф на другой.
  • TVMW_ACTIVATE_CUSTOMERS_ON_FIRST_PAYMENT — активирует абонентов при первой оплате. Тип данных: bool. По умолчанию False.
  • TVMW_ACTIVATE_REGISTERED_BY_DEFAULT — определяет статус параметра «активен» у аккаунтов, зарегистрированных через TVMW API. Тип данных: bool. По умолчанию False.
  • TVMW_MAXIMUM_PAYMENT_LIMIT — устанавливает ограничение для максимальной суммы финансовых операций. Тип данных: int. По умолчанию 5000.
  • TVMW_DISPLAY_HIDDEN_TARIFFS_WITH_PRICE— при значении True TVMW API-методы возвращают скрытые тарифы в том случае, если у них ненулевая стоимость. Тип данных: bool.

Настройки стриминга и маршрутизации

  • TVMIDDLEWARE_STREAM_SERVICE_TOKEN_TTL — время жизни одноразового токена для авторизации стриминг-сервисов в секундах. По прошествии данного времени для токена запускается механизм продления, если это поддерживается в используемом видео-сервере (например, Spectr или Flussonic). Тип данных: int. По умолчанию 3600 (60 минут).
  • TVMIDDLEWARE_STREAM_SERVICE_TOKEN_MAX_TTL — максимальное время жизни токена в секундах, по достижении которого продление не осуществляется. Тип данных: int. По умолчанию 10800 (180 минут).
  • TVMIDDLEWARE_STREAM_SERVICE_TOKEN_PROLONGATION_THRESHOLD_TTL — пороговое значение оставшегося времени жизни токена в секундах, после которого осуществляется продление. Тип данных: int. По умолчанию 360 (6 минут).
  • TVMIDDLEWARE_STREAM_SERVICE_AUTH_DURATION — временной интервал, по истечении которого происходит перепроверка токена во Flussonic. Указывается в секундах. Тип данных: int. По умолчанию 180 (3 минуты).
  • TVMW_ARCHIVE_MINIMUM_PLAYLIST_DURATION ­– опция влияет на параметр $pet (program end time) в маске стриминг-сервисов типа PVR. Необходима для того, чтобы Smarty не возвращала слишком короткий плейлист, если текущая передача скоро заканчивается. Тип данных: int. По умолчанию: 10000.

Настройки виджетов и внешних приложений

  • TVMIDDLEWARE_WEATHER_WIDGET_OPENWEATHERMAP_CITY — название города на английском языке (например, Moscow), для которого будет показан прогноз погоды по умолчанию в соответствующем виджете в приложениях абонента. Город должен существовать в сервисе OpenWeatherMap. Тип данных: string.
  • TVMIDDLEWARE_WEATHER_WIDGET_OPENWEATHERMAP_APPID — App ID в сервисе OpenWeatherMap, используется в обращениях к API сервиса при запросе прогноза погоды. Тип данных: int.
  • TVMIDDLEWARE_WEATHER_WIDGET_CACHE_TIMEOUT — время в секундах, на которое необходимо кешировать результат запроса прогноза погоды. Используется, чтобы уменьшить количество запросов. Тип данных: int. По умолчанию 900.
  • WEATHER_DEFAULT_BACKEND — бэкенд источника информации о погоде, используемый по умолчанию. Тип данных: string. Возможные значения: openweathermap, gismeteo, yahoo, fobos. По умолчанию openweathermap.
  • WEATHER_GISMETEO_TOKEN — токен для сервиса Gismeteo. Тип данных: string.
  • WEATHER_FOBOS_USER — имя пользователя для сервиса погоды «Фобос». Тип данных: string.
  • WEATHER_FOBOS_PASS — пароль пользователя для сервиса погоды «Фобос». Тип данных: string.
  • TVMIDDLEWARE_EXCHANGE_WIDGET_CACHE_TIMEOUT — время в секундах, на которое необходимо кешировать результат запроса курсов валют. Используется, чтобы уменьшить количество запросов. Тип данных: int. По умолчанию 7200.
  • TVMIDDLEWARE_EXCHANGE_WIDGET_FIRST_CURRENCY — первая валюта для виджета курсов валют в портале (см. http://www.cbr.ru/scripts/Root.asp?PrtId=SXML). Тип данных: string. По умолчанию USD.
  • TVMIDDLEWARE_EXCHANGE_WIDGET_SECOND_CURRENCY — вторая валюта для виджета курсов валют в портале. Тип данных: string. По умолчанию EUR.
  • TVMIDDLEWARE_EXCHANGE_WIDGET_COUNTRY_CODE — код страны. В зависимости от этого будет выбран источник данных для курсов валют. Тип данных: string. Возможные значения: RU (http://www.cbr.ru/scripts/XML_daily.asp), KG (http://www.nbkr.kg/XML/daily.xml), EE (https://www.eestipank.ee/en/exchange-rates/export/xml/latest). По умолчанию RU.
  • TVMIDDLEWARE_RSS_WIDGET_CACHE_TIMEOUT — время в секундах, на которое необходимо кешировать результат запроса RSS-ленты. Используется, чтобы уменьшить количество запросов. Тип данных: int. По умолчанию 900.
  • TVMIDDLEWARE_RSS_WIDGET_REQUEST_TIMEOUT — время в секундах, в течение которого ожидается ответ от внешнего сервиса новостей. Тип данных: int. По умолчанию 3.

Настройки логотипов оператора, иконок каналов и обложек контента

  • MEDIA_ROOT — абсолютный путь к директории, в которой размещаются статические файлы (css, картинки, js). Тип данных: string. По умолчанию — директория media в корне Smarty.
  • UPLOAD_URL — относительный путь к директории для загружаемого контента (абсолютный путь определяется как конкатенация MEDIA_ROOT и UPLOAD_URL). Тип данных: string. По умолчанию /upload.
  • TVMW_CLIENT_LOGO_MAX_HEIGHT — максимальная высота логотипа оператора. Загруженный логотип будет сжат до этого размера. Тип данных: int. По умолчанию 240.
  • TVMW_CLIENT_LOGO_MAX_WIDTH — максимальная ширина логотипа оператора. Загруженный логотип будет сжат до этого размера. Тип данных: int. По умолчанию 320.
  • TVMW_CLIENT_PLAY_DEVICE_LOGO_MAX_HEIGHT — максимальная высота основного логотипа в абонентском приложении. Загруженный логотип будет сжат до этого размера. Тип данных: int. По умолчанию 240.
  • TVMW_CLIENT_PLAY_DEVICE_LOGO_MAX_WIDTH — максимальная ширина основного логотипа в абонентском приложении. Загруженный логотип будет сжат до этого размера. Тип данных: int. По умолчанию 320.
  • TVMW_CLIENT_PLAY_DEVICE_LOGO_LOGIN_MAX_HEIGHT — максимальная высота логотипа для экрана авторизации в абонентском приложении. Загруженный логотип будет сжат до этого размера. Тип данных: int. По умолчанию 240.
  • TVMW_CLIENT_PLAY_DEVICE_LOGO_LOGIN_MAX_WIDTH — максимальная ширина логотипа для экрана авторизации в абонентском приложении. Загруженный логотип будет сжат до этого размера. Тип данных: int. По умолчанию 320.
  • TVMW_CLIENT_PLAY_DEVICE_LOGO_LOADING_MAX_HEIGHT — максимальная высота логотипа для экрана загрузки в абонентском приложении. Загруженный логотип будет сжат до этого размера. Тип данных: int. По умолчанию 240.
  • TVMW_CLIENT_PLAY_DEVICE_LOGO_LOADING_MAX_WIDTH — максимальная ширина логотипа для экрана авторизации в абонентском приложении. Загруженный логотип будет сжат до этого размера. Тип данных: int. По умолчанию 320.
  • TVMW_VIDEO_POSTER_BIG_MAX_HEIGHT — максимальная высота обложки фильма VOD. Загруженная обложка будет сжата до этого размера. Тип данных: int. По умолчанию 800.
  • TVMW_VIDEO_POSTER_BIG_MAX_WIDTH — максимальная ширина обложки фильма VOD. Загруженная обложка будет сжата до этого размера. Тип данных: int. По умолчанию 800.
  • TVMW_VIDEO_POSTER_SMALL_MAX_HEIGHT — максимальная высота обложки для предпросмотра фильма VOD. Загруженная обложка будет сжата до этого размера. Тип данных: int. По умолчанию 300.
  • TVMW_VIDEO_POSTER_SMALL_MAX_WIDTH — максимальная ширина обложки для предпросмотра фильма VOD. Загруженная обложка будет сжата до этого размера. Тип данных: int. По умолчанию 300.
  • TVMW_VIDEO_FILE_PROMO_IMAGE_MAX_HEIGHT — максимальная высота промо-картинки видео-ассета в VOD. Загруженная картинка будет сжата до этого размера. Тип данных: int. По умолчанию 720.
  • TVMW_VIDEO_FILE_PROMO_IMAGE_MAX_WIDTH — максимальная ширина промо-картинки видео-ассета в VOD. Загруженная картинка будет сжата до этого размера. Тип данных: int. По умолчанию 1280.
  • TVMW_VIDEO_SCREENSHOT_BIG_MAX_HEIGHT — максимальная высота кадра из фильма контента в VOD. Загруженная картинка будет сжата до этого размера. Тип данных: int. По умолчанию 720.
  • TVMW_VIDEO_SCREENSHOT_BIG_MAX_WIDTH — максимальная ширина кадра из фильма контента в VOD. Загруженная картинка будет сжата до этого размера. Тип данных: int. По умолчанию 1280.
  • TVMW_VIDEO_SCREENSHOT_BLUR_RADIUS — радиус размытия, применяемый к скриншотам видео-ассета при загрузке. Тип данных: int. По умолчанию 4.
  • TVMW_EXAPP_ICON_MAX_HEIGHT — максимальная высота иконки стороннего приложения. Загруженная картинка будет сжата до этого размера. Тип данных: int. По умолчанию 600.
  • TVMW_EXAPP_ICON_MAX_WIDTH — максимальная ширина иконки стороннего приложения. Загруженная картинка будет сжата до этого размера. Тип данных: int. По умолчанию 900.
  • TVMW_ACTOR_PHOTO_MAX_HEIGHT — максимальная высота фотографии актера в VOD. Загруженная картинка будет сжата до этого размера. Тип данных: int. По умолчанию 800.
  • TVMW_ACTOR_PHOTO_MAX_WIDTH — максимальная ширина фотографии актера в VOD. Загруженная картинка будет сжата до этого размера. Тип данных: int. По умолчанию 800.
  • TVMIDDLEWARE_CACHE_EXISTING_ICONS — включить кэширование данных о размерах существующих иконок. Необходимо для отправки иконок корректных размеров для устройств. Тип данных: bool. По умолчанию False.
  • SMARTY_DEFAULT_ICON_SIZE — стандартный размер иконки телеканала для загрузки в EPG Channel. Тип данных: tuple.
  • SMARTY_DEFAULT_ICON_SIZES — список дополнительных размеров для иконок телеканалов. Каждое значение должно быть кортежем из двух целочисленных значений. Максимум 3 дополнительных размера. Тип данных: list of tuples.

Пример настройки:

SMARTY_DEFAULT_ICON_SIZE = (500, 500)
SMARTY_DEFAULT_ICON_SIZES = [(120, 91), (40, 40)]

Настройки интеграции рекламы

  • TVMIDDLEWARE_ADS_ENABLED — при значении True в методах API ChannelUrl и ProgramUrl будет возвращаться параметр ads. Необходимо для работоспособности функционала рекламных блоков и роликов в шаблонах, которые это поддерживают. Может приводить к снижению производительности Smarty при большом количестве пользователей на один сервер. Тип данных: bool. По умолчанию False.
  • MONGODB_ADS_HOST — адрес сервера MongoDB для сбора статистики. По умолчанию — ‘127.0.0.1’.
  • MONGODB_ADS_PORT — порт сервера MongoDB. По умолчанию 27017.
  • MONGODB_ADS_NAME — название базы данных. По умолчанию ‘smarty_device_monitoring‘.
  • MONGODB_ADS_USERNAME — имя пользователя для авторизации. По умолчанию ‘admin2‘.
  • MONGODB_ADS_PASSWORD — пароль для авторизации. По умолчанию ‘password2‘.
  • MONGODB_ADS_PUSH_TIMEOUT — таймаут для соединения. По умолчанию 150.
  • MONGODB_ADS_AUTH_METHOD — метод авторизации. Метод авторизации зависит от версии MongoDB. По умолчанию ‘MONGODB-CR‘.
  • ADS_ADSTREAM_DEVMODE — опция позволяет включить отдачу тестовых рекламных роликов от провайдера рекламы AdStream. Тип данных: bool. По умолчанию False.
  • ADS_ADSTREAM_HOST_REPLACE — хост кеширующего сервера рекламных роликов для ADStream. Некоторые провайдеры рекламы рекомендуют кешировать ролики на стороне оператора для отдачи их пользователям, для этих целей можно использовать nginx, а новый хост, с которого будут отдаваться ролики, следует прописать в данное поле, благодаря чему Smarty автоматически будет подменять хост рекламного провайдера на заданный. Данная мера также позволит избежать блокировки рекламы со стороны браузеров.
  • ADS_QVOL_HOST_REPLACE — хост кеширующего сервера рекламных роликов для Qvol. Некоторые провайдеры рекламы рекомендуют кешировать ролики на стороне оператора для отдачи их пользователям, для этих целей можно использовать nginx, а новый хост, с которого будут отдаваться ролики, следует прописать в данное поле, благодаря чему Smarty автоматически будет подменять хост рекламного провайдера на заданный. Данная мера также позволит избежать блокировки рекламы со стороны браузеров.
  • ADS_EPG_USE_CATEGORIES_AS_GENRES — для таргетирования рекламному провайдеру необходимо знать, какого жанра на данный момент идет передача на канале, для которого запрашивается реклама. В случае, если ваш провайдер EPG не предоставляет жанры для программ, укажите эту опцию со значением True и вместо жанров будут использованы категории EPG. Значение по умолчанию: False.
  • ADS_DEFAULT_CITY — устанавливает дефолтное значение города для рекламы. Необходимо для работы с внешними источниками рекламы. Используется в случае, если у аккаунта город не определился автоматически. Тип данных: string.

Настройки панели управления Smarty

  • TVMIDDLEWARE_DISABLE_PAGINATION — отключает подсчёт количества объектов при пагинации в некоторых списках в админке. Тип данных: bool. По умолчанию False.
  • TVMIDDLEWARE_CHANNEL_AUTOSORT — позволяет отключить функцию автосортировки каналов в Smarty, если задать значение []. Тип данных: list.
  • TVMW_PREVENT_CASCADE_DELETION — при значении True запрещает удаление объектов в Smarty через панель администратора при наличии у объектов дочерних связанных объектов. При значении False удаление таких объектов разрешено, но дочерние объекты при этом удалены не будут. Тип данных: bool. По умолчанию False.
  • TVMW_ENABLE_LINK_TO_CUSTOMER_ON_ACCOUNTS_PAGE — при значении True на странице списка аккаунтов в панели администратора в колонке «Абонент» будет отображаться ссылка на редактирование абонента. Иначе просто имя абонента. Тип данных: bool. По умолчанию False.
  • DEALERS_DISPLAY_MANUAL_ACCOUNT_ACTIVATION_DATE — включить/выключить возможность ручного ввода даты активации и деактивации в личном кабинете дилера. Тип данных: bool. По умолчанию False.
  • MONGODB_REPORT_TIMEOUT — таймаут для создания отчетов из панели администрирования, в секундах. Необходим для снижения нагрузки на MongoDB. Тип данных: int. По умолчанию 600000.
  • BILLING_ACCURATE_SUBSCRIPTIONS — при значении True для создаваемых подписок должно указываться точное время создания (в обратном случае время отображается как 12:00). Доступно в новой логике биллинга. Тип данных: bool. По умолчанию False.

Пример настройки:

TVMIDDLEWARE_CHANNEL_AUTOSORT = ["sort_auto", "sort_id", "sort_alphabet", "sort_user", "sort_lcn"]

Настройки кеширования

  • TVMW_USE_TARIFF_LCN — опция, с помощью которой можно отключить формирование кеша каналов с фильтрацией по LCN согласно тарифам. В случае, если оператор не использует сортировку каналов по LCN, данная опция может существенно сократить количество кеша. Тип данных: bool. По умолчанию: True.