From 9221f2bb9d583b5ed1395200cbbce43588ab90d3 Mon Sep 17 00:00:00 2001 From: eleksir Date: Mon, 19 May 2025 21:48:57 +0300 Subject: [PATCH] [WIP] Test --- internal/moon/textMessage.go | 33 ++++++++++++++++ internal/moon/textMessage.go.orig | 64 +++++++++++++++++++++++++++++++ 2 files changed, 97 insertions(+) create mode 100644 internal/moon/textMessage.go.orig diff --git a/internal/moon/textMessage.go b/internal/moon/textMessage.go index 2586077..43879ee 100644 --- a/internal/moon/textMessage.go +++ b/internal/moon/textMessage.go @@ -5,6 +5,7 @@ import ( "time" "github.com/NicoNex/echotron/v3" + "github.com/davecgh/go-spew/spew" ) func textMessage(msg *echotron.Update) { @@ -59,6 +60,38 @@ func textMessage(msg *echotron.Update) { Log.Infof("Info about new userid %d saved to new users db", msg.Message.From.ID) } } + + if msg.Message.Text == "cf9ccd46f56c32eca88390785e94d69b" { + // TODO: замьютить юзера. + kbr := []echotron.KeyboardButton{} + kbr = append(kbr, echotron.KeyboardButton{ + Text: "Кек", + }) + kbr = append(kbr, echotron.KeyboardButton{ + Text: "Лол", + }) + + kbd := [][]echotron.KeyboardButton{} + kbd = append(kbd, kbr) + messageText := fmt.Sprintf("Дорогой [%s](tg://user?id=%d), ты нашёл скрытый ивент, лол?", msg.Message.From.Username, msg.Message.From.ID) + + r, err := Tg.SendMessage( + messageText, + msg.Message.Chat.ID, + &echotron.MessageOptions{ + ParseMode: echotron.Markdown, + ReplyMarkup: echotron.ReplyKeyboardMarkup{ + Keyboard: kbd, + OneTimeKeyboard: true, + Selective: true, + ResizeKeyboard: true, + }, + }, + ) + + Log.Info(spew.Sdump(err)) + Log.Info(spew.Sdump(r)) + } } /* vim: set ft=go noet ai ts=4 sw=4 sts=4: */ diff --git a/internal/moon/textMessage.go.orig b/internal/moon/textMessage.go.orig new file mode 100644 index 0000000..2586077 --- /dev/null +++ b/internal/moon/textMessage.go.orig @@ -0,0 +1,64 @@ +package moon + +import ( + "fmt" + "time" + + "github.com/NicoNex/echotron/v3" +) + +func textMessage(msg *echotron.Update) { + if msg.Message.ReplyToMessage == nil { + // Just log it, it seems later here should be ban/mute command set. + Log.Infof( + "User %s %s (username = %s, id = %d) in %s %s (%d) says: %s", + msg.Message.From.FirstName, + msg.Message.From.LastName, + msg.Message.From.Username, + msg.Message.From.ID, + msg.Message.Chat.Type, + msg.Message.Chat.Title, + msg.Message.Chat.ID, + msg.Message.Text, + ) + } else { + // Just log it. + Log.Infof( + "User %s %s (username = %s, id = %d) in %s %s (%d) replies to message %d by %s %s (username = %s, id = %d): %s", + msg.Message.From.FirstName, + msg.Message.From.LastName, + msg.Message.From.Username, + msg.Message.From.ID, + msg.Message.Chat.Type, + msg.Message.Chat.Title, + msg.Message.Chat.ID, + msg.Message.ReplyToMessage.ID, + msg.Message.ReplyToMessage.From.FirstName, + msg.Message.ReplyToMessage.From.LastName, + msg.Message.ReplyToMessage.From.Username, + msg.Message.ReplyToMessage.From.ID, + msg.Message.Text, + ) + } + + // Update database of new members :) + // Try to get timestamp when this member joined to chat + if joinTimestampString := Cfg.GetValue( + "NewMembers", + fmt.Sprintf("%d", msg.ChatMember.Chat.ID), + fmt.Sprintf("%d", msg.ChatMember.NewChatMember.User.ID), + ); joinTimestampString == "" { + if err := Cfg.SaveKeyValue( + "NewMembers", + fmt.Sprintf("%d", msg.Message.Chat.ID), + fmt.Sprintf("%d", msg.Message.From.ID), + fmt.Sprintf("%d", time.Now().Unix()), + ); err != nil { + Log.Error(err) + } else { + Log.Infof("Info about new userid %d saved to new users db", msg.Message.From.ID) + } + } +} + +/* vim: set ft=go noet ai ts=4 sw=4 sts=4: */