NEWS
MQTT-Befehle via URL auslösen?
-
Hallo Forum!
Ich suche nach einer Lösung, von der ich ausgehe, dass es sie gibt - aber ich weiß nicht genau, wie ich sie finde (obwohl die Sache wahrscheinlich trivial ist). Über einen kurzen Hinweis würde ich mich freuen!Situation:
Ich bediene die Markisen meiner Terrassen-Überdachung via einen ESP8266 mit MQTT (https://forum.iobroker.net/topic/31934/somfy-io-außenverschattung-einbinden), für dessen Steuerung ich mir eine kleine Webseite gebaut habe, auf der ich schön flexibel alle nötigen buttons unterbringen kann. Bis vor kurzem lief das alles auf einem Raspberry Pi, wo die Installation der nötigen Module (Perl oder Python) kein Problem ist.
Nun habe ich mich entschlossen, alles auf meine Synology zu migrieren, wo auch IOBroker läuft (und zum Beispiel meine Stromzähler ausgelesen und die Daten visualisiert werden).Problem:
Auf der Synology läuft zwar Apache, die nötigen Module für Perl (ja, ich weiß - ich bin ein Dinosaurier...) und auch Python kann ich aber nicht installieren/kompilieren, weil die Synology eine abgespeckte Version von Linux hat (kein make, gcc, usw.). Mit Cross-Compiling kenne ich mich nicht aus.Lösung?
Ich suche nun nach einer Lösung, mit der ich mit meinem cgi-script (z. B.) eine URL generiere, deren Aufruf dann irgendwie und irgendwo auslöst, dass ein MQTT-Befehl gesendet wird. ;-)Ich habe versucht, mit den Stichworten "websockets" usw. weiterzukommen, scheitere aber bis jetzt an meinen doch etwas beschränkten Kenntnissen...
Kann mir jemand einen Tipp geben? (So nach dem Motto "warum machst Du nicht einfach...!?").Dank und Gruß - Sebastian
-
@sebhoff
Hast du schon einen MQTT Broker laufen? Wenn nicht, könntest Du den MQTT Broker/Client Adapter installieren und den als Broker laufen lassen.Zusätzlich benötigst du den Simple API Adapter. Damit ist es dann möglich, per http Aufruf Datenpunkte zu schreiben (z.B. so "http://ipaddress:8087/set/javascript.0.test?value=1"). Steht alles in der Readme.
Dein Client (der ESP8266?) verbindet sich dann zum MQTT Broker und abonniert das Topic (im Beispiel "javascript.0.test) und wird über Änderungen informiert.
-
@sebhoff
Hast du schon einen MQTT Broker laufen? Wenn nicht, könntest Du den MQTT Broker/Client Adapter installieren und den als Broker laufen lassen.Zusätzlich benötigst du den Simple API Adapter. Damit ist es dann möglich, per http Aufruf Datenpunkte zu schreiben (z.B. so "http://ipaddress:8087/set/javascript.0.test?value=1"). Steht alles in der Readme.
Dein Client (der ESP8266?) verbindet sich dann zum MQTT Broker und abonniert das Topic (im Beispiel "javascript.0.test) und wird über Änderungen informiert.
@marc-berg Super - danke!! Das mit dem "Simple API Adapter" war sicherlich der Tip, den ich gesucht habe...
Ja - MQTT läuft im Moment via den Sonoff Adapter. Könnte ich natürlich auch noch ändern/ergänzen.