Hello,
I’ve been self hosting Nextcloud for the last half a year, and my family has been using Nextcloud Talk to communicate. However, as cool it is overall, we suffer from a lot of missed messages. I’ve been keeping an eye on (and contributing to) the Android app, but even with all the updates, it seems like they can’t quite figure out the issue with notifications not appearing consistently. My wife is fed up, so I’m looking for alternatives.
It seems like Matrix is the next logical one to try, but the Android apps have pretty poor reviews. A lot of the self hosted messengers also seem to be more like Slack replacements, rather than focused on family & friend use.
Has anyone had a good experience with a self hosted messenger for family use?
Thanks!
@anakin78z We use xmpp (prosody on the server; a mix of conversations/cheogram/dino/snikket on our phones and laptops). We’ve got a family chat where the kids share the latest memes, and we message back and forth. We do also have signal (or in my case, Molly) installed, but don’t use it that much. My wife just switched phones and signal was unable to transfer stuff from phone phone to the other - in general I find signal annoying to use.
@anakin78z I still have to use Matrix for work. The clients suck (literally every single one I’ve tried, and I even briefly maintained Neochat for debian) and I routinely get key errors.
That’s pretty cool that you use Matrix for work!
Thanks for the info. My wife and I tried Signal a while back and didn’t care for it.
I’m trying to get xmpp going today, even just as a test. 🤞
My wife and I tried Signal a while back and didn’t care for it.
What about it didn’t you like? I have no investment in Signal, my curiosity is just piqued since my wife and I use it.
It wasn’t one specific thing. We were switching from Facebook Messenger, and found ourselves not wanting to use it all that much, often falling back to Messenger. For me, personally, I also didn’t like that it didn’t have a web client.
Fair enough. Signal does ship desktop clients for Windows, Mac, and even Linux; I’m actually using the Linux desktop client to chat with my wife right now.
It’s something 🤷
https://snikket.org/ works well with XMPP under the hood.
snikket for 2 years now. love the software!
Also snikket for xmpp
I’m using matrix for years with my wife and my mom, never really had issues, but maybe my requirements are not that high.
The fun one is host an OSCAR server and use AIM.
I’m hosting a matrix/synapse server and it’s been pretty great tbh. I use this ansible project to manage installation and updates for me and it’s been fairly painless
I’ve been doing research on this and came down to two.
- simplex
- delta chat
simplex won because of the robust encryption and selfhosted option.
a close contender was stoneage. I liked all it took was an S3 bucket. I didn’t like that it hasn’t been updated in 3 years.
SimpleX is going away I thought. Any reason you don’t want to use Signal, or setup XMPP/Jabber/Snikket/Prosody, etc.
signal has privacy problems.
xmpp/jabber/snikket have encryption and security problems.
from what I can see simplex has everything I need.
- selfhosted
- e2e encryption
- forward security
- routinely maintained
- does not require user IDs
My hesitation to using simplex is the selfhosting aspect of it. I’ve been researching the simplex protocol (SMP) and have been thinking out ways to develop a serverless version of it, that way you don’t get charged for something that’s not being used if you host it in the cloud.
anyway, just my 2¢.
Try Simplex on Yunohost. I mean, it’s about as clean/quick as can be iirc. Simplex has the lead in security, but I recall the app stating they couldn’t keep servers funded and are shutting down. So you might need to run your own to be on the safe side.
Signal had privacy problems?? Maybe using Google play notifications? I download the apk to be Google free, works on my lineage OS just fine without micro g.
XMPP, if you’re all within the same ecosystem vs SMS or RCS chat (which only carriers services support), it’ll use OMEMO encryption and is e2e encryption. I host my own instance to have a little extra control. And that’s on top of everything else secure about it. Anyway, I believe you can enable traffic over Tor for XMPP, but I do not have that bc it breaks voice calls.
Signal had privacy problems?? Maybe using Google play notifications?
I’m not a fan of having my personal identity tied to it. last I checked signal still requires* a phone number.
looks like I might have been wrong originally, but it looks like signal actually does fwd secrecy as well as post-quantum encryption.
keep in mind I’m replacing telegram. I have put off moving for some years but I have the itch to replace it now. simplex also has the closest feature-pairity to telegram out of all the messengers on that list.
also I’m building and hosting this for very nontechnical users. if they heard tor they’d think it was the “darknet”.
my goal is
- keep it secure
- keep it private
- keep it simple
I’m not sure what the problem with the android version of Element X might be, it works perfectly for me and my wife. Voice and vid work fine, but that’s also using the matrix.org server. YMMV with your own self-hosted server, I have one for my agents but I haven’t used voice/vid with it.
And yah, I had high hopes for NC Talk, but it’s not worth the trouble even if you provision a STUN/TURN server.
I like the idea of matrix, but I wouldn’t recommend it yet. Maybe after a few more years if the ux improves.
Android notifications are notoriously difficult to get right. May I ask how is Nextcloud Talk currently implementing notifications? Is it through ntfy, a background service, or Google’s Firebase? Have you allowed background usage for both the push app and the chat app?
I use Matrix with Continuwuity and Element X, and it’s doable most of the time except for small bugs. If you disable federation, the resource usage should be minimal too. But it also requires a third party for push service which can be unreliable.
On the XMPP side, there is also Snikket which you could look into. It offers both a server (running modified Prosody) and a mobile client (modified Conversations). XMPP can run as an efficient background service on Android, so it’ll receive in-band notifications.
Regardless of options, one of the main problem I’m aware of is that Android variants tend to overkill various background app, leading to missed notifications. I think it’s better to debug on that aspect as well
I believe Nextcloud Talk uses FCM for notifications. The issue doesn’t seem to be on the FCM side, it’s the client marking messages as read incorrectly, or not notifying because it thinks it’s running in the foreground, etc. They’re definitely working on these issues, but my family has lost confidence in it.
I will check out Snikket, thanks!
I ran Snikket for a while a couple of months ago - notifications in the iOS app were late or never arrived till you opened the app.
But it also requires a third party for push service
not necessarily, you can host ntfy or something else yourself too
Buddy is selfhostig Matrix via Element server suite community edition and using element X on android as well as the normal element app on desktop. Never missed a notification, never
I’ve been using Synapse with Element X (earlier Element) for years. I remember, notifications were a problem some time ago, but it got a lot better. I also have ntfy as notification backend.
With Element X there are finally video conferences possible.
Seconding the XMPP reccomendation- I run Prosody, which has been rock solid and stays up even when other services I run go down. File sharing, E2EE, reactions, voice and video calls- everything you’d expect from a modern messenger. Cheogram or Conversations are great Android clients, and Monal is the iOS client I’d reccomend.
What do you use for desktop?
I wonder why not more people choose XMPP. What do you think?
-
Monal (on a mac)
-
Marketing, sadly , actually works… plus network-effects
-
I use Gajim on Windows and Linux, Dino when I need to call, and Monal on Mac. XMPP is older and less trendy at the moment, and it’s a large, partially fragmented ecosystem- that might hold back mainstream adoption. But it’s the horse I’d bet on long-term.
SimpleX is pretty good if you’re looking for a signal/sms replacement rather than something slack-like
I’ve used XMPP for this before, using ejabberd as the server and Conversations/Monal as the client, it worked pretty well, altho ejabberd can be a bit of a handful to get running initially.
Delta chat seems pretty good, you can easily self host and it’s very lightweight.
I do not recommend matrix, the apps aren’t great, and hosting is a lot to deal with.
Grandma uses Signal, it looks like a normal texting app, nothing special













