I am wondering if there is a chat program that works locally when the internet is out but still be connected to from the internet. I know this will be something that is self hosted.
Bonus points if I can set it up on the raspberry pi that is running Home Assistant.
Briar works completely offline as well as online and has Android apps. I believe iOS apps are coming soon, although unsure of the timeline. https://briarproject.org
The pros are that there’s zero setup or “self-hosting” required. Just install the app and it works. From their site:
- Peer-to-peer encrypted messaging and forums
- Messages are stored securely on your device, not in the cloud
Connect directly with nearby contacts - no Internet access required
- Free and open source software
Plus briar will work with no internet, and just mesh Bluetooth for message passing instead.
Sadly I need an ios app, as well as android. Someone else mentioned Berty which seems to be similar but with android and ios apps.
Berty is an open source messenger app that works with or without an internet connection, and has Android and iOS apps. As it’s peer-to-peer there’s no server component.
Have you used it alot? What’s the experience like?
Not a lot but we have used it. It’s beta quality. You need to be in Bluetooth range if there’s no internet - and it works. Good for tent-to-tent texting.
This seems to what I want. Thanks! Now to get everyone in the house to switch to it from facebook messenger.
I have read a bit about the Matrix protocol and once tried running the Synapse home server and Element front end which is also available as Android/iOS apps.
Matrix is a federated chat protocol in the same way that ActivityPub is a federated social networking protocol. You can host your own Matrix compatible server and chat with people on other servers.
Recently I watched a video about their recent progress in which they showed a chat working peer to peer over bluetooth low energy when devices did not have access to the internet. Writing this, I just watched another P2P demo video where they show off this functionality once again.
This means you can use your own chat server as usual when
- You have an internet connection on your device
- Your device is on the same network as your server
- Your device can find a P2P route to the other users through nearby bluetooth devices running this software allowing your device to route through other devices network and bluetooth connections
Take all of this with a grain of salt as I am not completely sure I understand how the Matrix services work. I hope this helps.
Here is an alternative Piped link(s): https://piped.video/eUPJ9zFV5IE
https://piped.video/wdy3lUxYxuU
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I’m open-source, check me out at GitHub.
I did some looking into matrix but couldn’t find if it would still work when the internet is out.
Not really. You need to use a domain (correct me, if I’m wrong, but I think IP adresses don’t work) to connect to the homeserver.
In theory you could setup a DNS server in your nezwork, which resolves this domain with the local adress and then it might work, but I’m not sure if the homeserver would like that.
Also I want to add, that I use TeamSpeak, which works perfectly globally and locally, but it’s for voice chat.
That should work fine, actually. As long as the domain resolves (whether through an upstream DNS resolver or through a DNS entry in your router’s DNS table), Synapse users can exchange messages between each other.
I have read of several people who have set up synapse on ships that don’t see stable internet for weeks at a time.
There are some sync issues with multi server chatrooms if the connection drops out intermittently, but how much of a problem that is depends on how long the internet goes out.
One big challenge is maintaining TLS certificates without internet. Let’s Encrypt will give you certificates valid for three months, but if you’re offline for longer you’ll need to spend money on a certificate.
You don’t need HTTPS to talk to the server (HTTP works fine if you accept the risks), you need it for when your internet comes back if you’re talking to other servers. If you only use Matrix as an internal chat server without any external chat (i.e. for your home network, for a company, etc.) you don’t need to bother with HTTPS unless you want to.
Aah, yes. You’re right there. You will require a domain for it to work. Although, you could still have it work with a local DNS server for internet outages. You would still be able to chat locally in that case. But yeah, this does not seem like what OP is looking for.
I have used Rocket.Chat before, their free version supports most of the features they have, and the web client is good. You can setup webhooks in and out for different automations you may want.