From 1c599a33bc1270d1c35b1a3a1751e92247839cd0 Mon Sep 17 00:00:00 2001 From: Skip R Date: Mon, 24 Nov 2025 13:22:32 -0800 Subject: [PATCH] add aggressive info updating for dev --- pkg/connector/capabilities.go | 5 +++++ pkg/connector/client.go | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/pkg/connector/capabilities.go b/pkg/connector/capabilities.go index 4728513..90c5e2f 100644 --- a/pkg/connector/capabilities.go +++ b/pkg/connector/capabilities.go @@ -24,7 +24,12 @@ import ( "maunium.net/go/mautrix/event" ) +// Whether to aggressively update user info. Only relevant during initial development +// of this bridge. +var aggressivelyUpdateInfoForBridgeDevelopment = true + var DiscordGeneralCaps = &bridgev2.NetworkGeneralCapabilities{ + AggressiveUpdateInfo: aggressivelyUpdateInfoForBridgeDevelopment, Provisioning: bridgev2.ProvisioningCapabilities{ ResolveIdentifier: bridgev2.ResolveIdentifierCapabilities{}, GroupCreation: map[string]bridgev2.GroupTypeCapabilities{}, diff --git a/pkg/connector/client.go b/pkg/connector/client.go index 3554a1c..8bcc8ee 100644 --- a/pkg/connector/client.go +++ b/pkg/connector/client.go @@ -197,7 +197,7 @@ func makeChannelAvatar(ch *discordgo.Channel) *bridgev2.Avatar { } } -func (d *DiscordClient) syncChannel(_ context.Context, ch *discordgo.Channel, selfIsInChannel bool) { +func (d *DiscordClient) syncChannel(ctx context.Context, ch *discordgo.Channel, selfIsInChannel bool) { isGroup := len(ch.RecipientIDs) > 1 var roomType database.RoomType @@ -220,6 +220,12 @@ func (d *DiscordClient) syncChannel(_ context.Context, ch *discordgo.Channel, se for _, recipient := range ch.Recipients { sender := d.makeEventSender(recipient) members.MemberMap[sender.Sender] = bridgev2.ChatMember{EventSender: sender} + + if aggressivelyUpdateInfoForBridgeDevelopment { + if ghost, err := d.connector.bridge.GetGhostByID(ctx, networkid.UserID(recipient.ID)); err == nil { + ghost.UpdateInfoIfNecessary(ctx, d.UserLogin, bridgev2.RemoteEventUnknown) + } + } } members.TotalMemberCount = len(ch.Recipients)