6 ms·
XMPP is anything but dead yet. There were a lot of XEPs added and updated in recent years and it turned into a modern protocol being able to provide all feature
by mbirth 6y ago
XMPP is anything but dead yet. There were a lot of XEPs added and updated in recent years and it turned into a modern protocol being able to provide all features you could expect from a modern messaging service.
It's just that you need a client and server that supports those features. Daniel Gultsch has written an Android client[1], that's as good as it can be. He also offers a maintained XMPP server [2] providing the full-featured counterpart. But if you want to self-host, ejabberd supports all the features as does Prosody. For iOS users, there's Monal which is slowly getting there.
[1] https://conversations.im https://conversations.im
[2] https://account.conversations.im https://account.conversations.im
- ryukafalz 6y agoNeeding a client that supports those features seems like a big ask, though. You're right that Conversations is about as good as an XMPP client can be, and it's a joy to use... but it's one of very few. Among other things, my server has message archiving configured for MUCs, but Conversations is the only client I've ever been able to get to sync that history locally. That's something I just don't ever have to worry about with Matrix. (Not that I don't have other complaints with Matrix.)
- mbirth 6y agoHow many different full-featured Matrix clients do you know? And what about lean ones that don’t come in a huge Electron package? Also, Gajim has support for MAM and can sync everything locally. I believe Monal has it, too.
- ryukafalz 6y agoAlso not many, but they all get history syncing down. They have to, it's at the core of the protocol. (And that aside, at least Element is available on just about every platform.) Yes, I've heard that Gajim and Monal support it. I'm running both of them right now; Gajim doesn't appear to be fetching history from the server for the MUC I'm looking at in either the chat or history windows, Monal seems to attempt to but shows a progress spinner indefinitely. Conversations successfully loads history from the server; I can scroll back to well before I got this phone so I know it's not just local.
- com2kid 6y agoI spent a long time trying to get the following to all work: 1. Store and forward 2. e2e encryption 3. Messages received on multiple clients at the same time, with clients being able to reconnect and pick up the complete conversation history. In theory, all possible. In reality, none of the clients I tried supported the same combo of XMPP plugins and encryption methods. Oh, and I need clients that work on MacOS, Windows, and Android. I am using conversations legacy on Android right now because that works with how ejabberd is setup on my machine, and how ejabberd is setup works with the clients other people I want to talk to are using. I gave up using XMPP on a laptop since I'd get encrypted messages with the wrong key sent to other devices except whichever one I'd used most recently to send a message with. I never did manage to set sending images working at faster than ~2KB/s. It is like I am back in 1996 and using AOL IM, but worse.
- mbirth 6y agoI’m using ejabberd 20.07 on a Raspberry Pi 4, Conversations (paid) on Android, Monal on iOS and macOS and Gajim on Windows and Linux (sometimes macOS, too). OMEMO works fine between those. So do attachments/file transfers (not slow at all). Also MAM/history. To have OMEMO working between multiple clients but the same user, make sure they’re all running and send a message from each client to your OMEMO contacts so they learn all your different keys and send answers encrypted for all of them. In regards to Matrix. There’s only one reference client at the moment. But once other clients emerge and the protocol gets extended, they’ll probably have the same fate in that many 3rd party clients won’t support all features.
- Arathorn 6y agoJust for the sake of accuracy, Matrix really does have a lot of impressively feature complete clients these days - Element, FluffyChat, Weechat, Mirage etc (and technically Element is 3 entirely non-overlapping codebases on web/desktop, iOS & Android). And the protocol is busy evolving; with MSCs landing on some clients before others (e.g. FluffyChat implements BlurHash based image thumbnails but Element doesn't yet). So far we haven't had massive fragmentation though, because the spec itself is monolithic - it's completely unambiguous on what the official recommended featureset is at any point in time. Anything beyond that is experimental, and there's no guarantee that it will work compatibly at all. So when something like blurhashes turns up as a random community spec change proposal (https://github.com/matrix-org/matrix-doc/blob/anoa/blurhash/proposals/2448-blurhash-for-media.md https://github.com/matrix-org/matrix-doc/blob/anoa/blurhash/...), some clients go and implement it, and once proven it gets baked into the official spec.
- im3w1l 6y agoxmpp works, but barely. Some people will insist on you talking to them using otr, and other will insist on omemo. Multi-device kinda sorta works sometimes. If you have program 1, the other person has program 2 on phone and program 3 on computer, and the issue is also potentially with the configuration of server program 4 or 5, then it starts to get complicated when issues inevitably crop up. Some of which lead to messages just silently going missing, and you mistakenly think that your friend is ghosting you unless you have an out-of-band way to communicate. Conversations doesn't display when your friends are online or not, which is fine if they are almost always online but if they are offline a lot, then depending on the server configuration and the phase of the moon, messages sent while offline go missing (silently of course). EDIT: I think the only setup I could whole-heartedly recommend non-technical friends is Conversations talking to Conversations with Prosody default-settings server(s).