Hallo zusammen,
ich habe mir eine Datenaufzeichnung für meinen ETA eHack gebastelt und stell hier mal die Anleitung dazu rein falls es jemand nachbauen möchte.
Als erstes müssen die Webservices aktiviert werden. Dazu erst auf meineta.at unter Einstellungen > Webservices freischalten und dann am Kessel unter Systemeinstellungen > Internet & Schnittstellen > meinETA Zugang auf Webservices aktivieren.
Bei mir hat der Kessel die IP-Adresse 192.168.179.100 daher ist überall diese eingetragen. Wenn ihr das nachbauen möchtet bitte entsprechend ändern.
Bei aktivierten Webservices sind unter dieser Adresse view-source:http://192.168.179.100:8080/user/menu alle Variablen zu sehen.
z.B. Puffer Oben hat die Variable /120/10251/0/0/12242
Dieser Wert kann nun abgefragt werden mit http://192.168.179.100:8080/user/var//120/10251/0/0/12242
Nun geht's an die Installation von Cacti.
Alle notwendigen Abhängigkeiten sollten automatisch mit installiert werden.
Bei mir läuft ein Apache-Webserver bereits auf dem PI daher befindet sich Cacti nach der Installation unter /var/www/html/cacti
Dort werden nun im Ordner /scripts/custom die Abfragescripts angelegt.
Dort wird dann folgender Code eingefügt: (IP-Adresse vom Kessel anpassen!)
Danke an den User Oliver Modebach vom Haustechnikdialog für das Script.
#!/bin/bash
array[1]="/120/10251/0/0/12242"
array[2]="/120/10251/0/0/12522"
array[3]="/120/10251/0/0/12244"
array[4]="/24/10561/0/0/13957"
text[1]="oben"
text[2]="mitte"
text[3]="unten"
text[4]="leistung"
# Werte auslesen
for (( c=1; c<=4; c++ ))
do
wert[$c]=$(wget -q 192.168.179.100:8080/user/var/${array[$c]} -O - | grep ">*<value" | cut -d ' ' -f 5 | cut -d '"' -f 2)
data=$(echo -e -n "${data}${text[$c]}:${wert[$c]} " | sed 's/','/'.'/g')
done
echo $data
Alles anzeigen
Nach dem abspeichern die Datei ausführbar machen mit:
Nun kann man die Ausgabe bereits testen mit:
Nun sollte eine ähnliche Ausgabe kommen:
oben:72 mitte:72 unten:54 leistung:0.0
Nun gehts ins Cacti-Webinterface.
Dort bei Data Input Methods eine neue Inputmethode anlegen und die im Script gewählten Textfelder unter Output Fields anlegen:
Danach auf Data Sources und dort auch neu anlegen.
Das Feld Data Source Path leer lassen, das wird automatisch ausgefüllt.
Unten Rechts auf New wieder alle Felder die vorher bei Output Fields angelegt wurden neu erstellen.
Nun werden alle Werte schon mal aufgezeichnet und jetzt kann bei Graph Management ein neuer Graph erstellt werden:
Natürlich könnte man in diesem einen Script viel mehr Werte als nur 4 Stück abfragen lassen. Ich persönlich habe allerdings für andere Werte lieber ein neues Script angelegt.
Ich hoffe es hilft dem ein oder anderen der ebenfalls solche Spielereien liebt. ;)Anleitung: Datenaufzeichnung an ETA Heizkessel mit RaspberryPI und Cacti