Плагин e2m3u2bouquet (Мод от Dorik1972)

_777_

Moderator
Команда форума
Обнова
E2m3u2bouquet 1.0.56


1) Переработана логика импорта событий EPG. Теперь, после импорта событий, eEPGCache сбрасывается в файл данных. Это сделано для того, чтобы если по каким-то причинам система дала сбой, то не было потери данных EPG. В случае с DM сначала мы выгружаем текущий eEPGCache в файл db, обновляем его, а затем снова загружаем в текущий кеш. В обоих случаях время eEPGCache обновляется для отображения последней информации о событиях на экране.
2) Добавлена французская локаль (Особая благодарность jeepcook с linuxsat-support.com)
3) Небольшие изменения в фильтрации HTML-тегов описаний трансляций, которые иногда "проскакивают" в описаниях
4) Незначительные изменения кода и его реорганизация
 

Вложения

_777_

Moderator
Команда форума
Обнова
E2m3u2bouquet 1.0.57


1) Логика парсинга событий XMLTV теперь учитывает значение параметра «Сохранить устаревшие события EPG», который задается в настройках EPG используемого вами имиджа. Если такой настройки нет, что маловероятно, то по умолчанию этот параметр равен 3 часам.
2) Исправлен алгоритм разбора XMLTV с узлами подзаголовков.
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.59


1) Добавлена максимально агрессивная экономия оперативной памяти при разборе данных из xml (в основном для xmltv). Это дает возможность «разгребать» xml-файлы любого размера на аппаратно-слабых SatTop Box без каких-либо «зависаний».
2) Добавлена поддержка экзотических вариантов xmltv запакованных в zip (epg.xml.zip... да... есть еще такие "уникальные" IPTV провайдеры :'()
3) Добавлена установка необходимых зависимостей python, если их нет в используемом образе
4) Небольшие изменения в отображении текущего статуса

Перед установкой этой версии обязательно удалите все установленные ранее! Нельзя устанавливать "поверх" ранее установленного!
После полного удаления убедитесь, что в /etc/enigma2/settings нет записей config.plugins.e2m3u2b.****.
Не забудьте сохранить файл config.xml перед полным удалением!
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.60


1) Добавлена поддержка изображений на основе Python 3.10 (OpenATV 7.1)
2) Фикс парсинга плейлистов в кодировке utf-8-sig
3) Незначительная реорганизация кода
 

Вложения

_777_

Moderator
Команда форума
UPD 1.0.60

[20/02/2022 7:00 GMT] Добавлен анализ дат «начала» и «конца» событий, указанных без смещения UTC. Иногда местные провайдеры IPTV (shara.club, batonTV и т.д.) устанавливают дату в XMLTV в таком формате. Раньше такие даты игнорировались, теперь все нормально обрабатывается... redownload... --force-reinstall
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.62


1) Исправлен вылет при вызове плагина из меню дополнений
2) Добавлена поддержка декодирования списков воспроизведения m3u в различных распространенных кодировках, таких как «windows-1251», «кириллица», «macgreek», «latin5», «macturkish» и т. д. Всего ~30-35 кодировок.
3) Исправлена/добавлена возможность разбора значений, содержащих запятую, для локальных тегов директивы #EXTINF. Например

Код:
group-title="1, Sport"
tvg-name="BBC, UK"
e.t.c
Раньше при таких значениях парсер работал некорректно... Сейчас - все исправлено
4) Незначительная реорганизация кода, связанная с реорганизацией порядка установки и загрузки необходимых Python-зависимостей
5)Внесены изменения в парсер m3u-плейлистов с учетом дублирования различных строк. Это наблюдается в плейлистах, скачанных с различных телеграм-каналов или невнимательно собранных вручную из разных источников. Перезагрузить... --force-install
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.63


1) Слегка оптимизирован код парсера m3u
2) Изменены приоритеты тегов "глубины" архива в днях, если их несколько в директиве #EXTINF
3) Более аккуратно написан модуль "брендирование" для определения различной информации о STB.
4) Ремонт ИТ- и DE-помещений
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.63.1

1) Исправлен парсер данных для XMLTV, использующий временные метки событий без смещения по Гринвичу.
2) Добавлена локаль PL

ps Спасибо, JoJo за пример XMLTV
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.64


1) Исправлен импорт событий EPG для изображений без twisted.python.runtime.supportsThreads.
2) В скинах вместо алиасов цветов теперь задаются цвета в формате #aarrggbb для предотвращения вылетов на доисторических изображениях
3) Исправлено для образов VTi...
4) добавлена локаль zh_CH
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.66


1) Исправлена загрузка скинов для изображений с пользовательскими скинами этого плагина.
2) При создании "Все каналы букет" имя букета будет соответствовать названию провайдера и будет создано без фразы "Все каналы-"
3) Добавлено создание ***-diff-override.xml , содержащего новые трансляции в m3u-плейлисте провайдера по отношению к используемому ***-sort-override.xml . Этот файл позволяет отслеживать изменения в плейлисте провайдера. Создается только при появлении новых трансляций в плейлисте m3u. Данные этого файла можно использовать для ручного редактирования (добавления) трансляций в текущий ***-sort-override.xml
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.66.1


Техническое обновление. Изменен алгоритм обработки поиска каналов для генерации ***-diff-override.xml. Теперь обработка и генерация файлов выполняются намного быстрее...
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.67


Добавлен фильтр нежелательных категорий. Вы можете самостоятельно редактировать и определять нежелательные категории в файле « m3ufilter.conf ». Этот файл появится в папке конфигурации плагина после создания букетов. Для того, чтобы включить фильтр, необходимо включить соответствующую опцию в карточке провайдера IPTV. По умолчанию в m3ufilter.conf создаются два раздела для категорий, объединенных «смысловым» значением. Количество разделов не ограничено и может быть создано пользователем по своему усмотрению, по аналогии с существующими.

ps логика m3ufilter.conf может быть расширена до любой разумной функциональности в будущем.
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.68


1) Исправлена украинская локаль
2) Изменена логика формирования файла ***-diff-override.xml. Теперь, если для категории в ***-sort-override.xml задано значение enable="0", то новые каналы в ней не анализируются и не включаются в файл ***-diff-override.xml. Считается, что если пользователь намеренно отключил категорию, то нет смысла анализировать в ней изменения каналов. Таким образом, в файл ***-diff-override.xml будут включены каналы только тех категорий, которых нет в ***-sort-override.xml или которые отмечены в нем как enable="1"
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.69


1) Полностью переработана логика работы с "скачиваемыми" файлами. Привязки к имени файла или его расширению нет. Загруженные файлы анализируются на основе «магического числа», а затем определяется, что содержимое является допустимой структурой XML. Это решение позволяет использовать любые ссылки для XMLTV, например,

Код:
http://example.com:8087/xmltv.php?username=USER&password=PASS
http://example.com/api/xmltv.xml.7.2
http://example.com/epg.xml.gz?token=123456789
http://example.com/provider.epg
http://example.com/epg.xmltv.gz
http://example.com/epg.xmltv.xz
http://example.com/epg.xmltv.zip
http://example.com/EPG
2) Поэкспериментируйте с кодом оболочки epg.db для более стабильного импорта ( только для образов DreamOS! ). Теперь можно даже отключать питание "на ходу" (во время импорта) и никакие данные не будут потеряны или "испорчены"
3) Небольшая оптимизация кода парсера m3u
4) Незначительные изменения логирования

Файлы конфигурации, сгенерированные этой версией для EPGImport, несовместимы с исходным кодом EPGImport. В случае совместного использования необходимо установить мод EPGImport - EPGImport v 1.88
 

Вложения

Последнее редактирование:

_777_

Moderator
Команда форума
UPDATE
1.0.70

1) Имена файлов букетов, сгенерированные этим плагином, были изменены.
2) Реорганизована структура папок и файлов в папке данных плагина
3) Обновлены все библиотеки, используемые этим плагином, до последних версий, доступных для совместного использования в Python 2/3.
4) Добавлена поддержка формата JTV (файлы PDT и NDX) для EPG . Этот формат EPG используется некоторыми местными провайдерами IPTV. Он также довольно популярен в Польше. Проверено на следующих источниках:
Код:
Teleguideinfo___http://www.teleguide.info/download/new3/jtv.zip
Iformula_______http://iformula.ru/IPTV/tvprogramm/jtv.zip
Triolan________http://triolan.tv/App_Files/jtv.zip
Matrixhome____http://iptv.matrixhome.net/jtv/dn/epg_jtv.zip
2kom_________http://2kom.tv/jtv.zip
Idcmd________http://iptv.idc.md/files/jtv.zip
Spark________http://spark-tv.ru/jtv.zip
Avianetwork____http://avianetwork.ru/tv_list/jtv.zip
ProgramTV______http://programtv.ru/jtv.zip
ps Чтобы перейти на эту версию:
1) Сделайте резервную копию config.xml из папки хранилища данных плагина.
2) Меню - Сбросить букеты - Да
3) Установить новую версию плагина
4) Восстановить config.xml из резервной копии
5) Создавайте букеты
6) Наслаждайтесь!
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.71


1) Исправлено запоминание ссылок по схеме "file://" при входе с виртуальной клавиатуры в карточке провайдера
2) Исправлена/добавлена возможность "распознавать" XML файлы в кодировке UTF-8-BOM. Например:

Код:
       https://raw.githubusercontent.com/bebawy6/EPG/master/allEPG.xml
3) Исправлена обработка XMLTV, упакованных в ZIP. Например:


Код:
       http://tvg.mymagic.tv/tvg.zip
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.72


1) Исправлено «неправильное формирование базы данных» для изображений на основе DreamOS. Эта ошибка почти всегда возникала, если в настройках плагина было установлено "Начать импорт EPG после загрузки букетов". Больше никаких проблем
2) Небольшая реорганизация кода + добавлено логирование происходящего =)
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.73

(специальное издание DreamOS)

1) Исправлена возможность выбора плеера "eServiceStream" (8739:0:) в карточке провайдера. Теперь этот тип проигрывателя доступен только для образов, основанных на версиях DreamOS >=4.4.
2) Полностью переписан SQL-обертка для взаимодействия с epg.db при обновлении EPG. Теперь все работает как надо
::)

3) Обновлена итальянская локаль (особое спасибо за @mapi )
 

Вложения

_777_

Moderator
Команда форума
UPDATE
1.0.74


1) Исправлена куча мелочей, из-за которых некоторые события из XMLTV не могли попасть в EPG.
2) Добавлен "анализ" валидности полученных событий от XMLTV. Теперь любой "мусор", возникающий из-за ошибок формирования XMLTV провайдером, в EPG не попадает.
3) Полностью изменена логика парсера XMLTV... теперь мы анализируем одно событие вперед... что позволяет формировать корректные кортежи событий для группы каналов.
Раньше события анализировались в следующую «структуру»:

Код:
([service, service, ***], ((event)))
Теперь так
Код:
([service, service, ***], ((event), (event), (event), ***))
Это позволяет в полной мере использовать код C enigma.eEPGCache (epgcache.cpp), если он поддерживает метод ImportEvents. Для группы каналов теперь передается группа событий, а не одно событие, как раньше... В результате на узлах "программа", упорядоченная по "каналу" в XMLTV, получаем прирост скорости импорт событий.
4) Парсинг значений всех тегов узла "programme" в XMLTV теперь производится "в один проход".
5) Добавлена поддержка "многоязычного" XMLTV... причем не только в парсере XMLTV, но и в импорте в epg.db для DreamOS...
Судя по структуре базы (epg.db), там это явно поддерживается (можно провести аналогию с разными звуковыми дорожками для одной и той же трансляции). В версиях оригинального оборудования <2.5 многоязычный EPG не поддерживается, и приоритет отдается событиям, язык которых соответствует языковому стандарту вашей Enigma2.
6) В SQL-обертку (только для DreamOS) добавлено "ОБНОВЛЕНИЕ" импортированных ранее описаний событий...
Например:
В понедельник утром вы импортировали EPG на 3 дня вперед и в нем для некоторых каналов не было описаний, а в понедельник вечером - провайдер обновил свой XMLTV и добавил описания... так что... вот если еще раз обновить EPG после этого, например, во вторник утром, описания существующих событий будут обновлены.
7) Вернул обратно journal_mode="DELETE" для SQLite. Теперь работа с базой данных SQL точно такая же, как и в C-коде на DreamOS.
8 ) Изменил код так, что удалил два файла вообще... Оказались лишними "костылями"... За счет этого на один "промежуточный" генератор меньше.
9) Добавлены "всплывающие" уведомления... прикольная штучка... будут всплывать в правом верхнем углу экрана...
10) Исправлена ошибка с появлением каналов, помеченных как enabled="0" в файле ***-diff-override.xml в "выборочном" режиме сортировки.
11) Полностью убрана логика работы со "скрытыми маркерами". Теперь в userbouquets будут удалены непонятные для многих пользователей строки "519:1" или "832:d".

НАСЛАЖДАЙТЕСЬ!

пс
. Особая благодарность @YC78 за тесты на DreamOS и впечатляющее пожертвование.
 

Вложения

Верх