NEWS
Frage: mit Blockly Dateiinhalt verarbeiten
-
Hallo,
ich möchte mittels Blockly vom IOBroker RPI die CPU-Temperatur eines zweiten, im Netz befindlichen PI überwachen.
Nach erstellen der ssh -Schlüssel wird die Temperatur zweiten RPI nach /opt/iobroker/tmp/temp_rpi205.txt ausgeben. Inhalt der Datei ist dann bspw. "temp=56.0'C".
So weit so gut:-) Ich weis ehrlich gesagt nicht, ob ich grundsätzlich auf dem richtigen Weg bin und taste mich erst mal nur vor.
Als nächstes müsste der Wert aus der Datei zur weiteren Verwendung extrahiert werden?? oder besser gleich einen Datenpunkt damit füllen ? Stehe gerade auf dem Schlauch !
Für Tipps wäre ich jedenfalls dankbar.
LG
EDIT: stelle gerade fest, das der Aufruf nur von der Console funktioniert.
ssh pi@192.168.0.205 vcgencmd measure_temp >/opt/iobroker/tmp/temp_rpi205.txt
führt man das o.g. Blockly aus, bleibt die Datei leer. Warum das ? Ich dachte ich sei schon einen Schritt weiter
-
@biker Wieso machst du dir denn den Umweg über eine Datei?
Bevor du die Temperatur in eine Datei schreibst, kannst du doch auch mittels curl und der simple-api direkt den Datenpunkt setzen -
@CruziX sagte in Frage: mit Blockly Dateiinhalt verarbeiten:
@biker Wieso machst du dir denn den Umweg über eine Datei?
aus Gründen mangelnder Kenntnis
! Nun habe ich den Adapter installiert und kann nun Werte in den Datenpunkt schreiben.
http://192.168.0.10:8087/set/javascript.0.Status.RPI-202.CPU.temperatur?value=XXX
Bleibt nur noch, wie Temperatur gesetzt werden muss. Das wäre zu einfach:
http://192.168.0.10:8087/set/javascript.0.Status.RPI-202.CPU.temperatur?value= ssh pi@192.168.0.205 vcgencmd measure_temp
EDIT: sorry du hattest noch "mittels curl " erwähnt. das muss ich noch recherchieren ...
-
@CruziX so, nach kurzer Recherche, wenn ich das richtig verstanden habe, müsste ich ein Script auf dem zu überwachendem PI am besten mittels cron laufen lassen.
Im Script die Temperatur abfragen und den Wert mittels
curl http://192.168.0.10:8087/set/javascript.0.Status.RPI-202.CPU.temperatur?value={$CPU-temp}
in den Datenpunkt schreiben. Versuche ich Vielen Dank !