Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Parser Adapter Werte Zeilenweise auslesen (Guntamatic)

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    328

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

Parser Adapter Werte Zeilenweise auslesen (Guntamatic)

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
parser guntamatic regex
77 Beiträge 8 Kommentatoren 12.9k Aufrufe 5 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • G glitzi

    Hallo,

    meine Finale Lösung ist jetzt doch ein Skript geworden...

    
    createState('Guntamatic_Betrieb_0');
    createState('Guntamatic_Aussentemperatur_1');
    createState('Guntamatic_Kesseltemperatur_3');
    createState('Guntamatic_Leistung_5');
    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_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_Brenstoffzähler_89');
    createState('Guntamatic_Pufferladung_90');
    createState('Guntamatic_CO2_Gehalt_korrigiert');
    
    var request= require('request');
     
    schedule("*/10 * * * * *",
      
    function()
    {
    
    /*
    für einige Werte wie Brennstoffverbrauch benötigt mein einen Key von Guntamatic
      url:     'http://10.10.10.7/daqdata.cgi?key=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
    */
    
    var request= require('request');
    request.post({
      url:     'http://10.10.10.7/daqdata.cgi'
    }, function(error, response, body){
      if (body) {
          
          var parts_Guntamatic = body.split('\n')[0];
          setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[1];
          setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[3];
          setState('Guntamatic_Kesseltemperatur_3', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[5];
          setState('Guntamatic_Leistung_5', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[8];
          setState('Guntamatic_CO2_Gehalt_8', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[17];
          setState('Guntamatic_Puffer_oben_17', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[19];
          setState('Guntamatic_Puffer_unten_19', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[20];
          setState('Guntamatic_Pumpe_HP0_20', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[21];
          setState('Guntamatic_Warmwasser_21', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[31];
          setState('Guntamatic_Vorlauf_31', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[68];
          setState('Guntamatic_Kesselfreigabe_68', parts_Guntamatic, true);
          
          var parts_Guntamatic = body.split('\n')[69];
          setState('Guntamatic_Programm_69', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[71];
          setState('Guntamatic_Programm_HK1_71', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[79];
          setState('Guntamatic_Stoer0_79', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[80];
          setState('Guntamatic_Stoer1_80', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[85];
          setState('Guntamatic_Asche_entleeren_85', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[89];
          setState('Guntamatic_Brenstoffzähler_89', parts_Guntamatic, true);
    
          var parts_Guntamatic = body.split('\n')[90];
          setState('Guntamatic_Pufferladung_90', parts_Guntamatic, true);
      }
    
    
    if (getState("Guntamatic_Leistung_5").val == 0)
    {
        setState("Guntamatic_CO2_Gehalt_korrigiert" , 0, true);
    }
    else
    {
        setState("Guntamatic_CO2_Gehalt_korrigiert",getState("Guntamatic_CO2_Gehalt_8").val);  
    }
    
    
    }); 
     
    }
    )
    
    AlCalzoneA Offline
    AlCalzoneA Offline
    AlCalzone
    Developer
    schrieb am zuletzt editiert von
    #23

    @glitzi sagte in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

    body.split('\n')

    Kleiner Tip: Speicher das in einer Variablen und nutze diese (anstatt die Split-Aktion 90x auszuführen)

          var parts = body.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);
    
        ...
    

    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

    G 2 Antworten Letzte Antwort
    1
    • G glitzi

      Hallo,

      meine Finale Lösung ist jetzt doch ein Skript geworden...

      
      createState('Guntamatic_Betrieb_0');
      createState('Guntamatic_Aussentemperatur_1');
      createState('Guntamatic_Kesseltemperatur_3');
      createState('Guntamatic_Leistung_5');
      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_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_Brenstoffzähler_89');
      createState('Guntamatic_Pufferladung_90');
      createState('Guntamatic_CO2_Gehalt_korrigiert');
      
      var request= require('request');
       
      schedule("*/10 * * * * *",
        
      function()
      {
      
      /*
      für einige Werte wie Brennstoffverbrauch benötigt mein einen Key von Guntamatic
        url:     'http://10.10.10.7/daqdata.cgi?key=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
      */
      
      var request= require('request');
      request.post({
        url:     'http://10.10.10.7/daqdata.cgi'
      }, function(error, response, body){
        if (body) {
            
            var parts_Guntamatic = body.split('\n')[0];
            setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[1];
            setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[3];
            setState('Guntamatic_Kesseltemperatur_3', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[5];
            setState('Guntamatic_Leistung_5', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[8];
            setState('Guntamatic_CO2_Gehalt_8', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[17];
            setState('Guntamatic_Puffer_oben_17', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[19];
            setState('Guntamatic_Puffer_unten_19', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[20];
            setState('Guntamatic_Pumpe_HP0_20', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[21];
            setState('Guntamatic_Warmwasser_21', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[31];
            setState('Guntamatic_Vorlauf_31', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[68];
            setState('Guntamatic_Kesselfreigabe_68', parts_Guntamatic, true);
            
            var parts_Guntamatic = body.split('\n')[69];
            setState('Guntamatic_Programm_69', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[71];
            setState('Guntamatic_Programm_HK1_71', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[79];
            setState('Guntamatic_Stoer0_79', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[80];
            setState('Guntamatic_Stoer1_80', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[85];
            setState('Guntamatic_Asche_entleeren_85', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[89];
            setState('Guntamatic_Brenstoffzähler_89', parts_Guntamatic, true);
      
            var parts_Guntamatic = body.split('\n')[90];
            setState('Guntamatic_Pufferladung_90', parts_Guntamatic, true);
        }
      
      
      if (getState("Guntamatic_Leistung_5").val == 0)
      {
          setState("Guntamatic_CO2_Gehalt_korrigiert" , 0, true);
      }
      else
      {
          setState("Guntamatic_CO2_Gehalt_korrigiert",getState("Guntamatic_CO2_Gehalt_8").val);  
      }
      
      
      }); 
       
      }
      )
      
      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #24

      @glitzi sagte in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

      meine Finale Lösung ist jetzt doch ein Skript geworden...

      Das ist gut!

      Aber da ich neugierig bin würde mich interessieren ob mein letztes RegEx wirklich funktioniert (hätte)?

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      G 1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @glitzi sagte in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

        meine Finale Lösung ist jetzt doch ein Skript geworden...

        Das ist gut!

        Aber da ich neugierig bin würde mich interessieren ob mein letztes RegEx wirklich funktioniert (hätte)?

        G Offline
        G Offline
        glitzi
        schrieb am zuletzt editiert von
        #25

        @Homoran said in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

        @glitzi sagte in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

        meine Finale Lösung ist jetzt doch ein Skript geworden...

        Das ist gut!

        Aber da ich neugierig bin würde mich interessieren ob mein letztes RegEx wirklich funktioniert (hätte)?

        Leider hat er nicht funktioniert... Trotzdem Danke für die viele Arbeit!

        1 Antwort Letzte Antwort
        0
        • AlCalzoneA AlCalzone

          @glitzi sagte in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

          body.split('\n')

          Kleiner Tip: Speicher das in einer Variablen und nutze diese (anstatt die Split-Aktion 90x auszuführen)

                var parts = body.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);
          
              ...
          
          G Offline
          G Offline
          glitzi
          schrieb am zuletzt editiert von
          #26

          @AlCalzone said in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

          @glitzi sagte in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

          body.split('\n')

          Kleiner Tip: Speicher das in einer Variablen und nutze diese (anstatt die Split-Aktion 90x auszuführen)

                var parts = body.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);
          
              ...
          

          Super werde ich gleich mal umsetzen.

          G 1 Antwort Letzte Antwort
          0
          • G glitzi

            @AlCalzone said in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

            @glitzi sagte in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

            body.split('\n')

            Kleiner Tip: Speicher das in einer Variablen und nutze diese (anstatt die Split-Aktion 90x auszuführen)

                  var parts = body.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);
            
                ...
            

            Super werde ich gleich mal umsetzen.

            G Offline
            G Offline
            glitzi
            schrieb am zuletzt editiert von
            #27

            Einer eine Idee warum in der Objektübersicht der Korrigierte Wert meisten dem Original etwas hinterherhinkt?

            ...
            if (getState("Guntamatic_Leistung_5").val == 0)
            {
                setState("Guntamatic_CO2_Gehalt_korrigiert" , 0, true);
            }
            else
            {
                setState("Guntamatic_CO2_Gehalt_korrigiert",getState("Guntamatic_CO2_Gehalt_8").val, true);  
            }
            
            
            AlCalzoneA 1 Antwort Letzte Antwort
            0
            • G glitzi

              Einer eine Idee warum in der Objektübersicht der Korrigierte Wert meisten dem Original etwas hinterherhinkt?

              ...
              if (getState("Guntamatic_Leistung_5").val == 0)
              {
                  setState("Guntamatic_CO2_Gehalt_korrigiert" , 0, true);
              }
              else
              {
                  setState("Guntamatic_CO2_Gehalt_korrigiert",getState("Guntamatic_CO2_Gehalt_8").val, true);  
              }
              
              
              AlCalzoneA Offline
              AlCalzoneA Offline
              AlCalzone
              Developer
              schrieb am zuletzt editiert von
              #28

              @glitzi setState ist asynchron - der Code läuft weiter, bevor der Wert in der Datenbank angekommen und per getState verfügbar ist.
              Diese Korrekturen solltest du beim Auslesen auf Basis des geparsten Wertes schon machen, ohne den Umweg über die Datenbank.

              also z.B. so:

              if (parts[5] == 0) {
                // setState...
              } else {
                setState("Guntamatic_CO2_Gehalt_korrigiert", parts[8], true)
              }

              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

              G 3 Antworten Letzte Antwort
              1
              • AlCalzoneA AlCalzone

                @glitzi setState ist asynchron - der Code läuft weiter, bevor der Wert in der Datenbank angekommen und per getState verfügbar ist.
                Diese Korrekturen solltest du beim Auslesen auf Basis des geparsten Wertes schon machen, ohne den Umweg über die Datenbank.

                also z.B. so:

                if (parts[5] == 0) {
                  // setState...
                } else {
                  setState("Guntamatic_CO2_Gehalt_korrigiert", parts[8], true)
                }
                G Offline
                G Offline
                glitzi
                schrieb am zuletzt editiert von
                #29

                @AlCalzone

                Perfekt !!!

                1 Antwort Letzte Antwort
                0
                • AlCalzoneA AlCalzone

                  @glitzi setState ist asynchron - der Code läuft weiter, bevor der Wert in der Datenbank angekommen und per getState verfügbar ist.
                  Diese Korrekturen solltest du beim Auslesen auf Basis des geparsten Wertes schon machen, ohne den Umweg über die Datenbank.

                  also z.B. so:

                  if (parts[5] == 0) {
                    // setState...
                  } else {
                    setState("Guntamatic_CO2_Gehalt_korrigiert", parts[8], true)
                  }
                  G Offline
                  G Offline
                  glitzi
                  schrieb am zuletzt editiert von
                  #30

                  @AlCalzone @Homoran

                  kann mir eventuell einer von euch bei meinem nächsten Problem helfen ;-)

                  String seriell einlesen, Anfang finden und dann splitten und von HEX konvertieren

                  1 Antwort Letzte Antwort
                  0
                  • AlCalzoneA AlCalzone

                    @glitzi setState ist asynchron - der Code läuft weiter, bevor der Wert in der Datenbank angekommen und per getState verfügbar ist.
                    Diese Korrekturen solltest du beim Auslesen auf Basis des geparsten Wertes schon machen, ohne den Umweg über die Datenbank.

                    also z.B. so:

                    if (parts[5] == 0) {
                      // setState...
                    } else {
                      setState("Guntamatic_CO2_Gehalt_korrigiert", parts[8], true)
                    }
                    G Offline
                    G Offline
                    glitzi
                    schrieb am zuletzt editiert von glitzi
                    #31

                    @AlCalzone

                    Hallo,

                    ich lese die Daten ja wie folgt erfolgreich ein...

                    
                    function()
                    {
                    
                    var request= require('request');
                    request.post({
                      url:     'http://10.10.10.7/daqdata.cgi?key=xxxxxxxxxxxxxxxxxxxxxxx'
                    }, function(error, response, body){
                      if (body) {
                          
                          var parts = body.split('\n');
                    
                          var parts_Guntamatic = parts[0];
                          setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
                    .................
                    

                    jetzt werde leider keine Sonderzeichen, insbesondere Umlaute dargestellt, kann man da noch den Zeichensatz beim importieren vorgeben/wandeln?

                    Gruß Glitzi

                    AlCalzoneA 1 Antwort Letzte Antwort
                    0
                    • G glitzi

                      @AlCalzone

                      Hallo,

                      ich lese die Daten ja wie folgt erfolgreich ein...

                      
                      function()
                      {
                      
                      var request= require('request');
                      request.post({
                        url:     'http://10.10.10.7/daqdata.cgi?key=xxxxxxxxxxxxxxxxxxxxxxx'
                      }, function(error, response, body){
                        if (body) {
                            
                            var parts = body.split('\n');
                      
                            var parts_Guntamatic = parts[0];
                            setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
                      .................
                      

                      jetzt werde leider keine Sonderzeichen, insbesondere Umlaute dargestellt, kann man da noch den Zeichensatz beim importieren vorgeben/wandeln?

                      Gruß Glitzi

                      AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      schrieb am zuletzt editiert von AlCalzone
                      #32

                      @glitzi

                      request.post({
                        url:     'http://10.10.10.7/daqdata.cgi?key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
                        encoding: 'HIER DAS KORREKTE ENCODING'
                      }, ...
                      

                      Mögliche Werte findest du in https://nodejs.org/api/buffer.html#buffer_buffers_and_character_encodings

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      G 1 Antwort Letzte Antwort
                      1
                      • AlCalzoneA AlCalzone

                        @glitzi

                        request.post({
                          url:     'http://10.10.10.7/daqdata.cgi?key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
                          encoding: 'HIER DAS KORREKTE ENCODING'
                        }, ...
                        

                        Mögliche Werte findest du in https://nodejs.org/api/buffer.html#buffer_buffers_and_character_encodings

                        G Offline
                        G Offline
                        glitzi
                        schrieb am zuletzt editiert von
                        #33

                        @AlCalzone
                        noch zwei sachen,

                        da kommt leider

                        error	javascript.0 (11434) script.js.Guntamatic_Daten_aus_Http_Seite_Parsen compile failed: at script.js.Guntamatic_Daten_aus_Http_Seite_Parsen:29
                        

                        und könntest du noch den Key im vorigen Post löschen?

                        AlCalzoneA 1 Antwort Letzte Antwort
                        0
                        • G glitzi

                          @AlCalzone
                          noch zwei sachen,

                          da kommt leider

                          error	javascript.0 (11434) script.js.Guntamatic_Daten_aus_Http_Seite_Parsen compile failed: at script.js.Guntamatic_Daten_aus_Http_Seite_Parsen:29
                          

                          und könntest du noch den Key im vorigen Post löschen?

                          AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          schrieb am zuletzt editiert von
                          #34

                          @glitzi getan. Da fehlt ein Komma am Ende der url: ... Zeile

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          G 1 Antwort Letzte Antwort
                          0
                          • AlCalzoneA AlCalzone

                            @glitzi getan. Da fehlt ein Komma am Ende der url: ... Zeile

                            G Offline
                            G Offline
                            glitzi
                            schrieb am zuletzt editiert von
                            #35

                            @AlCalzone

                            DANKE

                            1 Antwort Letzte Antwort
                            0
                            • G glitzi

                              Hallo,

                              meine Finale Lösung ist jetzt doch ein Skript geworden...

                              
                              createState('Guntamatic_Betrieb_0');
                              createState('Guntamatic_Aussentemperatur_1');
                              createState('Guntamatic_Kesseltemperatur_3');
                              createState('Guntamatic_Leistung_5');
                              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_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_Brenstoffzähler_89');
                              createState('Guntamatic_Pufferladung_90');
                              createState('Guntamatic_CO2_Gehalt_korrigiert');
                              
                              var request= require('request');
                               
                              schedule("*/10 * * * * *",
                                
                              function()
                              {
                              
                              /*
                              für einige Werte wie Brennstoffverbrauch benötigt mein einen Key von Guntamatic
                                url:     'http://10.10.10.7/daqdata.cgi?key=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
                              */
                              
                              var request= require('request');
                              request.post({
                                url:     'http://10.10.10.7/daqdata.cgi'
                              }, function(error, response, body){
                                if (body) {
                                    
                                    var parts_Guntamatic = body.split('\n')[0];
                                    setState('Guntamatic_Betrieb_0', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[1];
                                    setState('Guntamatic_Aussentemperatur_1', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[3];
                                    setState('Guntamatic_Kesseltemperatur_3', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[5];
                                    setState('Guntamatic_Leistung_5', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[8];
                                    setState('Guntamatic_CO2_Gehalt_8', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[17];
                                    setState('Guntamatic_Puffer_oben_17', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[19];
                                    setState('Guntamatic_Puffer_unten_19', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[20];
                                    setState('Guntamatic_Pumpe_HP0_20', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[21];
                                    setState('Guntamatic_Warmwasser_21', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[31];
                                    setState('Guntamatic_Vorlauf_31', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[68];
                                    setState('Guntamatic_Kesselfreigabe_68', parts_Guntamatic, true);
                                    
                                    var parts_Guntamatic = body.split('\n')[69];
                                    setState('Guntamatic_Programm_69', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[71];
                                    setState('Guntamatic_Programm_HK1_71', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[79];
                                    setState('Guntamatic_Stoer0_79', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[80];
                                    setState('Guntamatic_Stoer1_80', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[85];
                                    setState('Guntamatic_Asche_entleeren_85', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[89];
                                    setState('Guntamatic_Brenstoffzähler_89', parts_Guntamatic, true);
                              
                                    var parts_Guntamatic = body.split('\n')[90];
                                    setState('Guntamatic_Pufferladung_90', parts_Guntamatic, true);
                                }
                              
                              
                              if (getState("Guntamatic_Leistung_5").val == 0)
                              {
                                  setState("Guntamatic_CO2_Gehalt_korrigiert" , 0, true);
                              }
                              else
                              {
                                  setState("Guntamatic_CO2_Gehalt_korrigiert",getState("Guntamatic_CO2_Gehalt_8").val);  
                              }
                              
                              
                              }); 
                               
                              }
                              )
                              
                              A Offline
                              A Offline
                              alex303
                              schrieb am zuletzt editiert von
                              #36

                              Hallo zusammen,

                              @glitzi
                              70eece0f-9847-4835-99f8-5ceab38783e6-image.png
                              woher bekommt man den Key?

                              Ich habe Version 3.1b, woher bekommt man ein update?

                              Sind die Werte mit der aktuellen Software Version immer noch im Klartext aus zu lesen?
                              Ich habe gelesen das Guntamatic die mittlerweile Verschlüsselt hat.

                              Kann man auch die Heizung über die Visu steuern?
                              Z.B. Pumpen EIN oder AUS schalten.

                              Gruß
                              Alexander

                              G 1 Antwort Letzte Antwort
                              0
                              • A alex303

                                Hallo zusammen,

                                @glitzi
                                70eece0f-9847-4835-99f8-5ceab38783e6-image.png
                                woher bekommt man den Key?

                                Ich habe Version 3.1b, woher bekommt man ein update?

                                Sind die Werte mit der aktuellen Software Version immer noch im Klartext aus zu lesen?
                                Ich habe gelesen das Guntamatic die mittlerweile Verschlüsselt hat.

                                Kann man auch die Heizung über die Visu steuern?
                                Z.B. Pumpen EIN oder AUS schalten.

                                Gruß
                                Alexander

                                G Offline
                                G Offline
                                glitzi
                                schrieb am zuletzt editiert von
                                #37

                                @alex303

                                Hallo,

                                • Software gibt es nur beim Heizungsbauer

                                • Den Key bekommt man auch nur über Guntamatic
                                  Siehe Formular
                                  Kundendaten_Schnittstellen_DE.doc

                                Beschreibung zur Schnittstelle, geht auch über Modbus TCP (Da gibt es nur keinen Störtext und der KEY wird benötigt)
                                WEB_MODBUS-Schnittstelle_DE-V03-0316.pdf

                                Modbus Mapping:
                                http://IP.IP.IP.IP/mbmap.cgi?key=xxxxx

                                Werte:
                                http://IP.IP.IP.IP/daqdata.cgi

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

                                Der unterschied (mit/ohne Key) ist folgender

                                e8cec26d-167f-4ac1-a0ae-c65508a7cb21-image.png

                                A 1 Antwort Letzte Antwort
                                0
                                • G glitzi

                                  @alex303

                                  Hallo,

                                  • Software gibt es nur beim Heizungsbauer

                                  • Den Key bekommt man auch nur über Guntamatic
                                    Siehe Formular
                                    Kundendaten_Schnittstellen_DE.doc

                                  Beschreibung zur Schnittstelle, geht auch über Modbus TCP (Da gibt es nur keinen Störtext und der KEY wird benötigt)
                                  WEB_MODBUS-Schnittstelle_DE-V03-0316.pdf

                                  Modbus Mapping:
                                  http://IP.IP.IP.IP/mbmap.cgi?key=xxxxx

                                  Werte:
                                  http://IP.IP.IP.IP/daqdata.cgi

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

                                  Der unterschied (mit/ohne Key) ist folgender

                                  e8cec26d-167f-4ac1-a0ae-c65508a7cb21-image.png

                                  A Offline
                                  A Offline
                                  alex303
                                  schrieb am zuletzt editiert von
                                  #38

                                  @glitzi

                                  Hallo,

                                  bei mir sieht die Beschreibung so aus:

                                  Betrieb;
                                  Aussentemperatur;°C
                                  reserved;
                                  Kesseltemperatur;°C
                                  reserved;
                                  Leistung;%
                                  reserved;
                                  reserved;
                                  CO2 Gehalt;%
                                  reserved;
                                  reserved;
                                  reserved;
                                  reserved;
                                  Saugzuggebläse;%
                                  reserved;
                                  Austragungsgebläse;%
                                  G1 soll;%
                                  Puffer oben;°C
                                  Puffer mitte;°C
                                  Puffer unten;°C
                                  Pumpe HP0;
                                  Warmwasser 0;°C
                                  P Warmwasser 0;
                                  Warmwasser 1;°C
                                  P Warmwasser 1;
                                  Warmwasser 2;°C
                                  P Warmwasser 2;
                                  Raumtemp. HK 0;°C
                                  Heizkreis 0;
                                  Raumtemp. HK 1;°C
                                  reserved;
                                  Vorlauf Ist 1;°C
                                  reserved;
                                  reserved;
                                  Raumtemp. HK 2;°C
                                  reserved;
                                  Vorlauf Ist 2;°C
                                  reserved;
                                  Heizkreis 2;
                                  Raumtemp. HK 3;°C
                                  Heizkreis 3;
                                  Raumtemp. HK 4;°C
                                  reserved;
                                  Vorlauf Ist 4;°C
                                  reserved;
                                  Heizkreis 4;
                                  Raumtemp. HK 5;°C
                                  reserved;
                                  Vorlauf Ist 5;°C
                                  reserved;
                                  Heizkreis 5;
                                  Raumtemp. HK 6;°C
                                  Heizkreis 6;
                                  Raumtemp. HK 7;°C
                                  reserved;
                                  Vorlauf Ist 7;°C
                                  reserved;
                                  Heizkreis 7;
                                  Raumtemp. HK 8;°C
                                  reserved;
                                  Vorlauf Ist 8;°C
                                  reserved;
                                  Heizkreis 8;
                                  reserved;
                                  reserved;
                                  reserved;
                                  reserved;
                                  reserved;
                                  reserved;
                                  Programm;
                                  Progamm HK0;
                                  Progamm HK1;
                                  Progamm HK2;
                                  Progamm HK3;
                                  Progamm HK4;
                                  Progamm HK5;
                                  Progamm HK6;
                                  Progamm HK7;
                                  Progamm HK8;
                                  Störung 0;
                                  Störung 1;
                                  Serial;
                                  Version;
                                  Betriebszeit;h
                                  Servicezeit;d
                                  Asche leeren in;h
                                  Vorlauf Ist 0;°C
                                  Vorlauf Ist 3;°C
                                  Vorlauf Ist 6;°C

                                  Das heißt über daqdata kann man nur die Werte für die Visu auslesen, um die Heizung zu steuern muss man über Modbus gehen.

                                  Welchen Unterschied gibt es vom Software Stand von 3.1b zu dem Aktuellen?
                                  Macht es sinn ein Update zu machen?

                                  Woher weis Du die ganzen Sachen?

                                  Vielen Dank für die Infos.

                                  Gruß
                                  Alexander

                                  O G 2 Antworten Letzte Antwort
                                  1
                                  • A alex303

                                    @glitzi

                                    Hallo,

                                    bei mir sieht die Beschreibung so aus:

                                    Betrieb;
                                    Aussentemperatur;°C
                                    reserved;
                                    Kesseltemperatur;°C
                                    reserved;
                                    Leistung;%
                                    reserved;
                                    reserved;
                                    CO2 Gehalt;%
                                    reserved;
                                    reserved;
                                    reserved;
                                    reserved;
                                    Saugzuggebläse;%
                                    reserved;
                                    Austragungsgebläse;%
                                    G1 soll;%
                                    Puffer oben;°C
                                    Puffer mitte;°C
                                    Puffer unten;°C
                                    Pumpe HP0;
                                    Warmwasser 0;°C
                                    P Warmwasser 0;
                                    Warmwasser 1;°C
                                    P Warmwasser 1;
                                    Warmwasser 2;°C
                                    P Warmwasser 2;
                                    Raumtemp. HK 0;°C
                                    Heizkreis 0;
                                    Raumtemp. HK 1;°C
                                    reserved;
                                    Vorlauf Ist 1;°C
                                    reserved;
                                    reserved;
                                    Raumtemp. HK 2;°C
                                    reserved;
                                    Vorlauf Ist 2;°C
                                    reserved;
                                    Heizkreis 2;
                                    Raumtemp. HK 3;°C
                                    Heizkreis 3;
                                    Raumtemp. HK 4;°C
                                    reserved;
                                    Vorlauf Ist 4;°C
                                    reserved;
                                    Heizkreis 4;
                                    Raumtemp. HK 5;°C
                                    reserved;
                                    Vorlauf Ist 5;°C
                                    reserved;
                                    Heizkreis 5;
                                    Raumtemp. HK 6;°C
                                    Heizkreis 6;
                                    Raumtemp. HK 7;°C
                                    reserved;
                                    Vorlauf Ist 7;°C
                                    reserved;
                                    Heizkreis 7;
                                    Raumtemp. HK 8;°C
                                    reserved;
                                    Vorlauf Ist 8;°C
                                    reserved;
                                    Heizkreis 8;
                                    reserved;
                                    reserved;
                                    reserved;
                                    reserved;
                                    reserved;
                                    reserved;
                                    Programm;
                                    Progamm HK0;
                                    Progamm HK1;
                                    Progamm HK2;
                                    Progamm HK3;
                                    Progamm HK4;
                                    Progamm HK5;
                                    Progamm HK6;
                                    Progamm HK7;
                                    Progamm HK8;
                                    Störung 0;
                                    Störung 1;
                                    Serial;
                                    Version;
                                    Betriebszeit;h
                                    Servicezeit;d
                                    Asche leeren in;h
                                    Vorlauf Ist 0;°C
                                    Vorlauf Ist 3;°C
                                    Vorlauf Ist 6;°C

                                    Das heißt über daqdata kann man nur die Werte für die Visu auslesen, um die Heizung zu steuern muss man über Modbus gehen.

                                    Welchen Unterschied gibt es vom Software Stand von 3.1b zu dem Aktuellen?
                                    Macht es sinn ein Update zu machen?

                                    Woher weis Du die ganzen Sachen?

                                    Vielen Dank für die Infos.

                                    Gruß
                                    Alexander

                                    O Offline
                                    O Offline
                                    orfix
                                    schrieb am zuletzt editiert von
                                    #39

                                    servus,

                                    ich hab die sw 32c
                                    mit key, sehe aber keinen unterschied bei der ausgabe?
                                    xxx.xxx.2.15/daqdata.cgi?key=xxxxxxxxxxxxxxxxxx

                                    was mache ich falsch?

                                    mfg

                                    orfix

                                    G 1 Antwort Letzte Antwort
                                    0
                                    • O orfix

                                      servus,

                                      ich hab die sw 32c
                                      mit key, sehe aber keinen unterschied bei der ausgabe?
                                      xxx.xxx.2.15/daqdata.cgi?key=xxxxxxxxxxxxxxxxxx

                                      was mache ich falsch?

                                      mfg

                                      orfix

                                      G Offline
                                      G Offline
                                      glitzi
                                      schrieb am zuletzt editiert von
                                      #40

                                      @orfix sagte in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

                                      servus,

                                      ich hab die sw 32c
                                      mit key, sehe aber keinen unterschied bei der ausgabe?
                                      xxx.xxx.2.15/daqdata.cgi?key=xxxxxxxxxxxxxxxxxx

                                      was mache ich falsch?

                                      mfg

                                      orfix

                                      Hast Du abhängig von deinem Kessel einen Code bei Guntamatic angefordert?

                                      Ohne oder mit falschen Code kommen keine anderen Daten.

                                      G O 2 Antworten Letzte Antwort
                                      0
                                      • A alex303

                                        @glitzi

                                        Hallo,

                                        bei mir sieht die Beschreibung so aus:

                                        Betrieb;
                                        Aussentemperatur;°C
                                        reserved;
                                        Kesseltemperatur;°C
                                        reserved;
                                        Leistung;%
                                        reserved;
                                        reserved;
                                        CO2 Gehalt;%
                                        reserved;
                                        reserved;
                                        reserved;
                                        reserved;
                                        Saugzuggebläse;%
                                        reserved;
                                        Austragungsgebläse;%
                                        G1 soll;%
                                        Puffer oben;°C
                                        Puffer mitte;°C
                                        Puffer unten;°C
                                        Pumpe HP0;
                                        Warmwasser 0;°C
                                        P Warmwasser 0;
                                        Warmwasser 1;°C
                                        P Warmwasser 1;
                                        Warmwasser 2;°C
                                        P Warmwasser 2;
                                        Raumtemp. HK 0;°C
                                        Heizkreis 0;
                                        Raumtemp. HK 1;°C
                                        reserved;
                                        Vorlauf Ist 1;°C
                                        reserved;
                                        reserved;
                                        Raumtemp. HK 2;°C
                                        reserved;
                                        Vorlauf Ist 2;°C
                                        reserved;
                                        Heizkreis 2;
                                        Raumtemp. HK 3;°C
                                        Heizkreis 3;
                                        Raumtemp. HK 4;°C
                                        reserved;
                                        Vorlauf Ist 4;°C
                                        reserved;
                                        Heizkreis 4;
                                        Raumtemp. HK 5;°C
                                        reserved;
                                        Vorlauf Ist 5;°C
                                        reserved;
                                        Heizkreis 5;
                                        Raumtemp. HK 6;°C
                                        Heizkreis 6;
                                        Raumtemp. HK 7;°C
                                        reserved;
                                        Vorlauf Ist 7;°C
                                        reserved;
                                        Heizkreis 7;
                                        Raumtemp. HK 8;°C
                                        reserved;
                                        Vorlauf Ist 8;°C
                                        reserved;
                                        Heizkreis 8;
                                        reserved;
                                        reserved;
                                        reserved;
                                        reserved;
                                        reserved;
                                        reserved;
                                        Programm;
                                        Progamm HK0;
                                        Progamm HK1;
                                        Progamm HK2;
                                        Progamm HK3;
                                        Progamm HK4;
                                        Progamm HK5;
                                        Progamm HK6;
                                        Progamm HK7;
                                        Progamm HK8;
                                        Störung 0;
                                        Störung 1;
                                        Serial;
                                        Version;
                                        Betriebszeit;h
                                        Servicezeit;d
                                        Asche leeren in;h
                                        Vorlauf Ist 0;°C
                                        Vorlauf Ist 3;°C
                                        Vorlauf Ist 6;°C

                                        Das heißt über daqdata kann man nur die Werte für die Visu auslesen, um die Heizung zu steuern muss man über Modbus gehen.

                                        Welchen Unterschied gibt es vom Software Stand von 3.1b zu dem Aktuellen?
                                        Macht es sinn ein Update zu machen?

                                        Woher weis Du die ganzen Sachen?

                                        Vielen Dank für die Infos.

                                        Gruß
                                        Alexander

                                        G Offline
                                        G Offline
                                        glitzi
                                        schrieb am zuletzt editiert von glitzi
                                        #41

                                        @alex303 sagte in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

                                        @glitzi

                                        Hallo,

                                        bei mir sieht die Beschreibung so aus:

                                        Die Beschreibung kann natürlich von Kessel zu Kessel unterschiedlich sein, ich habe einen BIOSTAR 17

                                        Betrieb;
                                        Aussentemperatur;°C
                                        ...

                                        Das heißt über daqdata kann man nur die Werte für die Visu auslesen, um die Heizung zu steuern muss man über Modbus gehen.

                                        Ja über die Seite bekommt man nur die Werte.

                                        Über diese Funktion sollte man auch steuern können, habe ich aber noch nicht probiert. (Steht auch im oben verlinktem Dokument / Seite 3-5)
                                        036f2175-b9fb-43c6-ac97-19dcd4239771-image.png

                                        Welchen Unterschied gibt es vom Software Stand von 3.1b zu dem Aktuellen?
                                        Macht es sinn ein Update zu machen?

                                        Das Kann Dir nur Dein Heizungsbauer oder Guntamtic sagen ;-)

                                        Woher weis Du die ganzen Sachen?

                                        Die Dokumente habe ich ja oben verlinkt, wenn man etwas sucht findet man diese im Netz oder bekommt sie mit etwas glück von Guntamtic.

                                        Vielen Dank für die Infos.

                                        Gruß
                                        Alexander

                                        1 Antwort Letzte Antwort
                                        0
                                        • G glitzi

                                          @orfix sagte in Parser Adapter Werte Zeilenweise auslesen (Guntamatic):

                                          servus,

                                          ich hab die sw 32c
                                          mit key, sehe aber keinen unterschied bei der ausgabe?
                                          xxx.xxx.2.15/daqdata.cgi?key=xxxxxxxxxxxxxxxxxx

                                          was mache ich falsch?

                                          mfg

                                          orfix

                                          Hast Du abhängig von deinem Kessel einen Code bei Guntamatic angefordert?

                                          Ohne oder mit falschen Code kommen keine anderen Daten.

                                          G Offline
                                          G Offline
                                          glitzi
                                          schrieb am zuletzt editiert von glitzi
                                          #42

                                          @glitzi

                                          Ja oben genanntes Dokument mit Daten an Guntamatic Mailen, die senden dann den Code, die Daten stehen im Menü der Heizung. Ohne passenden Code gibt es nur den kleinen Datensatz.

                                          42cedae4-c049-4e40-b841-692893970a2d-image.png d20a6e30-0875-4d12-b410-40edb6da41d3-image.png

                                          A 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

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

                                          417

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe