From 6ecaf724578fe7ba50838be4af3934b3385bcb7a Mon Sep 17 00:00:00 2001 From: RandomChars <random@chars.jp> Date: Tue, 9 Nov 2021 12:35:11 +0900 Subject: [PATCH] reference discord messages --- discord.go | 10 +++++++++- telegram.go | 3 +++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/discord.go b/discord.go index 2d48e32..41c7472 100644 --- a/discord.go +++ b/discord.go @@ -85,7 +85,10 @@ func openDiscord() { ready <- struct{}{} } -var idReference = make(map[string]int) +var ( + idReference = make(map[string]int) + referenceId = make(map[int]*discordgo.MessageReference) +) func handleDiscord() { session.AddHandler(discordHandleCreate) @@ -151,6 +154,11 @@ func discordHandleCreate(session *discordgo.Session, create *discordgo.MessageCr return } else { idReference[create.Message.ID] = m.MessageID + referenceId[m.MessageID] = &discordgo.MessageReference{ + MessageID: create.Message.ID, + ChannelID: create.ChannelID, + GuildID: create.GuildID, + } } log.Printf("D%vM%s -> T%vM%v %s#%s (%s): %s", diff --git a/telegram.go b/telegram.go index b55cbf3..0e44195 100644 --- a/telegram.go +++ b/telegram.go @@ -226,6 +226,9 @@ func respondTelegram(update tgbotapi.Update) { if r, ok := messageReference[update.Message.ReplyToMessage.MessageID]; ok { reference = r setTelegramPreviousCaller(update.Message.Chat.ID, -1) + } else if r, ok = referenceId[update.Message.ReplyToMessage.MessageID]; ok { + reference = r + setTelegramPreviousCaller(update.Message.Chat.ID, -1) } } -- GitLab