News for hackers. Stuff that matters.
Re:On the Fate of XMPP/Jabber by lxgr on Tuesday February 06, 2024 @08:40PM (#39283433)
There's a big conceptual distinction between protocols when it comes to group chats/"rooms":

IRC and (by default/without extensions) XMPP rooms are ephemeral and have no "scrollback" for new joiners. This makes them feel a bit more like personal conversations, which can be both good and bad depending on the context. The same is true for WhatsApp, iMessage etc. group chats.

By contrast, Slack/Discord/Matrix have "stateful rooms": Scrollback is visible to everybody joining, at least by default. While I'd consider this a downside in some cases, this is what people have become accustomed to, and any potential alternative will be judged by that.

The former follows natural from the federated, mostly ephemeral message-passing nature of IRC and XMPP; the latter needs conscious effort to do well in a federated environment.

Re:On the Fate of XMPP/Jabber by MattJ100 on Wednesday February 07, 2024 @01:56AM (#39285383)
XMPP "without extensions" doesn't even have group chats :)

A bit of a tangent, but... "XMPP without extensions" is generally not a useful thing to discuss. It's not like XMPP was ever expected to be used without extensions (for IM, at least, which is one of XMPP's most popular use cases).

The core protocol was standardized at the IETF as an RFC. The rest was always governed by the XMPP Standards Foundation.

Server-side message archiving is part of the XSF's compliance requirements for XMPP-based IM, and it is implemented and deployed everywhere, so who cares about "XMPP without extensions"?

These are effectively different layers. E.g. Linux/POSIX is not incomplete just because it doesn't come with a spreadsheet application. However such functionality is expected by most users and provided by most distros.

The modularity is what has allowed the protocol to evolve over the years, rather than being frozen in time (something that happened to IRC, and that IRCv3 is working to fix).

Re:On the Fate of XMPP/Jabber by lxgr on Wednesday February 07, 2024 @08:36AM (#39288358)
I know how XMPP is structured in a very modular way, but is there actually a (widely supported) extension for server-side multi user chat archives at this point, i.e. one that allows “Slack-like semantics” for rooms?

The ones I’m familiar with only archive direct messages, not group messages (or at least not those sent before joining a given room), and going offline on the last client means leaving a room.

Re:On the Fate of XMPP/Jabber by MattJ100 on Wednesday February 07, 2024 @09:09AM (#39288747)
Querying past messages works on both rooms and accounts (XEP-0313). You can filter by id (e.g. "catch up" since some previous message) or by time range (useful for a history browse UI).

It has been this way for a long time... I quickly checked the repo history, and Prosody's code for this dates back to 2012.

Re:On the Fate of XMPP/Jabber by lxgr on Wednesday February 07, 2024 @09:17AM (#39288829)
But when I go offline on my last device, I leave the room, right?

Can I query the room’s message archive after rejoining? And is there a solution to not display me as having left and rejoined the room to others every time this happens, i.e. persistent room membership?

Re:On the Fate of XMPP/Jabber by MattJ100 on Wednesday February 07, 2024 @09:53AM (#39289273)
Yes, of course you can query the messages - that's why the feature exists, and what XMPP clients use it for. Otherwise we'd be missing messages all the time.

I think these days the term "leave" is a bit vague, and it's important to note that what you're talking about is pretty much just down to the UI that clients used for presence in the past. Most clients no longer show presence in that way, because it has been noisy and useless now for many years, and because mobile connectivity is the norm and "offline" does not mean "offline" (thanks to push notifications). Instead they prefer to show membership info instead (which is persistent).

Most platforms (Slack, Matrix, etc.) also support presence and membership as separate things. But (as far as I know) they never rendered presence the way you describe ("X has left the chat"), as they were created after the mobile era was already in full swing.

Re:On the Fate of XMPP/Jabber by lxgr on Wednesday February 07, 2024 @01:06PM (#39291935)
Ah, I didn’t know that membership in MUC was persistent in XMPP! Reading the XEP I got the idea that presence (definitely transient) and membership were the same thing in the scope of MUC.

Given those two things, it seems like MUC really does support a Slack-like experience these days. That’s great – it definitely didn’t when I last used XMPP extensively!

(Rest in peace, Google Talk XMPP federation – for a while, I could talk to all my friends on Jabber between that and MSN/ICQ bridges.)