Skip to main content
Вся настройка Lampac NextGen хранится в файлах init.conf (JSON) или init.yaml (YAML), которые должны лежать рядом с Core.dll. Watcher проверяет конфигурацию каждую секунду и применяет изменения на лету без перезапуска сервера. Резервные копии автоматически сохраняются в database/backup/init/. Дефолтные значения подгружаются из config/base.conf, а ваши переопределения живут в init.conf или init.yaml.

Основные разделы конфигурации

listen

IP, порт, протокол и таймауты сетевого слоя

BaseModule

Загрузка и фильтрация модулей: SkipModules, LoadModules

cache

Продление TTL кеша при обращении

Playwright

Автоматизация Chromium и Firefox для обхода JS-защит

RCH

WebSocket-реле для клиентов за NAT

GC

Управление сборщиком мусора .NET

serilog

Структурное логирование в файл

kit

Шифрование потоков через CryptoKit

Полный пример базовой конфигурации

Ниже приведён аннотированный пример init.conf с ключевыми параметрами, которые понадобятся при первой настройке сервера.

Настройка сети (listen)

Раздел listen управляет сетевым слоем ASP.NET Core. Все параметры применяются сразу при горячей перезагрузке.

Управление модулями (BaseModule)

BaseModule определяет, какие модули загружаются при старте сервера. Есть два механизма фильтрации:
  • SkipModules: имена модулей, которые не загружаются даже если код присутствует в образе
  • LoadModules: белый список по имени, группе (например, OnlineUKR) или регулярному выражению (например, LME.*)
По умолчанию в example.init.conf (шаблон из репозитория) в SkipModules указаны: Catalog, DLNA, JacRed, Sync, TimeCode, TorrServer, Tracks, Transcoding, WebLog. Также в base.conf отключены: CacheMedia, ForkPlayerXML, MsxNative, TelegramAuth, TelegramAuthBot. WAF и accsdb отключены через "enable": false в base.conf.

Кеш (cache)

Раздел cache управляет поведением файлового кеша. Параметр extend задаёт количество минут, на которое продлевается TTL записи при каждом обращении.

Playwright (chromium и firefox)

Playwright используется для автоматизации браузера при обходе JS-защит на стороне провайдеров. В Docker-образе зависимости уже включены. Для нативной установки потребуется дополнительная команда playwright install chromium.

RCH (Remote Client Hub)

RCH — WebSocket-реле для клиентов, находящихся за NAT. Позволяет устройствам подключаться к серверу без проброса портов.
Эндпоинт WebSocket: ws://<host>:9118/ws. Пост-запросы результатов принимаются на /rch/result и /rch/gzresult.

Настройка провайдеров

Каждый провайдер контента настраивается в собственном разделе init.conf. Набор параметров зависит от конкретного источника.

Горячая перезагрузка без рестарта

Watcher проверяет init.conf и init.yaml каждую секунду. При изменении конфиг применяется сразу, без перезапуска сервера. Резервные копии сохраняются автоматически в database/backup/init/.

Минимальный example.init.conf

Ниже приведён точный example.init.conf, который поставляется с проектом. Это минимальная конфигурация для первого запуска.
Файл config/base.conf содержит дефолтные значения для всех параметров. Если параметр не указан в вашем init.conf, используется значение из base.conf. Это позволяет держать ваш конфиг минимальным и переопределять только то, что нужно.