mautrix / signal

A Matrix-Signal puppeting bridge
GNU Affero General Public License v3.0
484 stars 74 forks source link

Signal profile avatar changes may not appear in Matrix #476

Open AndrewFerr opened 3 months ago

AndrewFerr commented 3 months ago

If a Signal user changes their avatar, the new avatar might not appear in Matrix.

Part of why this happens is because pkg/signalmeow/profile.go returns any cached profile from the last hour instead of always fetching the latest profile. This suggests that a Signal avatar change will appear in Matrix as long as the avatar is changed at least an hour after the last time it was changed.

A quick fix is to not use cached profiles, but that would obviously increase the number of profile fetches.

maltee1 commented 3 months ago

I don't think there's a way to not cache profiles, since profiles are essentially being cached as avatar and displayname on matrix. There isn't really any way for the bridge to tell whether the matrix user is currently looking at a signal ghost's profile, to fetch it at that moment.