Question: self-hosted instant messanger.
from Bahnd@lemmy.world to selfhosted@lemmy.world on 08 Nov 19:30
https://lemmy.world/post/21791860

Question: What do people in this community recommend for self-hosted instant messanger projects? I host a VOIP service for my nerd herd and due to recent events i’m attempting to migrate out groups chats off of the major platforms (Discord, Google chats, Slack, Etc.) as well.

There are a few notes that were requested/requirements.

I am doing my own digging but wanted to hear the communites opinions on some of the projects that came up in searches.

I appreciate peoples opinions and recomendations on this topic.

#selfhosted

threaded - newest

sk@hub.utsukta.org on 08 Nov 19:37 next collapse

I've been using a self hosted matrix server for the apst year, no complaints so far and since a lot of technical rooms already exist on other matrix servers, interoperability is a big plus. Also element mobile app is pretty decent but there are plenty of other alternative apps too.

gregor@gregtech.eu on 08 Nov 20:46 next collapse

Yes, absolutely. Might be a bit difficult to set up, OP if you have any problems you can contact me at @gregor:gregtech.eu and I’ll help out (:

Apollo2323@lemmy.dbzer0.com on 09 Nov 02:07 collapse

The new Element X app is awesome and it support the new Matrix 2.0. I highly recommend Matrix

ptz@dubvee.org on 08 Nov 19:41 next collapse

Matrix also is close to checking all the boxes, but it wasnt clear how it works on mobile (Element seemed like the mobile app that was recommended).

I run Matrix, and it’s pretty great. Though I would recommend Schildichat over Element for the mobile app. I had all kinds of issues with Element Mobile somehow screwing up the E2EE keys for my other sessions. Nothing seemed to fix it except removing my account from it completely. Switched to Schildichat and haven’t had that issue since.

scrubbles@poptalk.scrubbles.tech on 08 Nov 19:59 collapse

Seconded with Matrix. All I’m wanting for it is for someone to make a Discord/Revolt UI frontend for Matrix 2.0 and it’ll be a drop in replacement

poVoq@slrpnk.net on 08 Nov 19:42 next collapse

Why wouldn’t XMPP work? It fulfills all your requirements and has nice modern apps, especially for mobile. Definitely better than Matrix.

The easiest to get started with it would be setting up a Snikket server (Prosody based, but pre-configured for small private groups).

callcc@lemmy.world on 08 Nov 22:13 collapse

I ran an XMPP network based on prosody and used snikket on android. Can recommend!

wildbus8979@sh.itjust.works on 08 Nov 19:43 next collapse

You say XMPP doesn’t work for the request, why not?

Bahnd@lemmy.world on 08 Nov 20:01 next collapse

My last expirence with XMPP is very dated, my old groups in EvE online used it and it was perfect for its role as a sort of internet pager to summon the horde of nerds. Im aware there are many new related projects, discounting it seems a bit premature now, if you have any recomendations I would love to read their docs.

My concern is that I would have to pitch what ever project we landed on to a semi-technical group of gamers with a handful of admins to run things. (Trying to avoid a platform that gen-z would complain about, and they already roll their eyes at me when I mention spaceships and spreadsheets).

poVoq@slrpnk.net on 08 Nov 20:47 collapse

XMPP clients for Android are great, for iOS a bit less so. On Windows / Linux Gajim is probably the best option right now. JoinJabber.org has a good list of up to date clients (do not use Pidgin, it’s horrible and super outdated).

In general the main downside compared to Discord is the lack of voice-channels. 1:1 voice or video calls work great with the Android clients and group calls are partially supported in some desktop clients (that is currently very active field of development for XMPP clients).

BearOfaTime@lemm.ee on 09 Nov 00:26 collapse

Snikket seems to be it for iOS. But it does work pretty well, I haven’t run into any issues with it.

For Windows well, nothing does voice as far as I know.

poVoq@slrpnk.net on 09 Nov 00:34 collapse

Voice call implementation in Gajim is only waiting for an upstream improvement, it is already working otherwise. Sadly upstream seems slow in fixing this.

You can try this unofficial Windows version of Dino though, which supports calls: github.com/mxlgv/dino

Edit: and there is of course always Movim, which works fine in most browsers and supports 1:1 calls.

BearOfaTime@lemm.ee on 17 Nov 16:14 collapse

Cool, didn’t know about Dino, thanks!

Andres4NY@social.ridetrans.it on 08 Nov 20:22 collapse

@wildbus8979 @Bahnd Yeah, XMPP checks all the boxes. That said, I don't know how well encrypted group chats (MUC) work with various clients.

Also, while message contents are encrypted, metadata is not. Self-hosting ameliorates that, but if your "self-hosting" involves a VPS or whatever hosted by a giant corporation, then that's something to be aware of.

BlueEther@no.lastname.nz on 08 Nov 19:54 next collapse

I’ll be intrested in the results of this thread

nimble@lemmy.blahaj.zone on 08 Nov 23:33 collapse

Same, I had already considered self hosting matrix but this will help find a few more options

surfrock66@lemmy.world on 08 Nov 20:17 next collapse

It’s probably more than you are looking for but if you are already looking at self hosting things connected with NextCloud, use NextCloud Talk. We use it for the family and it is great.

DrDystopia@lemy.lol on 08 Nov 22:42 collapse

Last time I checked, Nextcloud Talk android app simply refuse to implement any sort of pull system. If one’s using a google-less phone one needs to set up a push system on top (I’ve never managed to get the NC push system to work properly). There’s even a separate “Nextcloud Notification checker” app on F-Droid to remedy the problem. It’s all a bit silly.

mranderson17@infosec.pub on 08 Nov 23:44 collapse

The really hilarious thing to me is that the NextPush app (unified push provider that can be run on your nextcloud server) is unsupported by nextcloud talk. But it is supported by a bunch of other competing applications.

slacktoid@lemmy.ml on 08 Nov 20:18 next collapse

+1 for matrix. Also check out schlidichat which is a nice client for matrix forked from Element

DarkSirrush@lemmy.ca on 08 Nov 21:09 next collapse

Its very fun getting a turtle notification too.

slacktoid@lemmy.ml on 08 Nov 21:37 collapse

This… This is half of it haha

themadcodger@kbin.earth on 08 Nov 21:14 collapse

That's what I ended up doing for my group that wanted off Discord for privacy reasons. Mobile works fine and I'm also using Schildichat, though I think most of my group is using Element.

slacktoid@lemmy.ml on 08 Nov 21:37 collapse

How’s your experience been?

themadcodger@kbin.earth on 08 Nov 21:49 collapse

I haven't really had any problems with it. We've been using it regularly for text, but mostly for voice chat during games. It's a lot to set up, but I'm using someone's ansible setup so I just run a few commands and it does its thing and updates in the background.

AbidanYre@lemmy.world on 08 Nov 20:22 next collapse

SimpleX is pretty good for person to person chat I’ve heard it doesn’t handle large groups very well though.

Mattermost is an easily hostable slack-like option.

beerclue@lemmy.world on 08 Nov 21:04 next collapse

Look into mattermost. Quite powerful, and free.

timbuck2themoon@sh.itjust.works on 09 Nov 00:06 collapse

It is BUT you are limited to their test servers for mobile notifications and they honestly suck. It’s a coin flip whether you get them. And if you want better you have to set up your own container system like them with firebase and Apple Dev ids.

I like it still but for a Greenfield project I’d probably try matrix 2.0 on synapse with element x as the mobile app.

nhowell77@sh.itjust.works on 08 Nov 21:14 next collapse

I host Rocket.Chat for my wife’s business. The free self-hosted version now allows up to 50 users before having to purchase a license (was 25 prior to the version 7 update). If you kick a user you simply deactivate their account and regain the user slot. Rather than deleting a user completely which would additionally delete any messages they’ve posted.

Easy to host, easy to upgrade. Mobile apps both IOS and Android work well.

I wanted to use Zulip as I felt the interface was cleaner. But the 10 user limit was a deal breaker.

troed@fedia.io on 08 Nov 21:14 next collapse

You want Matrix. Synapse if you intend to host for others, Conduit if you just want to host for yourself. There are quite a few different clients but I do indeed use ElementX on mobile.

farcaller@fstab.sh on 09 Nov 10:05 collapse

I’ve been having sync issues with conduit lately, takes minutes for the mobile app to catch up. No way to purge old media, or to use something S3-compatible for its storage either.

Also, element x doesn’t support spaces, so if you want to bridge other chats into matrix they all are going to be messed up together.

I like matrix as a concept, but both servers and clients are in a bit of a shitshow state (same as xmpp was years ago).

Schlemmy@lemmy.ml on 09 Nov 14:26 next collapse

Spaces will come but I miss them too. Threads are another feather that I miss on Elemen X

MangoPenguin@lemmy.blahaj.zone on 10 Nov 15:13 collapse

It’s kind of depressing how fragmented the Matrix ecosystem is, a bunch of clients but none seem to support everything together, servers that are slow and bloated, and don’t support super basic maintenance tasks like cleaning up old stuff, etc…

farcaller@fstab.sh on 10 Nov 21:44 collapse

It is pretty bad. After this thread I tried using Element X again only to learn that its “favorites” aren’t the same as Element’s “favorites” and more so you can’t set someone a favorite in E-X, at least not of your server is Conduit. It’s just silently ignored.

sunzu2@thebrainbin.org on 09 Nov 00:27 next collapse

for matrix check out element X, which is X is the modernized version for matrix 2 protocol

they have a server side software you can selfhost too

Schlemmy@lemmy.ml on 09 Nov 14:24 next collapse

Matrix works great. Element X is my favourite client.

geography082@lemm.ee on 09 Nov 14:46 next collapse

WinPopup

dingdongitsabear@lemmy.ml on 09 Nov 16:00 next collapse

I deployed RocketChat on two different client installations (didn’t check the licensing you’re mentioning, I’ll have to look into that) and I run a Prosody instance (XMPP) on my own; tried Matrix for a short while and ran away from that mess as fast as I could. anyhow, although the messengers work without any significant issues or downtime, the amount of flak I get from non-tech normies about the client apps is staggering.

the apps just aren’t up to current UX standards. they’re used to Twitter and iMessage and Telegram quality UX, and getting used to these PoC-quality apps - both on mobile and desktop - makes them “feel icky”. I’ve had to intervene on a number of occasions when some of them transferred their business-related comms to other platforms because they just can’t/won’t get used to these apps.

sem@lemmy.blahaj.zone on 10 Nov 11:35 collapse

I’m not sure if matrix will ever be able to overcome this hurdle

Black616Angel@discuss.tchncs.de on 09 Nov 18:34 next collapse

We host a small Matrix-server. The server is for 4 people but barely uses the 2 cores 4GB RAM.

Storage is mostly media, but stayed under 100GB in about 3 years.

We also host a web frontend and use Schildichat as app, but Element X could be better nowadays. Both also have a desktop client.

A big plus are all the bridges. My girlfriend uses WhatsApp, no problemo, there is a bridge for that. That one club only has a signal group? Use the bridge.
One of us uses Fb-Messenger via a bridge. Telegram also works and there are lots more.

The server is also low maintenance. It’s an ansible playbook, that I irregularly run.
It takes around an hour twice a year due to changes in the playbook.

Also matrix is feature rich beyond your requests. I don’t know much about the others, but matrix had emoji-reactions before WhatsApp and has threads inside of chatrooms and spaces which are collections of chats for common topics.
Also polls, sharing current/live location (not bridged to WA), voice messages and stickers.

sk@hub.utsukta.org on 09 Nov 19:09 next collapse

@Black616Angel Also for storage, you can define message retention (1 year or similar) so your storage would also not balloon over time. In my opinion chat is ephemeral in nature.

GhiLA@sh.itjust.works on 09 Nov 23:25 collapse

All that bridge stuff has me interested. I’d just like to put all of my chats in one place. Matrix seems like the solution for that. Just bridge everything lol.

superglue@lemmy.dbzer0.com on 10 Nov 00:52 collapse

Just be aware that many times the service you are bridging doesnt like that you are. As an example, I was bridging solely for Facebook marketplace messages and they constantly were locking my account.

aksdb@lemmy.world on 09 Nov 22:56 next collapse

You could look into prose. The interface of slack/discord/mattermost, built on XMPP, with E2EE.

corsicanguppy@lemmy.ca on 10 Nov 01:36 collapse

Is that the same as prosody.im ?

That’s the one I’ve been looking at. It seems to be easy, but I haven’t had time to look into it fully.

aksdb@lemmy.world on 10 Nov 08:28 collapse

It’s more comparable to Snikket. Both Snikket and Prose use Prosody as server with their own extensions.

possiblylinux127@lemmy.zip on 10 Nov 08:05 next collapse

Probably Matrix

Samsy@lemmy.ml on 10 Nov 10:28 collapse

I would recommend Matrix, tried all others, too. A bonus idea you could take a look at: github.com/balzack/databag