diff --git a/pkg/connector/tomatrix.go b/pkg/connector/tomatrix.go index 1e252d52..a6899ed4 100644 --- a/pkg/connector/tomatrix.go +++ b/pkg/connector/tomatrix.go @@ -158,11 +158,15 @@ func (tc *TelegramClient) convertToMatrix( sender = ptr.Ptr(tc.getPeerSender(fromID).Sender) } if sender != nil { - profile, err := portal.PerMessageProfileForSender(ctx, *sender) + ghost, err := portal.Bridge.GetGhostByID(ctx, *sender) if err != nil { - return nil, fmt.Errorf("failed to get per-message profile for sender %s: %w", *sender, err) + return nil, fmt.Errorf("failed to get ghost for per message profile: %w", err) + } + perMessageProfile = &event.BeeperPerMessageProfile{ + ID: string(ghost.ID), + Displayname: ghost.Name, + AvatarURL: &ghost.AvatarMXC, } - perMessageProfile = &profile } } @@ -206,7 +210,10 @@ func (tc *TelegramClient) convertToMatrix( cm.Disappear = *disappearingSetting } } - cm.Parts[0].Content.BeeperPerMessageProfile = perMessageProfile + if perMessageProfile != nil { + cm.Parts[0].Content.BeeperPerMessageProfile = perMessageProfile + cm.Parts[0].Content.AddPerMessageProfileFallback() + } cm.Parts[0].DBMetadata = &MessageMetadata{ ContentHash: hasher.Sum(nil), ContentURI: contentURI,