@@ -7,14 +7,15 @@ import (
7
7
"github.com/go-telegram-bot-api/telegram-bot-api"
8
8
log "github.com/sirupsen/logrus"
9
9
"github.com/spf13/viper"
10
+ "strconv"
10
11
"time"
11
12
)
12
13
13
14
var tgBot * tgbotapi.BotAPI
14
15
15
16
func init () {
16
17
initialize = append (initialize , func () {
17
- if viper .GetString ("tg-bot-key" ) != "" && viper .GetInt64 ("tg-chat-id" ) != 0 {
18
+ if viper .GetString ("tg-bot-key" ) != "" && viper .GetString ("tg-chat-id" ) != "" {
18
19
var err error
19
20
tgBot , err = tgbotapi .NewBotAPI (viper .GetString ("tg-bot-key" ))
20
21
@@ -28,8 +29,24 @@ func init() {
28
29
29
30
lastMessage := int64 (0 )
30
31
32
+ chatIdStr := viper .GetString ("tg-chat-id" )
33
+
34
+ chatId , err := strconv .ParseInt (chatIdStr , 10 , 64 )
35
+
36
+ if err != nil {
37
+ chat , err := tgBot .GetChat (tgbotapi.ChatConfig {
38
+ SuperGroupUsername : chatIdStr ,
39
+ })
40
+
41
+ if err != nil {
42
+ log .Fatalf ("Chat not found: %s" , chatIdStr )
43
+ }
44
+
45
+ chatId = chat .ID
46
+ }
47
+
31
48
start = append (start , func (data * models.NotificationData ) {
32
- message := tgbotapi .NewMessage (viper . GetInt64 ( "tg-chat-id" ) , generateTelegramMessageText (data , nil ))
49
+ message := tgbotapi .NewMessage (chatId , generateTelegramMessageText (data , nil ))
33
50
message .ParseMode = tgbotapi .ModeMarkdown
34
51
send , err := tgBot .Send (message )
35
52
@@ -49,7 +66,7 @@ func init() {
49
66
}
50
67
51
68
if currentMessage != nil {
52
- message := tgbotapi .NewEditMessageText (viper . GetInt64 ( "tg-chat-id" ) , currentMessage .MessageID , generateTelegramMessageText (data , nil ))
69
+ message := tgbotapi .NewEditMessageText (chatId , currentMessage .MessageID , generateTelegramMessageText (data , nil ))
53
70
message .ParseMode = tgbotapi .ModeMarkdown
54
71
_ , err := tgBot .Send (message )
55
72
@@ -63,7 +80,7 @@ func init() {
63
80
64
81
end = append (end , func (data * models.NotificationData , result models.Result ) {
65
82
if currentMessage != nil {
66
- message := tgbotapi .NewEditMessageText (viper . GetInt64 ( "tg-chat-id" ) , currentMessage .MessageID , generateTelegramMessageText (data , & result ))
83
+ message := tgbotapi .NewEditMessageText (chatId , currentMessage .MessageID , generateTelegramMessageText (data , & result ))
67
84
message .ParseMode = tgbotapi .ModeMarkdown
68
85
_ , err := tgBot .Send (message )
69
86
0 commit comments