Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Parser Adapter Werte Zeilenweise auslesen (Guntamatic)

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Parser Adapter Werte Zeilenweise auslesen (Guntamatic)

    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      glitzi @AlCalzone last edited by glitzi

      @alcalzone

      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);
      				}
      
      			}
      
      
      
          })
      
      })
      
      1 Reply Last reply Reply Quote 0
      • Seiler1983
        Seiler1983 @glitzi last edited by Seiler1983

        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?

        G 1 Reply Last reply Reply Quote 0
        • G
          glitzi @Seiler1983 last edited by

          @seiler1983

          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

          1 Reply Last reply Reply Quote 0
          • E
            Esmax666 last edited by

            @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 😄

            G 1 Reply Last reply Reply Quote 0
            • G
              glitzi @Esmax666 last edited by glitzi

              @esmax666

              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.cgi

              Beschreibung:
              http://IP.IP.IP.IP/daqdesc.cgi

              E 1 Reply Last reply Reply Quote 1
              • E
                Esmax666 @glitzi last edited by

                @glitzi

                ok danke ich werde mal probieren
                Guntamatic adapter ist noch nicht vorgesehen oder?

                G 1 Reply Last reply Reply Quote 0
                • G
                  glitzi @Esmax666 last edited by

                  @esmax666

                  Von einem Adapter bin ich leider mit meinen Programmierkenntnissen meilenweit entfernt,
                  Aber das Skript tut seinen Dienst…

                  1 Reply Last reply Reply Quote 1
                  • D
                    devhoh @glitzi last edited by devhoh

                    @glitzi, @orfix,

                    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!

                    O G 2 Replies Last reply Reply Quote 0
                    • O
                      orfix @devhoh last edited by orfix

                      @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.

                      guntamatic_graf.JPG

                      mfg

                      orfix

                      1 Reply Last reply Reply Quote 0
                      • G
                        glitzi @devhoh last edited by

                        @devhoh

                        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

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate
                        FAQ Cloud / IOT
                        HowTo: Node.js-Update
                        HowTo: Backup/Restore
                        Downloads
                        BLOG

                        465
                        Online

                        31.9k
                        Users

                        80.1k
                        Topics

                        1.3m
                        Posts

                        parser guntamatic regex
                        8
                        75
                        8053
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo