Медиа правила
Описание
Для обеспечения работы, разным типам устройств требуется видеопоток с определенным параметрами. Для этого устройство должно получить специфический URL каждого канала.
Медиа правила позволяют генерировать необходимые устройствам URL, исходя из указанных параметров.
Задав в Медиа правиле одно или несколько ключевых параметров, перечисленных ниже, можно выбрать необходимую категорию устройств и применить к этой категории отдельный Media action.
тип устройства;
тип клиента;
определенного провайдера;
сеть;
регион
В Media actions указывается схема, протокол и тип (live/dvr) на основании которых будет происходить подбор подходящего медиа сервера. На основании шаблона, удовлетворяющего всем требованиям медиа сервера, будет генерироваться необходимый динамический URL канала.

- Для того чтобы устройство получило динамический url, должны быть соблюдены следующие требования:
В настройках канала поле URL должно быть пустым;
Должно быть создано Media Rule;
Канал должен быть добавлен в разделе Media в настройках Media server;
Должен быть создан Pattern
Media rules
Media Rules – выбор какой применить Action, правила перебираются сверху вниз, от первого до последнего. При совпадении условий правила с информацией об устройстве – перебор завершается и применяется Action.
При создании Media Rule можно указать как один, так и несколько параметров устройства, каждый параметр может содержать только одно значение. Поля отмеченные * - обязательные.

- Name:
Произвольное имя для правила.
- Media action:
Действие, которое будет применяться в этом медиа правиле.
- Provider:
Выпадающий список провайдеров, которые добавлены в TMS.
- Network:
Сеть к которой применится текущее правило. Можно указать как отдельный IP адрес (если указан адрес 192.168.1.10/32, то правило будет распространяться только на один IP адрес), так и подсеть (если указан адрес 10.10.10.0/24, то правило будет распространяться на все адреса в диапазоне 10.10.10.0 - 10.10.10.255).
- Region:
Указывается регион, для которого будет применяться правило.
- Device class:
- Выпадающий список из доступных значений, обозначения основных устройств:
stb - медиацентры;
phone - мобильные устройства;
web - web-player для браузеров;
tv - телевизоры;
tablet - планшеты.
- Client type:
- Выбор из выпадающего списка, доступны следующие параметры:
tms_client;
tvip_native;
tms_portal;
tvip_native_nacl.
- User-agent:
Регулярное выражение, передается в заголовке при запросе клиентом плейлиста.
- OS:
Операционная система клиента. Регулярное выражение, передается в заголовке при запросе клиентом плейлиста.
- Device:
Выбор конкретного устройства по UID.
- Device Type:
Тип устройства
- Use for:
Live - применить правило только для live, DVR - только для dvr. Можно указать и для live и для dvr.
Media Server
Media Server – описание сервера, который имеет определенный тип, поддерживаемые схемы (http/https), адрес подключения к серверу, его приоритет и набор Медиа, которые содержит данный сервер.

- Name:
Произвольное имя для сервера.
- Schemas:
Протокол для текущего сервера: HTTP, HTTPS, UDP, RTP, RTMP. Доступен выбор нескольких значений.
- Host:
IP адрес или доменное имя сервера.
- Port:
Порт.
- Type media server:
Тип медиа сервера, создается в настройках Типы медиа серверов.
- Priority:
Приоритет выбора сервера, чем больше значение, тем выше приоритет.
- Roles:
Live и/или DVR.
- Default DVR depth:
Глубина архива, которая будет применена к данному каналу.
Внимание
Глубина архива из настроек Media server будет применена только в том случае, если глубина архива не указана в настройках Channel и Media.
Предупреждение
В случае использования Media rules настройка ARCHIVE тарифного плана игнорируется
Media

- Media server:
Выпадающий список для выбора медиасервера.
- Default DVR depth:
Глубина архива, которая будет применена к данному каналу.
Внимание
Глабина архива из настроек Media будет применена только в том случае, если глубина архива не указана в настройках Channel.
- Channel:
Имя канала в TMS.
- Resource ID:
Системное имя канала.
- Description:
Какое либо описание канала.
Media server Types
Media server Types - описание возможностей медиасервера: какие протоколы поддерживаются и как формируются конечные URL потоков для данного типа медиа сервера (к примеру что является типом медиа сервера: Mira Streamer, Flussonic).
- По умолчанию, добавлены 3 типа сервера:
Multicast;
TVIP MIRA;
Flussonic.

При необходимости, можно добавлять новые Media server Types

- Name:
Произвольное имя для типа сервера.
- Protocol:
Протокол для типа серверов: HLS, DASH, RTSP, RTMP. Доступен выбор нескольких значений.
Pattern
Pattern - шаблон на основе которого будут сформированы конечные URL потоков. Основные Patterns добавлены по умолчанию.

Доступно создание новых Patterns.

- Name:
Произвольное имя для паттерна.
- Pattern:
Шаблон для конечного URL потока, можно задать его самостоятельно или выбрать из подготовленных шаблонов.
- Protocol:
Протокол.
- Type media server:
Тип сервера, для которого может быть использован шаблон.
Пример использования
Создадим динамические URL для канала Example Channel с учетом следующих параметров:
Для Медиацентрорв TVIP S-Box - Live и Dvr, HLS поток, схема HTTP;
Для Android TV - Live и Dvr, HLS поток, схема HTTPS;
Для мобильных устройств - Live и Dvr, HLS поток, схема HTTP и HTTPS;
Для Smart TV Tizen и WebOS - Live и Dvr, HLS поток, схема HTTP и HTTPS;
Для всех остальных устройств - Live и Dvr, HLS поток, схема HTTP;
В текущем примере серверы для Live и DVR будут разными.
Выбираем TVIP MIRA из Media server type.

Добавим Live и DVR сервера:


И добавим канал Example Channel в раздел Media для созданных Media Server:


Убедимся, что есть подходящие Dvr и Live Patterns для нашего типа сервера TVIP MIRA:


Для каждого типа устройств создадим отдельный Action:





Теперь мы можем создать Media Rule для каждого из типов устройств. Определять устройство будем по параметру Header User-Agent.
Для Tvip S-Boxes:

Для Android TV:

Для мобильных устройств:

Для Smart TV:

Для всех остальных устройств:

Media rule созданный для остальных устройств должен находится в самом низу списка, так как должен иметь более низкий приоритет.
