diff --git a/bridge/telegram/handlers.go b/bridge/telegram/handlers.go index 4357b844..d9b72340 100644 --- a/bridge/telegram/handlers.go +++ b/bridge/telegram/handlers.go @@ -97,7 +97,8 @@ 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") { @@ -224,7 +225,7 @@ func (b *Btelegram) handleRecv(updates <-chan tgbotapi.Update) { // 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) }