Skip to content

MSC discussion: Custom emoji/stickers and interactions with authenticated & linked media #1679

Open
@turt2live

Description

@turt2live

The SCT strongly believes that when an event is redacted the media associated with that event should also be redacted. Custom stickers/emoji generally work by re-using MXC URIs between events, breaking the association of event to media object. With this in mind, the SCT is aiming to determine an order for which feature needs to pass FCP first, or which feature needs concrete alterations to support the other.

This issue exists as a discussion place as there's no obvious MSC which would be best to host. Note that while no MSC has been FCP'd the discussion is very much abstract. The common assumptions are:

  • Clients will have a way to know which "sticker/emoji packs" the user has access to.
  • Packs contain MXC URIs for each of their stickers/emojis, usually uploaded by the creator.
  • Media will be linked with events to allow it to be redacted when the event is redacted.
  • Users would like to use emoji images in reactions.
  • The ecosystem as a whole will be undergoing a relatively difficult migration as we move over to authenticated (linked) media.

MSCs which implement different parts of the above assumptions include the following, though they are at odds with each other:

With all that context, the question is how would custom emoji/stickers be impacted if media were linked to exactly one event? Are there considerations beyond MSC3911's copy API needed? What problems do client authors forsee in a linked media world? Ideas on how to resolve the concerns raised by these questions is also extremely welcome, with the only unmovable requirement being that media must be redacted when the associated event is redacted.

Where applicable, the SCT will translate the outcomes of the discussion here to MSCs/action items.

Metadata

Metadata

Assignees

No one assigned

    Labels

    metaSomething that is not a spec change/request and is not related to the build tools

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions