Skip to main content
Tg-notify.bot — это фоновый Telegram-бот для Lampac NextGen, который уведомляет пользователей о выходе новых серий любимых сериалов и появлении выбранной озвучки. Бот объединяет три подсистемы: трекер эпизодов через Trakt и TMDB, трекер озвучек через балансеры Mirage и Collaps, а также клиентский плагин Lampa для управления подписками.

Включение модуля

1

Проверьте SkipModules

Убедитесь, что Tg-notify.bot или TelegramBot не добавлены в BaseModule.SkipModules в init.conf. Если имя есть в списке — удалите его.
2

Включите в manifest.json

В файле Modules/Tg-notify.bot/manifest.json установите "enable": true. По умолчанию в репозитории стоит false.
3

Добавьте секцию TelegramBot в init.conf

Скопируйте пример конфигурации ниже в init.conf и заполните свои токены.
4

Подключите клиентский плагин

Добавьте плагин в LampaWeb.customPlugins в init.conf.
5

Перезапустите сервер

Выполните systemctl restart lampac (Linux) или перезапустите контейнер (Docker).
Если bot_token пустой, long polling не стартует. В лог будет записано предупреждение, но сервер продолжит работу.

Конфигурация

Добавьте секцию TelegramBot в init.conf:

Как работает бот

Привязка аккаунта

Из вкладки «TG Подписки» в Lampa пользователь получает deep-link вида /start link_{uid}. Бот сохраняет связку chat_id с lampac_uid в файл users.json. После этого все подписки этого UID привязываются к Telegram-чату.

Подписка на сериал

В карточке сериала плагин перехватывает кнопку уведомлений и показывает меню доступных озвучек. Выбор отправляется на эндпоинт /api/tg/subscribe и сохраняется в subscriptions.json.

Фоновый цикл CheckAll

Раз в заданный интервал (и вручную по команде /check) бот выполняет проверку по каждой подписке:
  1. Новые серии — запрос к Trakt или TMDB. Если озвучка не выбрана, уведомление шлётся о самом факте выхода эпизода.
  2. Озвучки — параллельно опрашиваются Mirage, Collaps и VideoHub. Берётся максимальный доступный эпизод. Кто первый нашёл новую серию в нужной озвучке, от того и приходит уведомление.
Формат уведомления:
Уведомление сопровождается обложкой кадра из TMDB, если у эпизода есть still_path.

Команды бота

HTTP API

Все маршруты, кроме /tg-notify.js и /api/tg/voices, требуют авторизации по user_uid.

Подключение плагина в Lampa

Добавьте плагин в секцию customPlugins файла init.conf:
Плейсхолдер {localhost} автоматически заменяется на реальный адрес сервера. Плагин добавляет вкладку «TG Подписки» в Lampa и перехватывает кнопку уведомлений в карточке сериала.