On Mon, 30 Jun 2025 at 11:16, Timothée Jaussoin <edhelas@movim.eu> wrote:
A few weeks ago I made an important pull request to complete, fix and update the XEP-0317: Hats.
https://github.com/xsf/xeps/pull/1437
This PR included the following changes:
Specify a urn:xmpp:hats:commands:dcreate command to add a hat to the available list Specify a urn:xmpp:hats:commands:ddestroy command to destroy a hat from the list Clarify how the service should broadcast the hat changes when it is edited, assigned, removed or destroyed Specify a way for an entity to get the complete list of hats using a hash in disco#info Add a hue optional parameter allowing entities to assign a color to the hat that can be displayed properly in any conditions on the client (as explained in XEP-0392: Consistent Color Generation) Standardize all the form fields using XEP-0068 Fix some typos
I tried to reach the authors without success so I'm trying again using the mailing list.
I'd really like to move it forward then we can start implementing them in our clients and servers.
Sorry, I did actually respond in xsf@ the day after you submitted the PR but I understand it was easily missed. I mentioned that I'm fine with these changes, as long as the commands are optional for the server. I still don't see any text explicitly stating this, and I wouldn't want the XEP to mandate that these commands are always available. The reason is that a lot of deployments I have worked on that use hats typically pull this information from another source of truth (for example, LDAP or some database) and do not allow free creation of hats. For example, in certain deployments it wouldn't be okay for a student to create a group chat, create a "Teacher" hat, and then assign it to themselves and/or their friends. Obviously if you want to build a client management UI for hats, because you are building a public self-service platform (such as, you mentioned, Discord), then it's good to have standard commands for these operations in XMPP. Also, a minor nit, but it might be nice to make the command nodes a bit more sensible. They don't make sense as the XEP has evolved. I'll leave some comments inline. Regards, Matthew