I want a decentralized messenger which can delete msgs and sync between devices
I wonder why XMPP hasn't released a similar XEP yet. But frankly speaking, XMPP is not the best choice when it comes to decentralization. For me, Tox has always been an example of a good idea. But it still don't know even how to send offline messages.
Bitmessage is very cool, but also very inconvenient and the network itself is slow. So, yes, you can write anything in Bitmessage and it will be completely anonymous, but get ready to wait several minutes to send one message.
I have tried Retroshare. I've tried Session. Tox. Signal. But every one of them was bad in some way. Either they didn't contain what messenger needs, or they were overloaded with unnecessary features, or were frankly inconvenient.
I'm not a programmer, but in general I have an idea of how a normal messenger should work. Even if it's visually awful or only works on the command line.
1. It should be p2p. This means that there should be no servers in the middle, except perhaps relays.
2. ALL messages should be e2e encrypted.
3. It must support offline messages. It doesn't matter how it is implemented. The main thing is that messages should not remain on the relays even in encrypted form after delivery.
4. You don't need ANYTHING but your own desire to register. No phones, no email, no confirmation codes.
5. It must be instantaneous. Frankly speaking, I don't want to wait 10 minutes for message delivery like in Bitmessage.
6. In it you can delete messages. And both your own and your contact's messages. On all devices simultaneously.
7. It must be able to synchronize between devices.
It sounds simple. Moreover, it sounds logical! I reread my post and think: yes, this is how communication should be. But for some reason I do not know any messenger that implements these simple seven points.
Maybe someone knows one? It would even be great if it is unpopular and this post will help it to get promoted.
If this feature made it to any open-source or public protocols, it'd be pretty much impossible to guarantee that your message is actually deleted on the recipient's side. Someone could always make a 3rd party client that ignores the request. Or a user could just take a screenshot/etc.
I didn't see you mention it, so I'd recommend looking at Matrix / Element. It's decentralized in the way that e-mail is decentralized. It's federated and allows e2e.
https://matrix.org/
https://element.io/
Note that the other person may have used a camera to take the photo of the message, and printed it in paper. For important things, assume that the "delete" button is just a "hide" button.
Also such system already exists - email.
Check delta chat and/or chat over imap projects.