Телепрограмма

Этот адаптер регулярно запрашивает информацию о телевизионной программе.

Текущий релиз
6.1.0
Разработчик
oweitman
Лицензия
MIT

tvprogram адаптер для ioBroker

Этот адаптер загружает данные о телевизионных программах и передает их виджетам ioBroker VIS. Данные о программах хранятся в виде файлов в памяти адаптера, а не копируются в точки данных.

Оглавление

Установка

Установите адаптер из стабильного репозитория ioBroker. Используйте бета-версию или последнюю версию для тестирования версии для разработчиков.

После первого запуска дождитесь, пока адаптер загрузит данные о программах и каналах, прежде чем настраивать виджеты.

Конфигурация адаптера

Создайте отдельную конфигурацию телевизора для каждого независимого выбора канала, списка избранных и целевого устройства переключения. Каждому телевизору присваивается свой собственный набор данных под экземпляром адаптера. Ключ устройства только для чтения формируется на основе имени настроенного телевизора. Он использует строчные буквы и цифры без пробелов; немецкие умлауты пишутся как ae, oe и ue. Например, Wohnzimmer Süd становится wohnzimmersued Изменение порядка записей в таблице не меняет их ключи устройств. Имена телевизоров должны генерировать уникальные ключи.

При запуске адаптер синхронизирует эти устройства с конфигурацией. Отсутствующие телевизионные устройства создаются, а лишние устройства удаляются вместе с их данными. Когда устаревший адаптер... tv1, tv2 При первой замене ключа его существующее состояние копируется в новый ключ устройства.

Источники программы

Для каждой конфигурации телевизора источник программы выбирается отдельно. Адаптер поддерживает:

  • ТВ для всех
  • IPTV-EPG.org

Для IPTV-EPG.org выберите нужную страну в соответствующей строке с телеканалами. Ежедневное время загрузки применяется ко всем источникам и приложениям IPTV-EPG. HH:mm формат. Загрузка начинается со стабильного случайного смещения, составляющего до 60 минут после указанного времени. Это распределяет запросы между отдельными установками ioBroker.

При запуске адаптер проверяет, содержит ли настроенный источник пригодные для использования данные каналов и программ за текущий день вещания. Отсутствующие данные загружаются немедленно. Неудачные загрузки повторяются через час.

Программы, транслируемые с полуночи до 04:59, относятся к предыдущему дню вещания. Загруженные данные хранятся отдельно для каждого источника и страны. Переключение телевизора на другой источник не удаляет существующий кэш. Выбранные каналы сохраняются в виде файлов в кэше адаптера для каждого телевизора и идентификатора источника. Активный выбор копируется в channelfilter После изменения источника и до получения командой перезагрузки виджетов. Данные программы за сегодняшний день и четыре предыдущих календарных дня остаются в кэше, даже если последующий ответ поставщика больше не содержит эти дни.

Набор info.reset к true Для удаления всех исходных данных и сохраненных настроек каналов из кэша адаптера. Адаптер подтверждает нажатие кнопки, очищает активные настройки ТВ и немедленно загружает настроенные источники заново.

Альтернативные логотипы каналов

Установите optchnlogopath Если вы хотите заменить логотипы источника, укажите путь к доступной через браузер директории, например:

http://192.1.2.3:8082/vis.0/icons/tvlogos/

Используйте имена файлов PNG в нижнем регистре, основанные на идентификаторе канала IPTV-EPG без конечного суффикса страны. DasErste является псевдонимом и всегда использует ard.png.

СтранаИдентификаторы каналовНазвания файлов логотипов
ГерманияDasErste.de, ZDF.de, RTL.deard.png, zdf.png, rtl.png
АвстрияDasErste.at, ORF1.at, PULS4.atard.png, orf1.png, puls4.png
ШвейцарияDasErste.ch, SRF1.ch, ORFeins.chard.png, srf1.png, orfeins.png

Для региональных идентификаторов действует одно и то же правило: ORF2Wien.at становится orf2wien.png, и SRFzwei.ch становится srfzwei.png Если имя файла неясно, проверьте в инструментах разработчика браузера ошибки при отправке изображений.

Когда optchnlogopath Если поле пустое, виджеты используют логотипы источников. Селектор каналов всегда использует логотипы источников, чтобы каналы оставались идентифицируемыми.

Примеры настройки и конверсии см. в разделе «Примеры логотипов альтернативных каналов» .

Виджеты

Для работы виджетов требуется современный браузер, такой как Chrome, Firefox, Safari, Opera или Edge на основе Chromium. Internet Explorer и устаревшие версии Edge не поддерживаются.

Общая конфигурация виджета

Выберите любой параметр нужного телевизора, обычно это его cmd Точка данных. Виджет автоматически определяет идентификаторы остальных точек данных.

Общие параметры отображения управляют шириной логотипа канала, высотой строк, изображениями программ, размерами шрифта, цветом избранного и размерами диалогового окна с подробной информацией. Если выбранная тема оформления не обеспечивает достаточного контраста для отображения программ, можно задать конкретный цвет переднего и заднего плана.

Если после установки виджеты отсутствуют или устарели, выполните следующую команду:

iobroker upload tvprogram

Примеры настройки CSS для виджетов доступны в разделе «Стилизация виджетов» .

Расписание

Виджет «Расписание» отображает программы по каналам на временной оси. Он отмечает текущее время, поддерживает масштабирование и навигацию по дням, а также открывает подробную информацию о программе из полной карточки программы.

Откройте селектор каналов из меню виджетов. Щелкните карточку, чтобы включить или отключить канал. Активные каналы отображаются первыми и сохраняют заданный пользователем порядок. Перетащите активную карточку, чтобы переместить ее; на сенсорных экранах удерживайте ее недолго перед перетаскиванием. Поиск фильтрует видимые карточки. Кнопка сортировки переключает неактивные каналы в порядке источников, от А до Я и от Я до А. Галочка сохраняет изменения, а крестик или клавиша Escape закрывают окно без сохранения. Кнопка в правом верхнем углу переключает между заданным размером и полноэкранным режимом.

Логотипы сохраняют свои пропорции и центрируются в пределах заданной ширины канала и высоты строки. Изображения загружаются близко к видимой области, при этом допускается до четырех одновременных запросов и одна повторная попытка. Вертикальная полоса прокрутки скрыта; тонкая горизонтальная полоса прокрутки остается доступной под строками программы.

После загрузки текущего дня виджет ожидает не менее десяти секунд и предварительно загружает данные за следующие два дня трансляции. Активная загрузка изображений может задержать эту операцию.

АтрибутПо умолчанию/примерОписание
tvprogram_oidtvprogram.0.tv1.cmdТочка данных, относящаяся к телевизору
widthItem120Ширина 30-минутного сегмента в пикселях
heightRow35Высота строки программы в пикселях
channeliconwidth35Доступная ширина логотипа канала в пикселях
showpicturesвключеноПоказывайте фотографии программы, если они доступны.
headerfontpercent125Размер шрифта заголовка времени в процентах
broadcastfontpercent75Размер шрифта программы в процентах
highlightcoloryellowЛюбимый цвет мелирования
markerpositionpercent25Текущее положение временной метки
dialogwidthpercent90Ширина диалогового окна относительно виджета
dialogheightpercent90Высота диалогового окна относительно виджета

Избранное

В виджете «Избранное» отображается список предстоящих программ, названия которых отображаются на экране телевизора. favorites Данные отображаются в виде отдельных точек. Результаты сортируются по дате и времени и обновляются каждую минуту.

АтрибутПо умолчанию/примерОписание
oidtvprogram.0.tv1.cmdТочка данных, относящаяся к телевизору
channelnameнеполноценныйОтображать названия каналов вместо логотипов.
favorites_selectedchannelsнеполноценныйОграничить результаты выбранными каналами
showweekdayвключеноПоказать день недели
maxfavorites10Максимальное количество результатов
highlightcoloryellowЛюбимый цвет значка
channeliconwidth35Ширина логотипа канала в пикселях

Если включено ограничение на количество выбранных каналов, в разделе «Избранное» используется расписание для того же телевизора. До сохранения выбора используются первые четыре канала. Явно пустой выбор не дает результатов.

Управление телевизором

В меню «Управление телевизором» отображается текущая программа или программа, которая будет запущена в заданное время. Щелчок по логотипу канала отправляет команду переключения; щелчок в любом месте карточки программы открывает ее подробную информацию. Она прокручивается вертикально без отображения полосы прокрутки.

АтрибутПо умолчанию/примерОписание
oidtvprogram.0.tv1.cmdТочка данных, относящаяся к телевизору
timeпустойПоказать текущую программу
time20:15Покажите программу в это время в течение 120 минут.
time20:15/200Используйте 200-минутный период показа.
timeстрока даты ISOПоказать программы в абсолютном времени
heightRow35Высота строки программы в пикселях
channeliconwidth35Доступная ширина логотипа канала в пикселях
showpicturesвключеноПоказывайте фотографии программы, если они доступны.
broadcastfontpercent75Размер шрифта программы в процентах
highlightcoloryellowЛюбимый цвет мелирования
dialogwidthpercent90Ширина диалогового окна "Подробности"
dialogheightpercent90Высота диалогового окна "Подробности"

Поиск

Поиск находит программы по названию, описанию, категории и дате начала. Необходимо указать как минимум текст поиска или категорию. Если текущая дата не изменяется, поиск начинается с текущего времени; если дата изменяется, поиск начинается с полуночи. Альтернативные логотипы каналов из optchnlogopath Поддерживаются. Результаты прокручиваются вертикально без отображения полосы прокрутки.

АтрибутПо умолчанию/примерОписание
Object IDtvprogram.0.tv1.cmdТочка данных, относящаяся к телевизору
showpicturesвключеноПоказывайте фотографии программы, если они доступны.
maxresults10Максимальное количество результатов
heightRow35Высота строки программы в пикселях
broadcastfontpercent75Размер шрифта программы в процентах
highlightcoloryellowЛюбимый цвет мелирования
dialogwidthpercent90Ширина диалогового окна "Подробности"
dialogheightpercent90Высота диалогового окна "Подробности"

Точки данных

Каждый настроенный телевизор предоставляет следующие данные:

Точка данныхОписание
channelfilterВыбранные идентификаторы каналов в порядке их отображения в формате JSON.
cmdВнутренняя связь между виджетами и адаптером.
favoritesНазвания любимых программ в виде JSON-массива
recordДанные программы записываются с помощью кнопки «Подробный просмотр записи».
selectchannelИдентификатор канала записывается с помощью логотипа и действий при переключении.
showОтображать ли виджеты программы только избранное
configУстаревшая точка данных конфигурации
optchnlogopathДоступный в браузере базовый URL-адрес для пользовательских логотипов каналов

Он record значение содержит startTime, endTime, title, channel, channelid, channelname и eventid.

sendTo команды

Используйте эти команды для создания пользовательских интеграций:

КомандованиеВходРезультат
getServerDatacategories, genres или channelsМножество
getServerTVProgramДень трансляции как yyyy-mm-ddМножество
getServerBroadcastviewdate и eventidОбъект
getFavoritesDataПодборка любимых названийМножество
getServerBroadcastNowМассив идентификаторов каналовМножество
getServerBroadcastDateИдентификаторы каналов и датаМножество
getServerBroadcastFindФильтры и диапазон датМножество
getServerInfoПустой объектДоступные дни трансляции

Параметры и вызываемые функции описаны в документации. sendTo Примеры команд .

Примеры

Все более подробные примеры находятся в файле docs/EXAMPLES.md :

  • Настройка CSS виджета
  • sendTo запросы
  • Переключение каналов Harmony и MagentaTV
  • альтернативная настройка логотипа канала
  • Список записей и избранные скрипты статуса
  • шаблоны выделения записей

Функции

  • Программа передач с указанием текущего времени и автоматической прокруткой.
  • Настраиваемый выбор и порядок каналов
  • Диалоги с подробной информацией о программе и копирование текста.
  • Управление навигацией в течение дня и масштабированием
  • Избранные фильтры и будущий список избранных
  • Переключение каналов через точку данных
  • Дополнительные изображения программ и альтернативные логотипы каналов (по желанию)
  • Настраиваемая ширина логотипа, высота строки, цвета и размеры диалогового окна.
  • Данные записи заполняются на основе сведений о программе.

Запланированные работы

  • Рассмотрите возможность добавления дополнительного виджета для выделенных программ.
  • При наличии достаточного спроса следует оценить другие источники программного обеспечения или аппаратного обеспечения.

Changelog

6.1.0 (2026-09-28)

  • more fixes and adjustments
  • add reset button under datapoint info/reset

6.0.0 (2026-09-28)

  • improve and extend translation
  • improve configuration dialog
  • improve and fix dataloading
  • improve seperation of data
  • Improving the management of the selected channels
  • reduce amount of data transfered to widgets

5.0.1 (2026-09-23)

  • fix tests

5.0.0 (2026-09-23)

  • Comprehensive revision
  • New data source added

4.0.4 (2026-03-27)

  • update dependencies
  • fix repochecker
  • tranform translation files

License

MIT License

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Copyright (c) 2025-2026 oweitman oweitman@gmx.de