Slidge – XMPP bridges
nicoco.fr
nicoco.fr
Slidge even has a hackernews plugin, to be notified of replies to your comments and to re-reply from you XMPP client. ;)
I'm really happy to finally see some modern bridging features integrated with XMPP and compatible with the latest standard (reactions, quotes, status...) !
https://jmp.chat/ https://biboumi.louiz.org/
Edit: also cheogram https://cheogram.com/
* xmpp:slidge@conference.nicoco.fr?join
In their directive, they forgot noscript/basic (x)html interop, and for the messaging protocols, the account creation which is actually a big issue.
> ... EU lawmakers agreed that the largest messaging services (such as Whatsapp, Facebook Messenger or iMessage) will have to open up and interoperate with smaller messaging platforms, if they so request.
Small nitpick, while it would definitely apply to Whatsapp (it is mentioned by name in the press release), I am not sure if this applies to Discord? IIRC it is not a "gatekeeper".
Gatekeeper definition from press release:
> market capitalisation of at least 75 billion euro or an annual turnover of 7.5 billion. To be designated as “gatekeepers”, these companies must also provide certain services such as browsers, messengers or social media, which have at least 45 million monthly end users in the EU.and 10 000 annual business users.
Full press release: https://www.europarl.europa.eu/news/en/press-room/20220315IP...
This looks really ambitious and I hope it succeeds. My main concern is that it's swimming upstream against intrenched monopolies guarded by wealthy assholes. And experience has taught me that's not a recipe that leads to interoperability.
About the full-proprietary platforms like messenger and discord that are actively against alternative client implementations, it's probably going to be hard to keep this working by myself. I chose to rely on 3rd party libs for this very reason. But even if these slidge plugins break, I'm still happy to use my XMPP clients for the more or less opened networks.
I may add a "matrix plugin" [2] if I feel like it someday, but probably after I implement group chat support. Then you'll be able to use XMPP<->Matrix<->some-other-thing for extra over-engineering points. ;)
I prefer XMPP because it's lighter on resources, server-wise at least, and it's managed through a democratic process, which has it upsides and downsides. As someone I like said "democracy is boring, dictatorship works faster".
[1] https://github.com/mautrix/facebook
To be fair, one of the reason I use XMPP and not matrix is that I didn't hear about matrix until after I managed to set up my own server and get some of my entourage to use it too, about 5 years ago or so. Interoperability is the important part anyway, and I'll work on slidge-matrix when I fix/improve some stuff in the existing core/plugins.
Based on their Github profiles, 7 are affiliated with Element (either employee or CEO), 1 isn't
If you believe that private communications are important, you should delete your account on unencrypted services (iMessage, Discord, Telegram, Instagram, Facebook, etc) so that you are not reachable at all via these methods.
Otherwise you personally serve as the honey in the surveillance trap.
Just using XMPP alone is a slight upgrade from those services either way TBH
Someone who won’t install a trivial and safe free app to maintain connection with you is perhaps not as valuable a connection as one might think.
I also have a life to live, and it is important to me that living that life does not make the world more dangerous for myself, my loved ones, and others in society. Surveillance systems do that, so I don’t use them.
That's a pretty radical stance and I respect it.
However, I consider that keeping in touch with people that don't get why they shouldn't use Meta or Google is actually more productive than bubbling myself in a hacktivist bubble. I actually have more chance to get them interested in mass surveillance concerns by keeping in touch than by ghosting them.
Using surveillance platforms makes the world worse, so I don’t.
Reminds me at duckduckgo: makes claims and builds big branding about security but nobody (including me) ever questioned them. (Regarding article not at hand but of course also on HN.)
The first question I would ask: how does Signal finances itself when the service is practically "free"...
For the rest I totally agree: I could also convince some for XMPP/Jabber while at the same time it lets me question my relationship to those I couldn't move. I mean it's not that these days you couldn't install a second app if you already have 50 useless i.e. "coupon" apps installed anyway.
Don't get me started on this. It saddens me to see so much resistance from a lot of my friends that don't even want to try a tiny, privacy-friendly, open-source, non-battery consuming app when they have like 50 attention-stealing spyware apps installed on their phone. Marketing works scandalously well.
I personally think XMPP is superior to signal, being decentralised and with an open governance. For instance, I've not yet seen some cryptocurrency crap being pushed at me on the XMPP side, which I very much enjoy. I wish everybody moved to XMPP, but apparently it's not going to happen anytime soon, so in the meantime, I'll try to contribute to making XMPP the best instant messaging network. When everyone moves to XMPP, then slidge will have no reason to exist anymore, and my evil plan will have succeeded.
Better to consider second order effects. People have lives to live, and connecting with people is the most important thing. You'll actually help more if you DO stay connected and, over time, let them know and offer to help with using a diverse range of communications technology over time.
I've been faced with this choice, more or less, and (in my case) NOT choosing to be a stickler about it (and joining up with people on Discord) has opened up my and their worlds quite a bit.
This is a special case. Which is to say, it's weird that the technology you're trying to get rid of or improve at present still might be the best tool to get it done, but hey.
[1] https://slidge.readthedocs.io/en/latest/user/low_profile.htm...
[2] https://tdlib.github.io/td/
[3] xmpp:slidge@conference.nicoco.fr?join
And thanks, it won’t be till next week as I’m at a festival this weekend, but I already joined (this might be my first XMPP MUC since around 2008) :)
Is using a screen reader a self-bot? Is a non-screen reader Firefox add-on that uses the API a self-bot? What if I write an add-on that keeps track of Discord-specific state via it? What if that add-on exposes an API to read my DMs? What if it exposes an API to send them?
I believe screen readers are OK, but a Firefox add-on using API calls would be considered against their ToS.
I would need group messaging to work, however. Looking forward to that potentially becoming possible some day!
[Wowfunhappy] "hello world"
And not: [TransportBot] "Wowfunhappy: hello world">without anyone on those services knowing I’m using an XMPP client
Slidge acts in a way that (should) make it impossible for your contacts to know you are not using the official app. However, since some services are OK with alternative clients, Slidge does not necessarily tries to hide its "identity". For services that are less tolerant about it, I wrote a quick documentation page with advice about how to avoid triggering their "security" alerts (mostly because they'll see connecting from a data center, unless you host at home): https://slidge.readthedocs.io/en/latest/user/low_profile.htm...
Group messaging is definitely the next big feature I want in Slidge. There were part of Slidge's first iteration, but I decided to postpone them since it was too ambitious for a start. I really want direct messages to work well, and the code to be maintainable enough before I (re)implement groups. You can help by setting up slidge on your server and bug reporting. ;)
* Signal
* Telegram
* Discord
* Steam
* Mattermost
* Skype
Feel free to open a ticket about it in slidge's todo.
https://github.com/zulip/python-zulip-api/tree/main/zulip/in... has a few bridges similar to what you're building that may be helpful references; the Zephyr one is the most sophisticated and the Matrix one is about to be rewritten (https://github.com/zulip/python-zulip-api/pull/765), so those may be useful resources.