-
-
Notifications
You must be signed in to change notification settings - Fork 56
Description
Hi,
I'm currently running mautrix-discord with Synapse (via Docker), and I ran into an issue after migrating from Continuwuity.
When direct media is enabled, Synapse rejects mxc:// avatar media generated by mautrix-discord if it isn’t already present in the local media store. As a result, Discord puppet avatars in bridged rooms don’t always propagate to Matrix users.
From the Synapse logs during avatar updates, I see errors indicating that the avatar MXC URI is rejected with the reason “avatar not on server”.
For testing, I modified mautrix-discord to disable direct media checking specifically for avatars (while keeping direct media enabled in the config.yaml). After doing that, avatar propagation worked correctly on my Synapse homeserver.
Would it be possible to add a config option to disable direct media for avatars specifically? Other homeservers I’ve tried (e.g. Continuwuity) don’t appear to have this issue when direct media is enabled, so this seems to be Synapse-specific behavior.
I’m not very experienced with Go, so I implemented this as a small local patch in reuploadUserAvatar() (puppet.go) to confirm the behavior and created a fork with that change. I’d be happy to test a cleaner or configurable solution if needed.
Thanks for the project, it's been working great otherwise!