From 5feafcddbaee14965557584058389ca486f306b5 Mon Sep 17 00:00:00 2001 From: Thom Dickson Date: Mon, 3 Apr 2023 17:20:53 -0400 Subject: [PATCH] Fix broken reply (telegram) (#2026) Fixes #2021 * Fix broken reply * Fix reply/quoting logic with topics * Update handlers.go --------- Co-authored-by: Wim --- bridge/telegram/handlers.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bridge/telegram/handlers.go b/bridge/telegram/handlers.go index 985397ef..9f8d1c38 100644 --- a/bridge/telegram/handlers.go +++ b/bridge/telegram/handlers.go @@ -97,7 +97,7 @@ func (b *Btelegram) handleForwarded(rmsg *config.Message, message *tgbotapi.Mess // handleQuoting handles quoting of previous messages func (b *Btelegram) handleQuoting(rmsg *config.Message, message *tgbotapi.Message) { // Used to check if the message was a reply to the root topic - if message.ReplyToMessage != nil && !(message.ReplyToMessage.MessageID == message.MessageThreadID) { //nolint:nestif + if message.ReplyToMessage != nil && (!message.IsTopicMessage || message.ReplyToMessage.MessageID != message.MessageThreadID) { //nolint:nestif usernameReply := "" if message.ReplyToMessage.From != nil { if b.GetBool("UseFirstName") { @@ -217,14 +217,14 @@ func (b *Btelegram) handleRecv(updates <-chan tgbotapi.Update) { // set the ID's from the channel or group message rmsg.ID = strconv.Itoa(message.MessageID) rmsg.Channel = strconv.FormatInt(message.Chat.ID, 10) - if message.MessageThreadID != 0 { + if message.IsTopicMessage { rmsg.Channel += "/" + strconv.Itoa(message.MessageThreadID) } // preserve threading from telegram reply if message.ReplyToMessage != nil && // Used to check if the message was a reply to the root topic - !(message.ReplyToMessage.MessageID == message.MessageThreadID) { + (!message.IsTopicMessage || message.ReplyToMessage.MessageID != message.MessageThreadID) { rmsg.ParentID = strconv.Itoa(message.ReplyToMessage.MessageID) }