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
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.
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.
[This comment has been deleted by an automated system]