config: включение Telegram разведено с ключом доступа
- в секции [telegram] заведён обязательный ключ enabled: умолчания у него нет, файл без него негоден; bot_token стал только ключом доступа и при enabled = false не читается вовсе, а пустой при enabled = true роняет старт - выключенный вход даёт подъём одним входом без единого обращения к Telegram и записью INFO вместо прежнего WARN: это выбор владельца, а не отклонение - отказ разбора файла настроек больше не пересказывает toml — её ParseError несёт в тексте разбираемое значение, и оборванная строка секретного ключа уносила его в журнал; теперь называются путь, строка, столбец и последний ключ
This commit is contained in:
@@ -59,6 +59,14 @@ func main() {
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
// Включённый вход без ключа доступа — ошибка настройки, а не режим: бот по
|
||||
// пустому ключу не появится, а тихий подъём без него оставил бы отправителей
|
||||
// без ответов.
|
||||
if err := cfg.Telegram.Validate(); err != nil {
|
||||
logger.Error("Unable to start with incomplete telegram settings", "error", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
// Загружаем переменные окружения из .env файла
|
||||
if err := godotenv.Load(); err != nil {
|
||||
logger.Warn("Warning: .env file not found, using system environment variables")
|
||||
@@ -88,7 +96,7 @@ func main() {
|
||||
metaviewer := ffmpegmv.NewFfmpegMetaViewer()
|
||||
converter := ffmpegconv.NewFfmpegConverter()
|
||||
|
||||
tgBot, tgSender, err := buildTelegram(cfg.Telegram.BotToken, logger)
|
||||
tgBot, tgSender, err := buildTelegram(cfg.Telegram, logger)
|
||||
if err != nil {
|
||||
logger.Error("Failed to create Telegram bot", "error", err)
|
||||
os.Exit(1)
|
||||
|
||||
Reference in New Issue
Block a user