@mattj@floss.social avatar

mattj

@mattj@floss.social

Open-source developer and founder of the Prosody, Snikket and modernxmpp.org projects.

This profile is from a federated server and may be incomplete. Browse more on the original instance.

art_codesmith, to random
@art_codesmith@toot.cafe avatar

Had a random thought this morning.
Why did everyone abandon #xmpp?

mattj,
@mattj@floss.social avatar

@art_codesmith With a literal interpretation, "everyone" didn't - is still actively used by many people, knowingly or unknowingly. Some people use interoperable XMPP services such as Snikket or one of the many public XMPP providers. Others self-host (Snikket, Prosody, ejabberd, etc.). And many more use it unknowingly via WhatsApp, Zoom, MoyaApp, etc.

The problem with the latter services is that they don't interoperate with others, but the EU's DMA regulations are aiming to change that.

mattj,
@mattj@floss.social avatar

@art_codesmith Yep! They just don't like to shout about it 🤫

They want to benefit technically from XMPP without their users benefiting from it - specifically they would rather not allow federation (to keep the walls up around their garden) and not allow users to use/build alternative clients, that kind of thing.

The EU has been working to change this. E.g., it's now possible, if you sign some stuff and meet some criteria, to get official access to WhatsApp's (customized) XMPP API.

mattj,
@mattj@floss.social avatar

@art_codesmith What happened (which is likely what sparked your initial random thought) is that well over a decade ago we all had a collective dream of open interoperable messaging. This was encouraged by Google Talk using XMPP openly and having millions of users. Unfortunately they changed their mind on that openness eventually. That was a big blow to everyone who believed in the dream. But XMPP itself didn't die, and the community and ecosystem is very active.

mattj, to random
@mattj@floss.social avatar

Google have been quietly de-listing apps from their Play store one-by-one for made-up reasons. Today they finally came for Conversations (https://gultsch.social/@daniel/111929074071688694 ).

@fdroidorg doesn't have these problems, and they additionally rebuild from source, supporting reproducible builds (so unlike the Play store, you know the published source code matches what's in the app you download). With their recent enhancements (https://f-droid.org/2024/02/01/twif.html ) I'll be recommending it to more people.

mms, to random
@mms@emacs.ch avatar

What cool things are you doing with / ?

mattj,
@mattj@floss.social avatar

@mms
I made a bridge from to the protocol that pagers use (POCSAG 📟), which at least I think is cool 🙃

The live demo is on display at today if you happen to be there (K building upper floor, in the Realtime Lounge).

We also have a phone with a JID that you can call. I mean a proper phone! ☎️

Going to write a blog post after about how it was all done.

softinio, to Matrix

If I want to add a button to my blog for people to contact me via how do I do it? is there a standardized URI for XMPP I can use or a link to a web client?

Guess what I am after is something similar to what provides eg https://matrix.to/#/@<username>:matrix.org

cc @hund @ChrisWere do you know? Thanks!

mattj,
@mattj@floss.social avatar

@softinio The standard way is to use the 'xmpp:' prefix, which is similar to 'mailto:' for email.

Of course this only works if the person who clicks it has an XMPP client installed already.

For any such link you can replace 'xmpp:' with 'https://join.jabber.network/#' to make a clickable link with some details and instructions.

Relatedly, some servers support generating invitation links (but usually you wouldn't share those publicly): https://blog.prosody.im/great-invitations/
@hund @ChrisWere

malte, to fediverse

Embrace, extend and extinguish. That's was the strategy behind Google's adoption of the open protocol #XMPP, which eventually died from it. And it will be the strategy when Facebook attempts to extinguish the #fediverse via #threads https://en.wikipedia.org/wiki/Embrace,_extend,_and_extinguish For at longer story and analysis, read here: https://ploum.net/2023-06-23-how-to-kill-decentralised-networks.html

mattj,
@mattj@floss.social avatar

@malte
Please don't fuel the rumours that XMPP is dead. It's very much alive! 🙂

As you said, XMPP is an open protocol. It does not depend on entities like Google to keep it alive.

Just like the Fediverse is alive without Meta.

thenewoil, to privacy
mattj,
@mattj@floss.social avatar

@tristian
I can tell you what worked for me, and it will fit into a toot!

I set up a Snikket instance. I'm the dev, so I had to make it first! But it's open-source, you can self-host or use the hosted service.

After that, you generate a multi-use invitation link in the dashboard and send it out (I used email, but it's just a link you can send over SMS/etc.).

I converted 10 family members remotely during lockdown with great success (we still use it today).

https://snikket.org/service/quickstart/
@debacle

badrihippo, to random
@badrihippo@fosstodon.org avatar

Just learnt that (apparently) supports running apps over , but I'm not able to figure out how it works. Anyone used it? :xmpp:

mattj,
@mattj@floss.social avatar

@badrihippo
Monocles has pulled the code for it from Cheogram, where it was originally released. There aren't really any docs, apart from the brief overview in this newsletter post: https://blog.jmp.chat/b/april-newsletter-2023

bacon, to infosec

Kind of interesting. The article doesn't say who the xmpp server belongs to or why it might be targeted.

https://thehackernews.com/2023/10/researchers-uncover-wiretapping-of-xmpp.html

mattj,
@mattj@floss.social avatar

@jabberati
Yeah, it's just an open public XMPP service, so has "all kinds" of users... who generally have no relation to the admin.
@bacon

qwazix, to random
@qwazix@bananachips.club avatar

I'm always amused by the lightweightness of . I'm in the metro with virtually no signal, http can't even transfer headers and times out and I can hold a regular conversation over .

mattj,
@mattj@floss.social avatar
ifixcoinops, (edited ) to random
@ifixcoinops@retro.social avatar

Hey #xmpp folks, is Prosody still the easiest way to self-host a server?

Please, please, please say it isn't

EDIT: use case is I have an Ubuntu box from Hetzner hosting some websites and (soon) a nextcloud, this is what I had set up on my last dedicated server (except owncloud back then) and the new box has Plesk on it and after just a couple of weeks of pressing buttons in Plesk and having it Do It All For Me I've been completely spoiled

EDIT 2: the root of the issue is that Plesk hides your .cert and .key files. Scrambles their names, removes their extensions and dumps them all under /opt/psa/certificates/ not even in different folders for different domains, you'd expect mydomain.com.cert but instead you get scfLios3a, all mixed up in a bucket with the eggs on top, good luck telling Prosody where to look for those buggers

mattj,
@mattj@floss.social avatar

@ifixcoinops Hey, Prosody developer here 👋

We introduced automatic certificate discovery in 0.10.0 back in 2017. It looked for specific filenames (the ones used by certbot and some other ACME clients), but if yours differed , you had to manually configure them instead.

In Prosody 0.12 (2022) we added functionality to scan all files in a directory, looking for suitable certificates and their matching keys, regardless of filename.

(cont...)

mattj,
@mattj@floss.social avatar

@ifixcoinops

From what you describe, it sounds like the automatic discovery should "just work" with your setup now. Otherwise, manual configuration is still possible if you know which files your certificates/keys are in.

https://prosody.im/doc/certificates has the details.

And of course if you need help, we're around and have a helpful community: https://prosody.im/discuss

ChrisWere, to random
@ChrisWere@toot.wales avatar

I'm thinking about getting back into , but my old provider (Snopyta) isn't doing XMPP any more. Does anyone have any recommendations for an XMPP provider? Any hosts active on the Fedi?

mattj,
@mattj@floss.social avatar

@ChrisWere
If you're looking for free public servers, then https://providers.xmpp.net and https://joinjabber.org are decent places to start.

If you're looking for paid hosting, there are several listed at https://wiki.xmpp.org/web/XMPP_Hosting_Providers (my humble recommendation of course being @snikket_im 🙂).

danieldurrans, to Travel
@danieldurrans@mastodon.me.uk avatar

I can never get through the UK e-passport gates without it saying to seek assistance. I told the Border Patrol person this and he said, “ah” and then, “you’ll never be able to do anything about this, but the eGates will never work for you, and I can’t tell you why”.

So I guess my name is on some sort of watch list.

mattj,
@mattj@floss.social avatar

@danieldurrans
I think it's less sinister and more likely explained by poor implementation.

While in a long "seek assistance" queue recently I observed someone try a machine, get told to seek assistance, and then sneakily try again at a different machine. It let them through. I was so annoyed 🙄

garrett, to random
@garrett@mastodon.xyz avatar

I want to like Matrix / Element, but Element might be the worst piece of software I've ever used.

Nearly every day, it either hangs indefinitely or forgets my login info, or some other bug (with most being showstoppers).

The UI is confusing and I have a thousand rooms that I can't get rid of that clutter everything (as I've attended conferences from the past few years in it).

When it works, it's nice and all... but it rarely ever works.

I really want to like it. 😕

mattj,
@mattj@floss.social avatar

@muelli
I'm curious on what you base this, as the community is actually very active in both standards and software development 🙂

You can get an idea of some of the activity at https://xmpp.org/categories/newsletter/

If you have any questions about the world of XMPP, I'm happy to answer them!
@KekunPlazas @garrett

mattj,
@mattj@floss.social avatar

@Revertron
Dino, Gajim and Beagle are all desktop XMPP clients used daily by many people.

Of course "decent" is not something you can measure objectively - everyone has their own requirements and preferences in practice. Just as some people don't consider Element or DeltaChat "decent".

But that's why interoperable open ecosystems are essential: people can choose software that works for them without sacrificing the ability to communicate with their contacts.
@muelli @KekunPlazas @garrett

mattj,
@mattj@floss.social avatar

@chucker
It got a lot of love, the team work hard on it. Are you a designer? Maybe you can offer your services.
@Revertron @pettter @muelli @KekunPlazas @garrett

mattj, to random
@mattj@floss.social avatar

Just for the record: what Google/FB did to was not 'embrace, extend, extinguish'. I bring this up because people are focusing on FB developing a divergent protocol/extensions. Maybe that's a valid concern, but it's unrelated to XMPP.

While Google Talk was actively developed, Google folk actively participated in the community. In fact they contributed important extensions such as Jingle, the protocol we still use today for audio/video calls in XMPP, and other bits and pieces.

(cont...)

mattj,
@mattj@floss.social avatar

The big problem was simply that these were the largest nodes on the network. They had so many users, they had nothing to lose by putting up the walls and shutting out what was (to them) a small minority.

The answer to this problem is nothing to do with the protocol, but just ensuring that the network is diverse and distributed, not centralized in one or two seats of power. Now how to actually do that, is a harder question. But it's the one we should be discussing.

mattj,
@mattj@floss.social avatar

For example, when I started work on Snikket, a project to make XMPP easier, I deliberately chose to focus on helping people establish small servers, based on existing social relationships. I specifically did not want to become just another large public service, partly due to what happened with Google Talk.

A large network of small nodes is more robust against disruption. It's what any healthy decentralized network should be aiming for. Applies to XMPP, Fediverse and the internet in general.

mattj,
@mattj@floss.social avatar

And to circle back to the start of the thread: if we can avoid reaching this super large node situation, the ease of an 'embrace, extend, extinguish' attack on the network protocol by such nodes is diminished significantly.

mattj,
@mattj@floss.social avatar

@ChrisWere That's why I focus on existing social groups for Snikket. My family Snikket server is of value to all of us. If I was running the service for strangers, I'd be less inclined to keep it running when times got hard. But yeah, I hear you.

Note though, large services are far from immune to shutdowns. Happens to commercial and non-commercial services all the time.

Anyway, I did spend quite some time working on https://docs.modernxmpp.org/projects/portability/ to try to improve the story when a service goes away.

mattj,
@mattj@floss.social avatar

@evan
Hello! 🙂

Thanks!

mattj, to random
@mattj@floss.social avatar

In a few weeks I'll be talking about and building open ecosystems, at FOSSY in Portland, Oregon: https://2023.fossy.us/

As well as an entire track of XMPP talks, there will be a booth and various members from the XMPP community present. It's been a while since the last US XMPP get-together, so I'm looking forward to meeting lots of friendly faces, old and new 🙂

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • mdbf
  • ngwrru68w68
  • cubers
  • magazineikmin
  • thenastyranch
  • rosin
  • khanakhh
  • InstantRegret
  • Youngstown
  • slotface
  • Durango
  • kavyap
  • DreamBathrooms
  • megavids
  • tacticalgear
  • osvaldo12
  • normalnudes
  • tester
  • cisconetworking
  • everett
  • GTA5RPClips
  • ethstaker
  • anitta
  • Leos
  • provamag3
  • modclub
  • lostlight
  • All magazines