Skip to content

Implement disappearing / ephemeral messages #1900

@taoeffect

Description

@taoeffect

Problem

Once messages are sent in a chatroom contract, they're kinda there forever, even if they're "deleted".

It would be better if there was at least an option to send a message that could be really deleted.

Solution

Create a new type of message under MESSAGE_TYPES, to allow for ephemeral messages, where the contents are stored as a separate file attachment that can be deleted (EDT: @corrideat also suggests the idea of using the KV store instead, which could also work). See related issue #1827 for storing auto-deleting attachments (that needs to be closed first).

Then update the UI to support these new message types and implement them. If designs for ephemeral messages aren't ready, then just implement the feature, but don't hook it up to the UI - or make it a simple thing like an icon (💣) next to the input field that gets toggled, and when messages are sent with this icon enabled, they are sent as ephemeral message types. And when ephemeral message types are deleted, the underlying message (in its separate file form) gets deleted.

EDIT: The kind of UI I see for this is basically a dropdown with the 💣 icon that shows these options:

  • 💣 (on delete)
  • 💣 1hr
  • 💣 6hr
  • 💣 1d
  • 💣 3d
  • 💣 1w
  • 💣 1m
  • 💣 4m

And the UI would look something like this:

[ 💣 ][ (on delete) v ]

Where the [ 💣 ] is toggleble on/off (blue background highlight when on), and the dropdown is next to it which sets the setting.

Sub-issues

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions