My #Matrix server at matrix.platypush.tech is now stable enough to be used for day-to-day activities, and I'm proud to open it up to a wider audience.
The official #Platypush channel (#platypush:matrix.platypush.tech) is open to anyone who wants to talk about self-hosted automation - it now includes a bi-directional IRC bridge to #platypush:irc.platypush.tech.
On top of that, I have added a bunch of integrations and bridges, so now you can use it as your main driver and drop other messaging apps - or, at least, that's what I've done for a a couple of months by now, and I don't feel like I'm missing Messenger or Whatsapp on my phone.
Available bridges (typing `login` on them is usually sufficient to set up a messaging bridge):
- Facebook Messenger: @facebookbot:matrix.platypush.tech
- Whatsapp: @whatsappbot:matrix.platypush.tech
- Instagram: @instagrambot:matrix.platypush.tech
- LinkedIn: @linkedinbot:matrix.platypush.tech
- Twitter: @twitterbot:matrix.platypush.tech
- Telegram: @telegrambot:matrix.platypush.tech
- Signal: @signalbot:matrix.platypush.tech
- Google Chat/Hangouts: @googlechatbot:matrix.platypush.tech
After setting everything up, I have removed all those apps from my devices, and yet I'm still able to communicate with all of my contacts. If this isn't a compelling case for joining the Matrix, I'm not sure of what can make a compelling case :)
This isn't something completely new btw. I have been using for years a self-hosted #Bitlbee instance with several bridges that could get me all the messaging apps bridged to IRC. But IRC is notoriously a not very mobile-friendly protocol, even sending images or other media can be a pain in the ass, not to mention incompatibility issues among different clients. Matrix solved all these issues, and I don't think I'm going to look back.
@blacklight That's pretty cool :D I have almost the same thing on my personal HS (except Linkedin - I deactivated that thing. I kinda want to reenable it just to test the bridge)
I hope you have enough disk space to open your homeserver to the public :P
@surak I've got a physical 10 TB hd connected to my homeserver. I hope it's going to be enough for a while :D
@blacklight I did the same, even though the instance I set up isn't yet open to public registration because it's running with not enough resources for bigger rooms, for example element times out if I join #matrix:matrix.org
also, based on the names of those bridges, you're using mautrix ones, is that right?The only thing that annoyes me about those is that, for almost every app they can do so with, you have to scan a qr code in order to login, something not very accessible for blind people btw.
@blacklight also, were you able to bridge a public room on the matrix side with a telegram, messenger or whatever group on the other side? I tryed, but I failed every time, relay mode as they call it is kinda hard to configure.
@bgtlover hmm good point. So far I have only tried with private conversations and groups, not with public groups.
@blacklight yeah, the thing isn't only to make a private conversation from your own matrix account to a private or public group, it's rather to make a public room and bridge it with another public messenger or whatever group, made for that room specifically or an existing one, the same way you did with irc. Did you use heisenbridge for the irc integration? I'm curious because I dk what to use for that my self.
@bgtlover I used matrix-appservice-irc. It does its job, but it was definitely a pain in the ass to configure - the config.yaml is >700 LOC, and most of them have to be set.
@blacklight damn, I wouldn't want to do that, not even if my life would depend on it lol. So, you're not using matrix docker ansible deploy? Also, because I have other services running on the server, I had to frunt the integrated nginx proxy behind a traefik reverse proxy, which means I had to disable ssl for the playbook, therefore coturn is configured with ssl: false and ssld: false. The worst thing is that I can't set an ssl cert for it, since it's in the json file maintained by traefik.
@bgtlover I installed everything on bare metal (AUR packages provided on Manjaro), no Docker involved. nginx luckily was quite straightforward to set up with SSL. The nginx reverse proxy is running on another server that connects to Synapse over VPN, and all the traffic within the VPN is cleartext.
@blacklight oof, that's a much more involved process than what I did, at least you have two vps's to use for that, in my case everything runs on docker and I only used one server for everything. Well, I partially blame that on the playbook, but also now things can recover from damage and stuff easier than if they weren't on docker, but the downside is they take up more memory than native packages would. Also, you running arch for server? how stable is that?
@bgtlover I've been running Arch on all of my servers for a couple of years by now.
I mean, it can be a bit painful sometimes (every time a new major release of Postgres comes I have to manually upgrade my clusters, and every time a new version of PHP comes I have to pray that Nextcloud won't break), but I've got used to it, and for some packages I have even made some post-install scripts that fix things that I know already that will break. And, even if the distro doesn't officially support partial upgrades, sometimes holding back a version of a package to prevent breakages is not a big deal (I did so for a couple of months while waiting for the Nextcloud team to fix PHP 8.1 compatibility).
I guess that paying more attention to the upgrade process is the price to pay for running bleeding edge versions for all the packages :)
@blacklight interesting, I've been thinking about getting an arch vps for a while now. I know nextcloud does much more than just file sharing, however, do you have some integration so that you can upload files to a matrix room and it goes to nextcloud? that would solve the problem where a significant chunk of the db has to be reserved for files, even though a file storage platform is already there. That's the next thing I'll investigate, since a matrix nextcloud integration sounds powerful.
@bgtlover AFAIK there's no native plugin that provides this feature, but it should be easy to set up with Platypush. You would need to configure the Matrix plugin (https://docs.platypush.tech/platypush/plugins/matrix.html), the Nextcloud integration (https://docs.platypush.tech/platypush/plugins/nextcloud.html), and set up a hook that reacts on a MatrixMessageEvent (https://docs.platypush.tech/platypush/events/matrix.html#platypush.message.event.matrix.MatrixMessageEvent).
The hook would first call matrix.download to download the mxc:// URL if the message has attachments, and then nextcloud.upload_file to upload it to the instance.
@oros well, mileage may vary. My setup is like this: Synapse -> mautrix-signal -> signald -> Signal. In *theory* signald supports E2EE, but I've had many hiccups with it. Some of my friends said that they get my messages delivered in encrypted rooms with no problems, other said that they first get an *ENCRYPTED OTP* message followed by a cleartext message (a sign that E2EE failed).
A platform about automation, open-source, software development, data science, science and tech.