I’m sorry if this isn’t the place to ask this, I also asked over at !raspberrypi@lemmy.ml.
So what I want to do is this: Two RasPis are at different locations. They’re on different networks but have internet access. Pressing a button on one of the Pis turns on an LED over at the other Pi via GPIO. How can I make the communication work? My first thought was Telegram bots as I’m familiar with those for notifications but you can’t have Telegram bots communicate with each other, sadly. Is there a good (and secure) solution to this? Preferably using Python code and without continuous costs like server hosting, etc?
Thanks!
For a simple one way communucation where latency is unimportant, you might leverage any number of free services with apis you can abuse. You could send a tweer, or nastodon message, You could have one just update a file with a timestamp as a github gist or on pastebin or something.
There are also free mqtt broker services.
Or you could put one on the public internet with ddns name and talk directly to it.
Or you could set up a VPN between them - is logmein still a thing? - and then talk to each other directly via that interface
Oracle cloud “always free” tier VM instance, which you could setup a VPN to, from each Pi.
The easiest & cheapest option would be to expose one of the devices to the internet on a known port and connect from the other device to that one with SSH.
Once you’ve got a connection, you can do pretty much anything you want, including writing to a pipe or even a file and polling it.
If you don’t want to expose either, then you need a third party to facilitate the connection that is on the Open internet, though that server can be yours too. Even a €4/mo box at Hetzner would do it.
If these options sound good, let me know and I can be more detailed.
All of the answers I got so far were great. I’ll probably use a messaging service though but thank you very much
There are free IoT cloud solutions to send and receive data and that work with MQTT protocol for this purpose.