Уже несколько лет успешно использую Blynk. Изначально - для ESP8266.
Он позволяет изумительно легко создавать умные розетки, подключать датчики, и много чего ещё.
Но недавно я освоил ещё одно применение Blynk - связь с ПК.
Например, я сейчас могу одним нажатием в приложении включить или выключить домашний ПК, запустить какой-либо скрипт на нетбуке или orange pi.
А ещё я получаю в пуш-уведомлениях приложения сообщения о завершении печати, включении компьютера.
И всё это оказалось просто реализовать.
Нужно только в планировщике опрашивать нужный url.
например, задание на выключение сразу в cron:
wget -qO-
http://сервер:порт/токен/get/пин 2>null | grep '"1"' && ( wget -qO-
http://сервер:порт/токен/update/пин?value=0 ; /sbin/poweroff ) >/dev/null
если указанный пин включён - выключаем его и выполняем завершение работы.
а если такое задание создать на роутере, то можно запускать ether-wake и будить домашний ПК.
или через curl и из скрипта sh:
curl --include
http://сервер:порт/токен/get/пин 2>null | grep '"1"' && (
curl --include
http://сервер:порт/токен/update/пин?value=0 #делаем_что-то_ещё
)
это же можно применять и для управления умной розеткой, например выключить принтер по завершении печати
отправка сообщения по завершении печати:
curl --include --request POST --header "Content-Type: application/json" --data-binary "{\"body\" : \"3D Fin!\"}"
http://сервер:порт/токен/notify