Is it ok? Is there something else you recommend instead? I tried nextcloud talk and it was pretty bad. Jitsi was ok but self hosting it looked complicated. FOSS only, of course.
XMPP is absolutely the best option if you don’t care about metadata protection.
XMPP does video chat, or at least voice? What clients do you recommend? Linux, android, and iphone are all of interest. Thanks.
On iPhone, I recommend Monal.
Dino and Conversations. Some don’t have OEMO so be careful. And yes it has video chat.
Thanks, I see conversations on f-droid so will try it. I don’t see Dino there but that’s ok. I’ll look up what OEMO is.
Dino is on desktop. OEMO is XMPP’s implementation of the double rachet.
dino is a gnu+linux software, built with gtk4. If you’re using windows then the option is gajim, which in order to support omemo needs a plugin, though I can’t tell much more than that about it since I can’t even recall when was the last time I used windows.
That said, conversations has one important setting if syncing devices, which is indicating that the client won’t delete messages, the server will. Not sure why that is not the default, I guess statistically most xmpp users just make use of conversations and that’s it. The other important setting is configuring security for omemo always. Dino doesn’t need any setting for letting the server delete messages (it does when there’s no pending device to be synced) and doesn’t offer that option, and at the moment the user must be careful and set each conversation to be secured by omemo with no exceptions, but it’s already merged on master, and waiting for a new release, the option for omemo always, as on conversations.
That said, using xmpp doesn’t imply not having jami installed and keep trying it. Who knows, maybe you like it and it works fine for your purpose, and you decide for it to be you main messenger application.
How about Movim ?? It’s an XMPP-Based Social-Media/Microblogging platform
Interesting, I’ll take a look at it, thanks., But I’ve been particularly interested in Jami because it runs on multiple platforms, is on F-droid, and is a GNU program.
Why the fascination with GNU ?
I care about many things related to encrypted real-time communication, including what security engineers recommend (since their judgements probably incorporate things I probably don’t even know about or understand), so I don’t think XMPP is the best option for me.
https://soatok.blog/2024/08/04/against-xmppomemo/ https://soatok.blog/2024/07/31/what-does-it-mean-to-be-a-signal-competitor/
I use Jami and love it. If you want to use it on a de-googled phone you may not get live notifications though, which is annoying if you want to use it for calls. The simplest solution is to allow it to run in the background but it also allows you to use selfhosted push notifications which is cool. I just let it run an accept the hit to to my phone’s battery. Jami is fairly easy to use and looks friendly too, which is helpful for getting non-technical friends to join you on it.
I struggled with Nextcloud Talk too.
Highly recommend Jami 👍
Just so you know you can get push notifications on Jami. Jami has been supporting unified push notification for a while now, but it’s opt-in, some might not opt for it considering reducing privacy a bit, as some actually disable the proxy and some phone specific feature intending to prevent battery exhausting too fast.
For unified push support you can take a look at jami’s article about its unified push support. I use
ntfy
BTW.But isn’t UnifiedPush libre & privacy-respecting enough ?
It is open source, which is good, but ultimately it depends on the service provider as usual, what it logs and for how long. The good thing, is that by design there’s not much which can be collected.
But for a mechanism that is supposed p2p distributed, unified push, their proxy stuff (which also helps reduce battery usage), make the app not such p2p, but the gain in battery life might be your priority. DHT is as well a point of gathering several connections, and also to collect metadata, but to be honest, DHT is so good for this purpose, that I don’t complain.
The thing is that on the phone by default you don’t get a pure p2p experience, which is BTW really hard, as requiring both ends being present if pure p2p, and it’s really hard to actually contact the other end at any time. Although if wanted, jami can be configured as such, except by the DHT part I believe.
I’m starting to wish I had an account on Lemmy.ML you guys are based & badasses (But that’s a topic for another day)
I still wish they didn’t check for Unique usernames, the DHT should be enough & the username should be a supplement that can be edited later
They don’t, I mean registering your username/basename is not a requirement, they chose the registration as the default to make it easier to be found. But you can get away with not registering your username/basename and instead exchange with your contacts you ID number, and with that besides able to choose whatever username/basename, there’s no central directory to find you, which is good depending on your use case, but the Jami guys are right to say that makes it virtually impossible for others to find you and establish a conversation unless you exchanged somehow your ID numbers, but that’s not actually finding, :)
That option is a one time choosing, when creating the account though.
I do !
works pretty well on both AOSP phones and gnu+linux desktops. Sad thing though is that I don’t like using flatpak, and I prefer distro native built software, and on Artix/Arch, there are times where the version between the distro version is slightly outdated with regards to the mobile version, and that makes things not to work. This is mainly an issue ever since jami decided to stop supporting the gtk client on the desktop, to me the qt experience have been sad. Not sure if someone has forked the gtk client, that would be great.
So I’m using xmpp as my main messenger, and keep trying jami when it works.
I really like the p2p approach from jami, and also the way they care for those with no huge batteries phones, given they added support for unified push notifications, which can be of course avoided if required for extra privacy. Given my use case, I can’t turn jami into my main messenger yet, but I keep trying, :) Meanwhile xmpp is there for me.
You can install/update Jami from their official repository. The instructions are a bit buried on their website but they’re there. I also avoid flatpak!
Thanks, that is helpful. Have you tried building from source on the desktop? Right now I’ve only used the fdroid apk’s. It works on one of my phones (Android 14) but not on the other (Android 7).
Are you sure the phone it doesn’t work on is older than android 7? According to its f-droid jami URL its latest version as well as two more also documented there, they all work on android 7 or later.
I use LOS4uG, and I’m currently on android 14, so no need to build jami myself. Can you enable “unstable updates” on f-droid’s “expert mode”? Perhaps then you get latest app, and that one works better. Otherwise you can report an issue to the android client, and perhaps you get guidance from them. You can also use their forum to ask questions. I have filed issues only so far.
I’ll see if I can try that stuff in the next few days but it’s my old phone that I don’t use much anymore.m, and I have some RL stuff going on. Thanks. Yes it is Android 7 for sure.
Element is pretty good
I found it to be inconsistent about receiving messages on Android.
Having good luck with SimpleX at the moment.
I recommend Peer Calls as an alternative. Peer Calls uses peer-to-peer communication similar to Jami. You can check out Peer Calls on Github for more info.
So, in short, the things I really like about it:
- Simple to selfhost - Only one Docker container with no dependencies (database, storage, etc.) and you only need to forward HTTP/S traffic.
- Lightweight - You get voice and text chat; screen and file sharing. All of it directly P2P.
- Private - Selfhosting the signaling server will grant you control over the only step which requires a central server during the WebRTC connection process.
- No accounts - Just start using, no accounts are involved.
The only issue I have with GNU-Jami <u>is them checking for Unique Usernames</u> it’s annoying & problematic<br> You have the DHT (“Distributed Hash-Table” based on Ethereum) & that should be enough<br> why even check for the uniqueness of the attached username ?<br> The DHT should be the ID & names need to be detachable from it<br> & we can’t even edit the username once registered
Otherwise it’s high-quality Libre/Free-Software but with room for improvements
I tried to use it, but I couldn’t get it working (I couldn’t receive any messages, and neither could my brother). In the end, I opted for Matrix instead.