Replies: 47 comments 39 replies
-
These features should be as obnoxious to use as possible, because over-use will be amazingly annoying and encourage the development of homeservers and clients that completely ignore them. |
Beta Was this translation helpful? Give feedback.
-
Annoying for who? I can't think of a possible reason to make the feature hard to use. Some people want full conversation history, some want only the last X minutes/hours/days/weeks/months. Or they just want certain conversations (rooms) to have this option. Some do it for privacy, others to keep their homeserver tidy with no maintenance. As for implementation, I'd follow Signal and have a configurable self-destruct timer in room settings with a timer icon under each message. |
Beta Was this translation helpful? Give feedback.
-
Thing is that you cannot ever rely on a feature like that to do anything since it would be incredibly easy to change your server to not care about the setting, and the more they're used the more likely it's going to be for there to be a popular client/server fork that doesn't follow it, because most other people doesn't want random messages just disappearing out of the blue. So if you rely on something like this for privacy, you're bound to get bitten in the ass from the false sense of security. If anything what would be more useful is to use encrypted rooms and for clients to have a button for destroying the keys it has for a room, and then both parties could destroy the keys to read old messages that way. |
Beta Was this translation helpful? Give feedback.
-
An idea: allow Synapse home servers to set an option whether to delete redacted/self-destructed messages or not and visibly show information about this in every user's info. |
Beta Was this translation helpful? Give feedback.
-
Implement self-destructing message at first we can via bot with admin rights, that will delete (redact) all messages older than specific time. And if this will be popular - implement in Matrix client interface. And additional server option for homeserver owners in Synapse 'Remove deleted (redacted) message from homeserver database' with warning 'Acts only on current homeserver database, deleted messages may kept on other homeservers with disabled this option'. |
Beta Was this translation helpful? Give feedback.
-
It can't be done in a matrix client, because what if your client is offline then your messages wouldn't be removed. Bot would be fine as that'd be online all the time |
Beta Was this translation helpful? Give feedback.
-
Here is issue about Matrix room history purge bot turt2live/matrix-wishlist#81 |
Beta Was this translation helpful? Give feedback.
-
Depends on when you want to destroy the messages. For example telegram deletes them after a user had read the message. So this would be more of an "destroy x time after read". This behaviour could also not be implemented in a bot, because the bot would need to redact device/user specific messages. |
Beta Was this translation helpful? Give feedback.
-
I'm afraid, disappearing messages in Matrix would be quite a bit more complicated or less user friendly then in Signal. Signal deletes messages only locally on the phones while Matrix redaction works on the server. Thus the Signal behaviour of Delete message on A's phone x minutes after A has read it won't work. We could only do Delete message in the root x minutes after everyone has read it. And even that breaks completely, if there is an inactive user in the room or any user has disabled Read notifications. So we would probably need not one, but two timers to be set. One for every user has read the message and one (longer) fallback, where the message gets deleted no matter who has read it. |
Beta Was this translation helpful? Give feedback.
-
there's a proposal for this now at matrix-org/matrix-spec-proposals#1763 |
Beta Was this translation helpful? Give feedback.
-
New proposal is matrix-org/matrix-spec-proposals#2228 |
Beta Was this translation helpful? Give feedback.
-
and an other one here, merged into develop : matrix-org/synapse#6409 |
Beta Was this translation helpful? Give feedback.
-
that's not a proposal, that's the implementation ;P |
Beta Was this translation helpful? Give feedback.
-
even better then 😃 |
Beta Was this translation helpful? Give feedback.
-
So it released in Synapse 1.7.0rc1, now waiting implementation in Riot UI? |
Beta Was this translation helpful? Give feedback.
-
I'd really like to see this, but on a per-message basis. I'd really like if users could set a TTL on individual messages and/or media on a per-message basis. (Namely for attachments, though!) The main reason is to reduce storage burden/cost on the homeserver. For example, 99% of files I've attached to messages are only needed for that short exchange. I'd love if I could indicate to the homeserver that there is no need to hold on to it once it's been downloaded or after x period of time. On the side, I also do like the idea of deleting sensitive things from other servers, even if it's already encrypted. If it's not needed, it doesn't have to be there. A use-case could be, I attach my CV to a friend. Instead of depending on the homeserver's configuration for media lifetime, I can just say "TTL 7 Days" and the attachment will no longer be accessible after 7 days of sending the message. One noteworthy concern was that users may send malicious messages or illegal attachments and get around moderation thanks to the TTL. In this case, metadata or the message itself could be retained if the message is reported before the TTL elapses. A crappy UI mock up could look like this, in the attachment modal. (Note, I'm not a designer… clearly.) Ideally, I'd like to see the options include:
Mockup HTML<div id="background">
<div id="attachment">
<div id="top">
<h1>Upload files</h1>
<span>x</span>
</div>
<span>FILE abstract-algebra-theory-and-applications.pdf (1.55 MB)</span>
<hr>
<div id="ttl">
<div id="ttl-section">
<div id="checkbox"></div>
<span>Time-To-Live</span>
</div>
<div id="select">
<input type="radio">1 Day</input>
<input type="radio">7 Days</input>
<input type="radio">31 Days</input>
<input type="radio">Other</input>
</div>
</div>
<div id="custom">
<input type="number"/> <span id="label">Day(s)</span>
</div>
<div id="buttons">
<div id="upload-button">Upload</div>
</div>
</div>
</div> body {
background-color: black;
}
#attachment {
background-color: #15191e;
color: white;
font-family: sans-serif;
border-radius: .5em;
padding: 1em;
width: 512px;
}
#top {
display: flex;
justify-content: space-between;
align-items: center;
}
#buttons {
margin-top: 1em;
display: flex;
justify-content: flex-end;
}
#upload-button {
background-color: #0dbd8b;
border-radius: .5em;
padding: .5em;
}
#ttl-section {
display: flex;
align-items: center;
}
#checkbox {
margin-right: .5em;
height: 1em;
width: 1em;
border: solid #EEEEEE;
border-radius: .2em;
}
hr {
margin: 2em 1em;
}
#ttl {
display: flex;
justify-content: space-between;
}
#custom {
display: flex;
justify-content: flex-end;
margin-top: .5em;
}
#label {
padding-left: .5em;
} |
Beta Was this translation helpful? Give feedback.
-
You might like the more comprehensive proposal #712 . |
Beta Was this translation helpful? Give feedback.
-
What's the current status of this? |
Beta Was this translation helpful? Give feedback.
-
Unfortunately it didn't make it onto the priority list for this year. I believe this issue needs product team's input before it can be addressed/ Moving to discussions as the topic will need a development issue when it is scheduled. |
Beta Was this translation helpful? Give feedback.
-
Please make sure it is not "solved" in a way that precludes extending it, as described in #712. |
Beta Was this translation helpful? Give feedback.
-
I'm not familiar with how matrix works internally, but as a stop-gap solution how effective would a bot be? I just need it to delete all messages which are 7 days or older from a list of rooms. Nothings fancy or per message, just a hard purge. I'm wondering how the clients handle this. |
Beta Was this translation helpful? Give feedback.
-
very much needed |
Beta Was this translation helpful? Give feedback.
-
For my peers, who are vulnerable human rights defenders, the lack of self-destructing messages is the number one showstopper and the reason why they all stick with signal, even though it requires a phone number. |
Beta Was this translation helpful? Give feedback.
-
Self-destruction is likely to create a false sense of security: as Matrix is federated, no-one has control over what happens elsewhere. Servers may decline actually to remove "destroyed" messages. The best that can be done is have clients refuse to call the message from the server, or have (rightly) trusted servers, and no room members on any other server. On another line, proposal #712 may provide some extra goodies, such as messages not showing up before a given time. That too can be critical in dangerous situations. |
Beta Was this translation helpful? Give feedback.
-
Hey, I as a journalist really need this features to start using Element. As you may now in some country we and our sources face heavy risks (sometime deaths) if some repressive state caught us with message history. I understand that this features is hard to implement and that we cannot guaranteed that every messages will be deleted on every server / client etc. But what matter the most for my security is that the message is delete on my device that I trust. In the meantime, would a bot be a solution? Would it be possible to pay someone to implement this? We really need this. |
Beta Was this translation helpful? Give feedback.
-
Elements should support self-destructing messages as a feature. This is a common and essential functionality in many other messaging apps like signal and telegram. Self-destructing messages can enhance privacy and security by automatically deleting messages after a predefined duration or trigger. This can reduce the risk of data breaches, unauthorized access, or forensic recovery of sensitive or personal information. While this feature may not guarantee complete protection in every situation, it can mitigate more than 99% of potential threats. This feature is urgently needed for matrix users. Please prioritize adding this feature as soon as possible. |
Beta Was this translation helpful? Give feedback.
-
How about, for direct messaging between two people where |
Beta Was this translation helpful? Give feedback.
-
matrix-org/matrix-viewer#47 brings this issue up to me again as Matrix is making it too easy to access past history of rooms going as far as to publishing members-only readable histories on a webpage (granted not indexed by search engines) for anyone who knows the link and thus potentially contributing towards social cooling and fighting against the right to make the mistakes. |
Beta Was this translation helpful? Give feedback.
-
Any news / Things that can be done to push the making of this feature??? |
Beta Was this translation helpful? Give feedback.
-
I fully understand that self destructing messages are not a silver bullet, but I am totally in support of their addition. There are many cases where the attacker isn't a l33t hacker but just someone who picks up your phone that was left unlocked playing a youtube video and scrolls through your messages. Being able to ensure that only 1 week, or 1 day, or 1 hour of recent messages exist on the participants devices (or at least on your own device) is a valuable privacy feature. |
Beta Was this translation helpful? Give feedback.
-
This is obviously not a foolproof security measure because clients can be modified to not redact previously sent messages for example, but a recent thread has given some examples on why this is a useful feature nonetheless.
https://whispersystems.org/blog/disappearing-messages/
https://whispersystems.discoursehosting.net/t/automatically-disappearing-messages/473/18
https://whispersystems.discoursehosting.net/t/automatically-disappearing-messages/473/10
https://www.reddit.com/r/crypto/comments/5706th/disappearing_messages_for_signal/d8ojhg2/
Beta Was this translation helpful? Give feedback.
All reactions