Merge pull request #3135 from ZOOWH/fix/3110-telegram-forum-thread-id

fix(telegram): use compositeChatID in InboundContext.ChatID for forum topics
This commit is contained in:
Mauro
2026-06-16 22:06:31 +02:00
committed by GitHub
2 changed files with 4 additions and 3 deletions
+1 -1
View File
@@ -1185,7 +1185,7 @@ func (c *TelegramChannel) handleMessages(ctx context.Context, messages []*telego
inboundCtx := bus.InboundContext{
Channel: c.Name(),
ChatID: fmt.Sprintf("%d", chatID),
ChatID: compositeChatID,
ChatType: peerKind,
SenderID: platformID,
MessageID: messageID,
+3 -2
View File
@@ -1212,8 +1212,9 @@ func TestHandleMessage_ForumTopic_SetsMetadata(t *testing.T) {
inbound, ok := <-messageBus.InboundChan()
require.True(t, ok, "expected inbound message")
// ChatID remains the parent chat; TopicID isolates the sub-conversation.
assert.Equal(t, "-1001234567890", inbound.ChatID)
// ChatID includes the thread ID for forum topics so outbound
// delivery resolves the correct topic without relying solely on TopicID fallback.
assert.Equal(t, "-1001234567890/42", inbound.ChatID)
assert.Equal(t, "group", inbound.Context.ChatType)
assert.Equal(t, "42", inbound.Context.TopicID)
}