Hallo, ich möchte die Leistungs-Messwerte des Shelly Plug S zyklisch per http-Kommando auslesen, wünschenswert wäre ein Messintervall von 10s. Das Teil läuft in meinem Gast-WLAN, mittels http Kommando im Browser läßt sich der aktuelle Leistungsmesswert auslesen -> soweit funktioniert das zumindest schonmal. Ich habe jedoch keinen Plan, ob und wie sich das automatisieren läßt. Gibt es irgendein Programm/Tool zur zyklischen Generierung von http-Kommandos (quasi das was im Browser manuell gemacht wird in festen Zeitinvervallen automatisch wiederholen)? Optimal wäre, wenn die Antwort vom Shelly gleich dekodiert oder zumindest in eine Datei geschrieben werden könnte.
Richard B. schrieb: > Ich habe jedoch keinen Plan, ob und wie sich das automatisieren läßt. Einfach geht es mit wget. Allerdings hat wget deutliche Grenzen. Je nachdem, wie die Seite generiert wird, kann es passieren, dass keine sinnvolles Ergebnis dabei herauskommt. > vom Shelly gleich dekodiert oder zumindest in eine Datei geschrieben > werden könnte. Letzteres tut wget. Seiten vom Server in lokale Dateien schreiben. Wenn die gewünschte Information grundsätzliche erstmal auf der Platte landet, ist es meist auch keine großes Problem mehr, den eigentlich interessierenden Teil daraus zu extrahieren.
c-hater schrieb: > Letzteres tut wget. Alternative: curl. Ist bei aktuellen Windows-Versionen von Haus aus dabei, und unter unixoiden Betriebssystemen ebenso zu Hause. Muss man nur (wie wget auch) zyklisch aus einem Zeitplandienst/cronjob heraus aufrufen und einen aus der Systemzeit generierten Dateinamen für die Ausgabe übergeben.
curl http://shelly/emeter/0 sollte die Daten ohne viel html liefern. Mehr steht auf: https://shelly-api-docs.shelly.cloud/gen1/#shelly-plug-plugs
Sofern du vor hast das unter Linux zu betreiben, würde ich dir empfehlen auch mal den Weg Tasmota -> MQTT -> telegraf -> InfluxDB -> Grafana anzuschauen. Tasmota kann z. B. alle 10 sec den Wert autom. an einen MQTT Broker (z. B. Mosquitto) schicken. Telegraf trägt die Werte dann in eine InfluxDB ein und Grafana kann es visualisieren. Ansonsten wie schon geschrieben mit wget/curl in einem Cron job (geht leider nur minütlich, müsstet ein Script schreiben, das das 6x macht und dazwischen ca. 10 sec Pause) Gruß Roland
Richard B. schrieb: > Das Teil läuft in meinem Gast-WLAN DAS könnte noch ein Problem werden, da du vom produktiv WLAN nicht ins Gast-WLAN kommst. Hier findest du Infos wie man MQTT auch im Gast-WLAN zum Laufen bekommt: https://tasmota.github.io/docs/Securing-your-IoT-from-hacking/ Dürfte vielleicht auch für die Original Shelly Firmware zutreffen, die AFAIK auch MQTT kann Gruß Roland
Roland P. schrieb: > Sofern du vor hast das unter Linux zu betreiben, würde ich dir > empfehlen > auch mal den Weg > Tasmota -> MQTT -> telegraf -> InfluxDB -> Grafana anzuschauen. Und warum sollte das unter Windows oder MacOS nicht genauso gut gehen? Ohne eigenen Server funktioniert das auch mit der Shelly Cloud sehr einfach. Mit eigenem Server ist das ein Klacks mit jeder Hausautomasierungssoftware. Auch Tasmota braucht man bei Shelly nicht unbedingt, die Firmware unterstützt direkt einen eigenen MQTT Broker.
:
Bearbeitet durch User
J. S. schrieb: > Und warum sollte das unter Windows oder MacOS nicht genauso gut gehen? Man wird das sicherlich unter jedem Betriebssystem zum Laufen bringen. Die Frage ist halt: Will man das und kann man das? Linux ist zwar für manch einen auch eine Einstiegshürde, aber für das vorgeschlagene Setup gibts halt deutlich mehr Tutorials für Linux als für Windows. Sollte man sogar auf einen RaspberryPi zum Laufen bekommen. Man sollte die Datenbank dann aber nicht unbedingt auf der SD Karte ablegen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.