API состоит из двух частей.1) Список всех каналов с программой телепередач, которые транслируются в данный момент. Список каналов доступен на каждом сервере вещания по ссылке:
а) /api/channel_now (пример
http://ott.watch/api/channel_now).
Это
JSON структура, где ключом является номер канала, и доступны следующие параметры :
- ch_id - номер канала;
- channel_name - название канала;
- rec - ключ наличия архива канала;
- img - имя файла иконки канала("img":"TV1000Action.png", файл будет доступен по ссылке /images/TV1000Action.png на всех серверах вещания. Пример полной ссылки http://ott.watch/images/TV1000Action.png);
- category - это вложенная структура, которая состоит из идентификатора
категории(class), и собственно названия самой категории(name); - name - название телепередачи которая в данный момент транслируется в эфире;
- time, time_to - время начала и время конца телепередачи в формате unixtime(UTC);
- duration - продолжительность в секундах транслируемой передачи;
- descr - описание телепередачи, которая транслируется(не всегда доступно);
b) /api/channel_now.jsonp (пример
http://ott.watch/api/channel_now.jsonp).
Это
JSONP структура, по структуре как и json
c) /api/channel_now.xml (пример
http://ott.watch/api/channel_now.xml).
Это
XML структура, где как и в json:
- ch_id - номер канала;
- channel_name - название канала;
- rec - ключ наличия архива канала;
- img - имя файла иконки канала("img":"TV1000Action.png", файл будет доступен по ссылке /images/TV1000Action.png на всех серверах вещания. Пример полной ссылки http://ott.watch/images/TV1000Action.png ;
- category - это вложенная структура, которая состоит из идентификатора
категории(class), и собственно названия самой категории(name); - name - название телепередачи которая в данный момент транслируется в эфире;
- time, time_to - время начала и время конца телепередачи в формате unixtime(UTC);
- duration - продолжительность в секундах транслируемой передачи;
- descr - описание телепередачи, которая транслируется(не всегда доступно);
2) Это непосредственно программа телепередач отдельного канала, которая доступна на каждом сервере вещания по ссылке /api/channel/{здесь номер канала} (пример
http://ott.watch/api/channel/100 - это программа передач канала с номером 100). Также доступены структуры JSONP (пример
http://ott.watch/api/channel/100.jsonp) и XML (пример
http://ott.watch/api/channel/100.xml)
Это тоже JSON, JSONP, XML структура, ключом которой является время начала передачи в unixtime(UTC).
Параметры, которые доступны в этой структуре, аналогичные предыдущей.
Архив Доступ к архиву осуществляется добавлением переменной archive, где указано время передачи в формате unixtime(UTC). (пример
http://ott.watch/stream/KEY/135.m3u8?archive=1407164412, где 1407164412 и есть параметр unixtime(UTC) передачи). Время должно совпадать либо с началом передачи или в промежуток от начала до конца!
Также можно указать конец архива через GET параметром archive_end ( пример
http://ott.watch/stream/KEY/135.m3u8?archive=1407164412&archive_end=1407165000)
Timeshift Функцию Таймшифт (TimeShift) называют еще сдвигом во времени. В первую очередь функция позволяет смотреть передачи во время записи. Доступ к Таймшифт осуществляется добавлением переменной timeshift и timenow. Трансляция осуществляется live режиме. Пример запроса:
http://ott.watch/stream/KEY/131.m3u8?timeshift=1483613831&timenow=1483628264Где:
timeshift=1483613831 - время unixtime с которого нужно начать воспроизведение
timenow=1483628264 - время unixtime когда включили воспроизведение(те текущее время)