ФУНКЦИИ ВИДЖЕТА ДЛЯ ПРОСМОТРА АРХИВОВ ТЕЛЕКАНАЛОВ.
Всё описанное ниже справедливо для любых типов плейлистов, которые поддерживает виджет.
В виджете существует функция вывода списка передач с подробным описанием для текущего канала.
Cписок открывается нажатием на пульте кнопки GUIDE.
На новых пультах кнопка GUIDE - это одно короткое нажатие по центру "мульти-кнопки" переключения каналов, у металлических пультов правая полоска.
Если у телеканала есть архивные записи и Вы знаете, как должен быть оформлен их адрес (ссылка) , то через функцию вывода списка передач в виджете можно организовать просмотр этих архивных записей.
Для этого нужно предварительно правильно оформить в плейлисте основную ссылку на лайв поток.
У разных плееров могут быть какие угодно записи для вызова архива, и они могут отличаться – главное, чтобы при подмене переменных получался нужный запрос.
Например, для забавы должен быть такой стрим: http://...ngenix.net/hls/CH_.../variant.m3u8?version=2#ext_archive=&utcstart=start_time&utcend=end_time,
в виджете оно подменяется этим http://...ngenix.net/hls/CH_.../variant.m3u8?version=2&utcstart=1610605500&utcend=1610607000 – т.е. дописывается к url онлайн потока с подменной слов-переменных. Если после #ext_archive= идет http, то при просмотре архива обрабатывается только этот полный адрес.
Пример: http://url.m3u8#ext_archive=http://hlsarchive…belros/index-start_time-delta_time.m3u8 #archive_day=6 подменяется на http://hlsarchive...belros/index-1610610600-3300.m3u8
Для эдем есть примеры ниже, как ко всему листу без прописывания в стримах, так и пропись к стриму.
Существует несколько вариантов оформления :
1. В конце адреса "live" потока канала через специальную команду "#ext_archive=" можно передать адрес файла с архивной записью и команды для управления временными метками.
Пример :
#EXTINF:-1 group-title="детские",Cartoon Network
http://адрес_лайв_потока_канала#ext_archive=http://адрес_файла_с_архивом?start=start_time&delta=delta_time&end=end_time#archive_day=3
Список виртуальных команд для управления архивами:
#archive_day=3 - задаёт ограничение на количество дней обращения к прочтению архива
"start_time" - задает время начала воспроизведения
"end_time" - задает время конца воспроизведения
"delta_time" - задает длительность воспроизведения
"current_time" - задает текущее время
Если в строке адреса нет названий совпадающих с названиями виртуальных команд , то сами команды можно не выделять в {} .
Данные управляющие переменные могут совсем отсутствовать в адресе и их названия могут быть любыми.
При формировании списка передач виджет сформирует ссылки на адрес файла с архивом , а текстовые значения после знака "=" автоматически заменит на конкретные метки времени в UTC формате взятые из EPG виджета.
Если основная часть адреса live потока совпадает с адресом файла с архивной записью , то её можно пропустить.
Пример:
#EXTINF:-1 group-title="новости",France 24
https://strm.yandex.ru/kal/france24/france240.m3u8#ext_archive=?start=start_time&end=end_time#archive_day=5
Из этого плейлиста виджет сформирует адрес для получения live потока:
и адрес для получения архивной записи конкретной передачи:
Если в плейлисте у всех каналов есть архивы и адреса архивов однотипные , то управляющую часть ссылки для активации просмотра архивов можно задать сразу для всех каналов в начале плейлиста.
Для m3u:
Для XML на примере эдем тв:
<ext_archive><![CDATA[?utc=start_time&lutc=start_time&archive_end=end_time#archive_day=5]]></ext_archive>
</options>
Для JSON:
Если в плейлисте у всех каналов есть архивы и адреса архивов однотипные , то управляющую часть ссылки для активации просмотра архивов можно задать сразу для всех каналов в адресе плейлиста.
Есть возможность перехода к листу с архивом записей из вкладки со стримом используя параметр archivel.
Пример:
<channel>
<title><![CDATA[Детский Мир]]></title><stream_url><![CDATA[Online|#|http://путь_к_стриму_m3u8|##|Archive|#|archivel=http:// путь_к_листу_с_архивом_для_канала]]></stream_url>
</channel>