diff --git a/auth.go b/auth.go index 4104243..bac585d 100644 --- a/auth.go +++ b/auth.go @@ -85,7 +85,12 @@ func NotifyTelegram(msg string) { return } client := &http.Client{} - var data = strings.NewReader("chat_id=" + Cfg.TelegramChat + "&text=" + msg) + var data *strings.Reader + if Cfg.TelegramToken != "" { + data = strings.NewReader("chat_id=" + Cfg.TelegramChat + "&message_thread_id=" + Cfg.TelegramTopic + "&text=" + msg) + } else { + data = strings.NewReader("chat_id=" + Cfg.TelegramChat + "&text=" + msg) + } req, err := http.NewRequest("POST", "https://api.telegram.org/bot"+Cfg.TelegramToken+"/sendMessage", data) if err != nil { slog.Error("failed telegram request", "error", err) diff --git a/config.go b/config.go index 08b4871..d290c2d 100644 --- a/config.go +++ b/config.go @@ -30,6 +30,7 @@ type Config struct { TelegramToken string `config:"tg_token" type:"string"` TelegramChat string `config:"tg_chat" type:"string"` + TelegramTopic string `config:"tg_topic" type:"string"` } var DefaultConfig = Config{