NEWS
Parser Adapter Werte Zeilenweise auslesen (Guntamatic)
-
@glitzi said in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):
Das ist der Befehl
http://xx.xx.xx.xx/ext/parset.cgi?syn=K0010&value=1&key=Key...Key
dann kommt
{"err":"Keine Berechtigung"}
im Browser
Das funktioniert bei mir genau so.
Dann scheint es ja wirklich an der Firmware zu liegen. -
Hallo,
in meinem Skript nutze ich noch "request" viele sprechen jetzt von einer Umstellung auf "axios"Daher hier die Version mit "axios"
Das habe ich leider nicht selber hinbekommen, aber das Forum hat mich hier prächtig unterstützt!createState('Guntamatic_Betrieb_0'); createState('Guntamatic_Aussentemperatur_1'); createState('Guntamatic_Kesseltemperatur_3'); createState('Guntamatic_Leistung_5'); createState('Guntamatic_Rücklauf_6'); createState('Guntamatic_CO2_Gehalt_8'); createState('Guntamatic_Puffer_oben_17'); createState('Guntamatic_Puffer_unten_19'); createState('Guntamatic_Pumpe_HP0_20'); createState('Guntamatic_Warmwasser_21'); createState('Guntamatic_Vorlauf_31'); createState('Guntamatic_Füllstand_65'); createState('Guntamatic_Kesselfreigabe_68'); createState('Guntamatic_Programm_69'); createState('Guntamatic_Programm_HK1_71'); createState('Guntamatic_Stoer0_79'); createState('Guntamatic_Stoer1_80'); createState('Guntamatic_Asche_entleeren_85'); createState('Guntamatic_Brennstoffzähler_89'); createState('Guntamatic_Pufferladung_90'); createState('Guntamatic_CO2_Gehalt_korrigiert'); const axios=require('axios'); schedule("*/5 * * * * *", function(){ axios.post('http://xx.xx.xx.xx/daqdata.cgi?key=xxxx', { responseEncoding: 'latin1' }) .then(function(response) { if (response.data) { var parts = response.data.split('\n'); var parts_Guntamatic = parts[0]; setState('Guntamatic_Betrieb_0', parts_Guntamatic, true); var parts_Guntamatic = parts[1]; setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true); var parts_Guntamatic = parts[3]; setState('Guntamatic_Kesseltemperatur_3', parts_Guntamatic, true); var parts_Guntamatic = parts[5]; setState('Guntamatic_Leistung_5', parts_Guntamatic, true); var parts_Guntamatic = parts[6]; setState('Guntamatic_Rücklauf_6', parts_Guntamatic, true); var parts_Guntamatic = parts[8]; setState('Guntamatic_CO2_Gehalt_8', parts_Guntamatic, true); var parts_Guntamatic = parts[17]; setState('Guntamatic_Puffer_oben_17', parts_Guntamatic, true); var parts_Guntamatic = parts[19]; setState('Guntamatic_Puffer_unten_19', parts_Guntamatic, true); var parts_Guntamatic = parts[20]; setState('Guntamatic_Pumpe_HP0_20', parts_Guntamatic, true); var parts_Guntamatic = parts[21]; setState('Guntamatic_Warmwasser_21', parts_Guntamatic, true); var parts_Guntamatic = parts[31]; setState('Guntamatic_Vorlauf_31', parts_Guntamatic, true); var parts_Guntamatic = parts[65]; setState('Guntamatic_Füllstand_65', parts_Guntamatic, true); var parts_Guntamatic = parts[68]; setState('Guntamatic_Kesselfreigabe_68', parts_Guntamatic, true); var parts_Guntamatic = parts[69]; setState('Guntamatic_Programm_69', parts_Guntamatic, true); var parts_Guntamatic = parts[71]; setState('Guntamatic_Programm_HK1_71', parts_Guntamatic, true); var parts_Guntamatic = parts[79]; setState('Guntamatic_Stoer0_79', parts_Guntamatic, true); var parts_Guntamatic = parts[80]; setState('Guntamatic_Stoer1_80', parts_Guntamatic, true); var parts_Guntamatic = parts[85]; setState('Guntamatic_Asche_entleeren_85', parts_Guntamatic, true); var parts_Guntamatic = parts[89]; setState('Guntamatic_Brennstoffzähler_89', parts_Guntamatic, true); var parts_Guntamatic = parts[90]; setState('Guntamatic_Pufferladung_90', parts_Guntamatic, true); /* CO2 Korrigieren da der Wert im Leerlauf teils 18.00 annimmt. parts[5] = Leistung parts[8] = CO2 Gehalt */ if (parts[5] == 0) { setState("Guntamatic_CO2_Gehalt_korrigiert", 0, true); } else { setState("Guntamatic_CO2_Gehalt_korrigiert", parts[8], true); } } }) })
-
Hallo,
ich bin erst jetzt durch Google Recherche auf dieses Forum aufmerksam geworden. Ich nutze bisher nur die App von Guntamatic, da funktioniert alles super (also was die App halt hergibt).
Bei dem HTTP Request via Browser scheitere ich auch an "Keine Berechtigung".
Muss ich bei <KEY> den Schlüssel verwenden, den auch die App verwendet (einstellbar im Heizungsmenü), oder ist das wieder ein anderer bzw. wo krieg ich den her? -
Weiter oben ist das Formular für den Key, dieser wird von Guntamatic erstellt und ist von der Kesselnummer abhängig.
https://forum.iobroker.net/topic/38469/parser-adapter-werte-zeilenweise-auslesen-guntamatic/42
-
@glitzi said in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):
axios
was sind die vorteile von axios?
Dein skript geht auch für ein Biostar 15 ?
ich werde bald ein Biostar haben und checke gerade die lösungen
-
Moin,
Sollte eigentlich funktionieren, die Werte werden ja nur zeilenweise von der Webseite gelesen.
Ob die Zuordnung passt siehst du leicht selber über folgende URL‘s und kannst ggf. das Skript anpassen.Werte:
http://IP.IP.IP.IP/daqdata.cgiBeschreibung:
http://IP.IP.IP.IP/daqdesc.cgi -
ok danke ich werde mal probieren
Guntamatic adapter ist noch nicht vorgesehen oder? -
Von einem Adapter bin ich leider mit meinen Programmierkenntnissen meilenweit entfernt,
Aber das Skript tut seinen Dienst… -
durch eine Websuche bin ich auf diesen Thread gestoßen. Ich habe kürzlich meinen Biostar 17 Kessel in Home Assistant integriert und kann nun alle Werte auslesen und protokollieren sowie diverse Heizstatus setzen – soweit so gut.
In deiner schönen Grafik sehe ich, dass die Störmeldungen angezeigt werden. Wenn ich es richtig verstehe, gibt es auch einen Quittier-Button? Genau daran habe ich großes Interesse. Gibt es dafür ein spezifisches Kommando?
Der Guntamatic-Support hält sich dazu leider bedeckt, aber es muss ja irgendwie machbar sein – die offizielle App kann es schließlich auch.
Ich wäre dir für jede Info dankbar!
Liebe Grüße!
-
@devhoh
servus,quittieren muss ich nur nach Asche leeren, mach ich am Display.
Sonst zeig ich nur die Störungen an und Pushmeldung ans Handy.mfg
orfix
-
Hallo,
quittieren sollte man auch nur vor Ort, meist liegt dann auch eine Störung vor die begutachtet werden sollte.Und so wie ich die Dokumentation lese, ist dies auch nicht vorgesehen, man könnte ggf. den Traffic der Guntamatic-App mal mitschneiden und schauen was die so sendet.
Aber für diese seltene Fälle nutze ich dann einfach die APP oder den Finger vor Ort.mfg