matrix-spec-proposals
matrix-spec-proposals copied to clipboard
MSC1951: Custom sticker packs and emoji (mk II)
Changes from MSC1256:
- Packs-as-rooms
- More compact data structures
- Less vague criteria for field values
- Fixes https://github.com/matrix-org/matrix-doc/issues/1894
This is proposed with a community hat on:
Signed-off-by: Travis Ralston <[email protected]>
It's not mentioned in the proposal because it doesn't directly apply, but a paid sticker pack would probably specify a publicly reachable page for a sharable URL (eg: https://example.org/packs/paid/matrix-stickers
) which would resolve to an invite only room. For people to actually get access to the stickers, they'd pay for it and then two things could happen: a unique room is generated for the person to have or the application asks which user should be receiving the sticker pack (inviting that user to the private room).
In the case of a unique room, the room would probably be open to the public but set up such that the provider has a bot which has made it so the user can't do anything in the room, including invite others. Once the first user joins, the bot would make the room invite only to prevent the user from sharing the link to friends, giving them a free sticker pack. In future, the knock
membership state would be highly useful for this.
The third option for paid sticker packs (which isn't as great) is to just treat the stickers as not belonging to a pack, and therefore not needing to provide a URL.
would love to see this get merged
Anything blocking this from being added to matrix? Is it already wip? Can anyone give a status update?
I'm curious as well, our community has been requesting this constantly.
It's currently on my personal backburner. There's a partial implementation in the form of sticker packs (https://github.com/turt2live/matrix-sticker-manager) though it is far from perfect or ideal.
Hoping to push this forward once some of the larger MSCs finish landing.
Thanks for the update. Just another ping to say the community I'm a part of would also love this.
Complete noob here. I wonder how privacy-friendly this approach is?
If I understand correctly, this proposal does not do any E2EE. It's all state events, which don't get encrypted IIRC. It would leak both sticker content as well as who is using which sticker packs (to those who are in the sticker room / admins of any HS of which at least one user uses the pack). I feel this makes creating "personal" sticker packs (pictures of company property, personal pictures of a group of friends, et cetera: private packs for use in small communities) sketchy.
If I understand the spec correctly, encrypted files are only encrypted once, and then the decryption key is sent encrypted to all recipients? Would it be possible to use a similar system for sticker packs? That would at least save them from compromised servers.
The sticker pack room neatly announcing everyone who is using the pack looks like valuable metadata to me in the case of community-specific sticker packs. A different approach I can think of would be sticker packs as files (or maybe one index file with metadata an thumbnails linking to individual sticker files). Makes it harder to come up with a neat update mechanism, maybe there would be none. But it would be easily encryptable. I believe Signal does something like this.
What do you think? Is there any way to make this more privacy-friendly?
There doesn't seem to be any activity on this for quite a while. What's blocking this from being merged? Is it not being worked on anymore?
It's just not a priority on my side right now. Generally speaking, #matrix-spec:matrix.org is a better place to be asking for status updates.
XMPP accepted stickers specification in their protocol. Maybe will be useful for some inspiration?
https://xmpp.org/extensions/xep-0449.html
What is blocking this merge request?
A re-review from me, the author, to compare its feasibility against other MSCs, then a proper implementation, then spec core team review.
we have a lot of people who would really really like this feature, and its absence is one of the biggest problems with matrix for us
we have a lot of people who would really really like this feature, and its absence is one of the biggest problems with matrix for us
Not "biggest"..
CATASTROPHIC!!!

Please refrain from offtopic discussion and imagery.
@turt2live Thanks a lot for the PR Just one question, does this implementation consider encryption on custom emoji and sticker packs?
The MSC can be read from the files tab. If you have comments or concerns, please leave them inline on that view.
Hey Matrix Development Team,
I am sad to say this but i was bullied and mentally abused in this very comment thread for being a queer/gay/lesbian/MTF trans/ FTM trans/ pansexual/bisexual/neuro divergent/PTSD/Minor Attracted Person/furry/otaku. It was horrifying i felt so small and defenseless like i couldn't do anything. If I could have posted a sticker of a transginger gang-stalking victim beating a homeless person (CIA operative) to death with a shoe, and they would have been scared away. DO BETTER MATRIX! Please implement stickers ASAP!
Wow. this is so stunning and brave. Im literally weeping into my tampon tea rn. bless you good xir. We will keep you in our prayers.
If only you had stickers things could have been different
Looking through the proposal shouldn't there also be a way to define per-user stickers/emoji?
Also what about animated stickers/emoji?
@Kreyren Please open comments on specific lines, so that you can get a reply inside a thread. Also, there is an alternative MSC, which has those features: matrix-org/matrix-spec-proposals#2545 and is used in some clients already.
Closing in favour of https://github.com/matrix-org/matrix-spec-proposals/pull/2545
MSC2545 is the SCT's current preference to push forward, though may still adopt some of the ideas contained here.