From 9b2b691afdef06f63226dfa6033ddc29b5d20916 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Fri, 5 Dec 2025 23:29:12 +0200 Subject: [PATCH] handletelegram: resync channel on update event --- pkg/connector/handletelegram.go | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/pkg/connector/handletelegram.go b/pkg/connector/handletelegram.go index 36d3f89c..73ba8c68 100644 --- a/pkg/connector/handletelegram.go +++ b/pkg/connector/handletelegram.go @@ -100,7 +100,26 @@ func (t *TelegramClient) onUpdateChannel(ctx context.Context, e tg.Entities, upd log.Error().Msg("Update was for a left channel. Leaving the channel.") return t.selfLeaveChat(portalKey) } else { - // TODO update the channel info + res := t.main.Bridge.QueueRemoteEvent(t.userLogin, &simplevent.ChatResync{ + EventMeta: simplevent.EventMeta{ + PortalKey: portalKey, + CreatePortal: true, + }, + GetChatInfoFunc: func(ctx context.Context, portal *bridgev2.Portal) (*bridgev2.ChatInfo, error) { + chatInfo, mfm, err := t.wrapChatInfo(channel) + if err != nil { + return nil, err + } + if portal.MXID == "" { + err = t.fillChannelMembers(ctx, mfm, chatInfo.Members) + if err != nil { + return nil, err + } + } + return chatInfo, nil + }, + }) + return resultToError(res) } return nil }