Начиная с версии 2.17, в LazyIPTV поддерживается система Wizards -
средство для импорта плейлистов и источников ТВ-программы.
Открытость и простота формата обеспечивает конечным пользователям и
провайдерам возможность организовывать обновляемые источники плейлистов и
EPG.
Ниже будет описана структура wizard-файлов.
Будем считать, что wizard - это обычный xml-файл (в открытом или архивированном zip/gz виде), имеющий расширение *.liwizard. Важно отметить, что приложение LazyIPTV само определяет в каком формате wizard-файл - в открытом виде(текст xml), архивный в формате gz или архивный в формате zip. Для автоопределения в приложении важно чтобы расширение файла было *.liwizard.
Рассмотрим основные xml-теги, применяемые при описании wizard. Основная структура файла состоит 3 базовых секций:
Далее приведена общая структура wizard-файла:
<?xml version="1.0" encoding="utf-8"?>
<wizard>
<info>
<version> версия приложения в свободном формате </version>
<name> наименование wizard </name>
<comment> информация-комментарий к wizard-файлу </comment>
</info>
<playlists>
<playlist>
<name> наименование плейлиста </name>
<comment> комментарий к плейлисту </comment>
<date> дата добавления в wizard в свободном формате </date>
<url> ссылка на плейлист </url>
<update_hours> целое число, время через которое обновлять плейлист </update_hours>
<source> текст плейлиста в формате base64 </source>
<radio> true если радиоплейлист </radio>
<group> группы, разделенные запятой </group>
</playlist>
<playlist> ... </playlist>
... ... ...
<playlist> ... </playlist>
</playlists>
<epgs>
<epg>
<name> наименование источника EPG </name>
<comment> комментарий </comment>
<date> дата добавления в wizard в свободном формате </date>
<url> ссылка на EPG в формате xmltv </url>
<group> группы, разделенные запятой </group>
<shift> число, смещение тв-программы в часах </shift>
</epg>
<epg> ... </epg
... ... ...
<epg> ... <epg/>
</epgs>
</wizard>
Секции <info> и <epg> прозрачны и надеюсь не требуют дополнительного описания.
А вот с тэгом <playlist> есть нюансы, поэтому сделаем более подробное описание :
<name> - наименование плейлиста в свободном формате;
<comment> - комментарий к плейлисту, старайтесь не писать слишком большие комментарии;
<date> - дата добавления плейлиста в wizard в свободном формате;
<radio> - признак радиоплейлиста, если хотите указать что плейлист содержит радиоканалы, укачите значение true. Тэг может быть опущен (в этом случае, по умолчанию - false);
<group> - наименования групп, разделенные запятой, по которым можно будет фильтровать wizard. Тэг может быть опущен;
Теги, определяющие сам контент плейлиста могут быть представлены 2мя способами:
1. если плейлист доступен по ссылке, необходимо указать:
<url> - ссылка на плейлист, для ссылок содержащих спец. символы &%? следует использовать стандартный для формата xml модификатор CDATA, например:
<url><![CDATA[http://iptv.gen12.net/bugtracker/file_download.php?file_id=807&type=bug]]></url>
<update_hours> - целое число, время в часах, через которое необходимо обновлять плейлист. Тэг может быть опущен (в этом случае, по умолчанию плейлист не обновляемый). Если указать значение 0, то плейлист в приложении будет обновляться при каждой загрузке;
2. если необходимо "зашить" статический плейлист в wizard (собственно текст m3u файла), то используется следующий тэг:
<source> - текст плейлиста в формате base64, для этого потребуется перекодировать содержимое плейлиста (текст из m3u-файла) в формат base64, используя любой онлайновый сервис вроде такого: http://base64.ru/
В итоге, должно получиться нечто вроде:<source>I0VYVE0zVQojRVhUSU5GOi0...xLFN0a</source>
Количество тэгов <playlist> и <epg> не ограничено.
Итоговый файл может распространяться как в исходном виде, так и быть заархивирован в формате GZ,GZIP или ZIP. Для того чтобы приложение LazyIPTV увидело wizard-файл, его расширение должно быть .liwizard (независимо от применения архивации).
Перед созданием своего wizard-файлм рекомендует изучить базовый wizard от LazyCat Software: https://sites.google.com/site/lazyiptv/downloads/lazyiptv.liwizard
И последнее. Если вы распространяете свой wizard по ссылке, то достаточно просто обновить файл, а приложение LazyIPTV автоматически проверит ссылку на предмет изменения, дергая не весь файл, а только дату модификации через head-запрос (траффик минимальный) и уведомит конечных пользователей, использующих ваш wizard, о том что его необходимо обновить.
Ниже будет описана структура wizard-файлов.
Будем считать, что wizard - это обычный xml-файл (в открытом или архивированном zip/gz виде), имеющий расширение *.liwizard. Важно отметить, что приложение LazyIPTV само определяет в каком формате wizard-файл - в открытом виде(текст xml), архивный в формате gz или архивный в формате zip. Для автоопределения в приложении важно чтобы расширение файла было *.liwizard.
Рассмотрим основные xml-теги, применяемые при описании wizard. Основная структура файла состоит 3 базовых секций:
- <info> (информация о wizard),
- <playlists> (список плейлистов, каждый из которых "завернут" в тэг <playlist>)
- <epgs> (список источников EPG, каждый из которых "завернут" в тэг <epg>).
Далее приведена общая структура wizard-файла:
<?xml version="1.0" encoding="utf-8"?>
<wizard>
<info>
<version> версия приложения в свободном формате </version>
<name> наименование wizard </name>
<comment> информация-комментарий к wizard-файлу </comment>
</info>
<playlists>
<playlist>
<name> наименование плейлиста </name>
<comment> комментарий к плейлисту </comment>
<date> дата добавления в wizard в свободном формате </date>
<url> ссылка на плейлист </url>
<update_hours> целое число, время через которое обновлять плейлист </update_hours>
<source> текст плейлиста в формате base64 </source>
<radio> true если радиоплейлист </radio>
<group> группы, разделенные запятой </group>
</playlist>
<playlist> ... </playlist>
... ... ...
<playlist> ... </playlist>
</playlists>
<epgs>
<epg>
<name> наименование источника EPG </name>
<comment> комментарий </comment>
<date> дата добавления в wizard в свободном формате </date>
<url> ссылка на EPG в формате xmltv </url>
<group> группы, разделенные запятой </group>
<shift> число, смещение тв-программы в часах </shift>
</epg>
<epg> ... </epg
... ... ...
<epg> ... <epg/>
</epgs>
</wizard>
Секции <info> и <epg> прозрачны и надеюсь не требуют дополнительного описания.
А вот с тэгом <playlist> есть нюансы, поэтому сделаем более подробное описание :
<name> - наименование плейлиста в свободном формате;
<comment> - комментарий к плейлисту, старайтесь не писать слишком большие комментарии;
<date> - дата добавления плейлиста в wizard в свободном формате;
<radio> - признак радиоплейлиста, если хотите указать что плейлист содержит радиоканалы, укачите значение true. Тэг может быть опущен (в этом случае, по умолчанию - false);
<group> - наименования групп, разделенные запятой, по которым можно будет фильтровать wizard. Тэг может быть опущен;
Теги, определяющие сам контент плейлиста могут быть представлены 2мя способами:
1. если плейлист доступен по ссылке, необходимо указать:
<url> - ссылка на плейлист, для ссылок содержащих спец. символы &%? следует использовать стандартный для формата xml модификатор CDATA, например:
<url><![CDATA[http://iptv.gen12.net/bugtracker/file_download.php?file_id=807&type=bug]]></url>
<update_hours> - целое число, время в часах, через которое необходимо обновлять плейлист. Тэг может быть опущен (в этом случае, по умолчанию плейлист не обновляемый). Если указать значение 0, то плейлист в приложении будет обновляться при каждой загрузке;
2. если необходимо "зашить" статический плейлист в wizard (собственно текст m3u файла), то используется следующий тэг:
<source> - текст плейлиста в формате base64, для этого потребуется перекодировать содержимое плейлиста (текст из m3u-файла) в формат base64, используя любой онлайновый сервис вроде такого: http://base64.ru/
В итоге, должно получиться нечто вроде:<source>I0VYVE0zVQojRVhUSU5GOi0...xLFN0a</source>
Количество тэгов <playlist> и <epg> не ограничено.
Итоговый файл может распространяться как в исходном виде, так и быть заархивирован в формате GZ,GZIP или ZIP. Для того чтобы приложение LazyIPTV увидело wizard-файл, его расширение должно быть .liwizard (независимо от применения архивации).
Перед созданием своего wizard-файлм рекомендует изучить базовый wizard от LazyCat Software: https://sites.google.com/site/lazyiptv/downloads/lazyiptv.liwizard
И последнее. Если вы распространяете свой wizard по ссылке, то достаточно просто обновить файл, а приложение LazyIPTV автоматически проверит ссылку на предмет изменения, дергая не весь файл, а только дату модификации через head-запрос (траффик минимальный) и уведомит конечных пользователей, использующих ваш wizard, о том что его необходимо обновить.