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. Skripten / Logik
  4. Problem mit getStateAsync

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

Problem mit getStateAsync

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
27 Beiträge 4 Kommentatoren 2.6k Aufrufe 3 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.
  • A Offline
    A Offline
    Automatisierer 0
    schrieb am zuletzt editiert von
    #1

    Hallo,

    Ich habe ein Problem mit getStateAsync.

    Der Script sieht so aus:

    // DP ezeugen und Initialisierung
    createState("0_userdata.0.Debug.Therme_-Heizkreis_1_Vorlaufemperatur(R)old", 0);
    setState("0_userdata.0.Debug.Therme
    -Heizkreis_1_Vorlaufemperatur(R)_old", 12);

    // Vorlauftemperatur Heizkreis geändert
    on({id: "knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)", change: "any"}, async function (obj) {
    var value = obj.state.val;

    var MyoldValue = (await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)_old")).val;
    sendTo("pushover", "send", {message: "---Lesen OLD", sound: "" });
    sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Old: " + MyoldValue + "-", sound: "" });
    sendTo("pushover", "send", {message: "---Gelesen OLD", sound: "" });
    sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Aktuell: " + value, sound: "" });
    sendTo("pushover", "send", {message: "---333333", sound: "" });

    // old_value setzen
    await setStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)_old", value);
    })

    Es kommt die folgende fehlermeldungwenn das Script aufgerufen wird:
    script.js._Automation: TypeError: Cannot read property 'val' of null

    Frage 1:
    Was mache ich falsch?
    Frage 2:
    Gibt es irgendwo eine Beispielsammlung oder eine Einführung für Dummys wie man die Async Functions richtig anwendet?
    Frage 3:
    Die Reihenfolge der angezeigten Pushover Nachrichtenam Handy ist durcheinandergewürfelt.
    Wenn ich schreibe:
    async sendTo("pushover", "send", {message: "---Lesen OLD", sound: "" });
    dann mag der Compiler das nicht
    Wie mache ich das richtig ?

    ? haus-automatisierungH 2 Antworten Letzte Antwort
    0
    • A Automatisierer 0

      Hallo,

      Ich habe ein Problem mit getStateAsync.

      Der Script sieht so aus:

      // DP ezeugen und Initialisierung
      createState("0_userdata.0.Debug.Therme_-Heizkreis_1_Vorlaufemperatur(R)old", 0);
      setState("0_userdata.0.Debug.Therme
      -Heizkreis_1_Vorlaufemperatur(R)_old", 12);

      // Vorlauftemperatur Heizkreis geändert
      on({id: "knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)", change: "any"}, async function (obj) {
      var value = obj.state.val;

      var MyoldValue = (await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)_old")).val;
      sendTo("pushover", "send", {message: "---Lesen OLD", sound: "" });
      sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Old: " + MyoldValue + "-", sound: "" });
      sendTo("pushover", "send", {message: "---Gelesen OLD", sound: "" });
      sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Aktuell: " + value, sound: "" });
      sendTo("pushover", "send", {message: "---333333", sound: "" });

      // old_value setzen
      await setStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)_old", value);
      })

      Es kommt die folgende fehlermeldungwenn das Script aufgerufen wird:
      script.js._Automation: TypeError: Cannot read property 'val' of null

      Frage 1:
      Was mache ich falsch?
      Frage 2:
      Gibt es irgendwo eine Beispielsammlung oder eine Einführung für Dummys wie man die Async Functions richtig anwendet?
      Frage 3:
      Die Reihenfolge der angezeigten Pushover Nachrichtenam Handy ist durcheinandergewürfelt.
      Wenn ich schreibe:
      async sendTo("pushover", "send", {message: "---Lesen OLD", sound: "" });
      dann mag der Compiler das nicht
      Wie mache ich das richtig ?

      ? Offline
      ? Offline
      Ein ehemaliger Benutzer
      schrieb am zuletzt editiert von
      #2

      @automatisierer-0
      Pack Bitte Code Schnipsel nächstes mal in Code Tags. So ist es fast unmöglich den Code zu lesen. Aber ich glaube du hattest eine Klammer Zuviel. Probiere es mal so:

      var MyoldValue = await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)_old").val;
      
      A 1 Antwort Letzte Antwort
      0
      • ? Ein ehemaliger Benutzer

        @automatisierer-0
        Pack Bitte Code Schnipsel nächstes mal in Code Tags. So ist es fast unmöglich den Code zu lesen. Aber ich glaube du hattest eine Klammer Zuviel. Probiere es mal so:

        var MyoldValue = await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)_old").val;
        
        A Offline
        A Offline
        Automatisierer 0
        schrieb am zuletzt editiert von
        #3

        @ciddi89
        Nein, so wie du schreibst gehts nicht --> Compilerfehler
        Was soll ich machen für die von dir gewünschten Code Tags?? Wie geht das?

        ? 1 Antwort Letzte Antwort
        0
        • A Automatisierer 0

          @ciddi89
          Nein, so wie du schreibst gehts nicht --> Compilerfehler
          Was soll ich machen für die von dir gewünschten Code Tags?? Wie geht das?

          ? Offline
          ? Offline
          Ein ehemaliger Benutzer
          schrieb am zuletzt editiert von
          #4

          @automatisierer-0 dann pack das mal in Code Tags damit man das lesen kann…

          B6794C66-858A-4C75-9E91-90CC4E6C4824.jpeg

          1 Antwort Letzte Antwort
          0
          • paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #5

            @automatisierer-0 sagte: Was mache ich falsch?

            Ich finde getStateAsync() nicht in der Funktionsdokumentation.

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            A 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @automatisierer-0 sagte: Was mache ich falsch?

              Ich finde getStateAsync() nicht in der Funktionsdokumentation.

              A Offline
              A Offline
              Automatisierer 0
              schrieb am zuletzt editiert von
              #6

              @paul53
              Ich auch nicht, daher meine Frage 2
              74f1ef3f-fc57-4ac2-896a-7bb1e28c9f39-grafik.png

              // DP ezeugen und Initialisierung
              createState("0_userdata.0.Debug.Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old", 0);
              setState("0_userdata.0.Debug.Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old", 12); 
              
              // Vorlauftemperatur Heizkreis geändert
              on({id: "knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)", change: "any"}, async function (obj) {
                var value = obj.state.val
               
                var MyoldValue = (await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old")).val; 
                sendTo("pushover", "send", {message: "---Lesen OLD", sound: "" }); 
                sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Old: " + MyoldValue + "-", sound: "" });
                sendTo("pushover", "send", {message: "---Gelesen OLD", sound: "" }); 
                sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Aktuell: " + value, sound: "" });     
                sendTo("pushover", "send", {message: "---333333", sound: "" }); 
              
                // old_value setzen
                await setStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old", value);   
              
              })
              
              ? paul53P 2 Antworten Letzte Antwort
              0
              • A Automatisierer 0

                @paul53
                Ich auch nicht, daher meine Frage 2
                74f1ef3f-fc57-4ac2-896a-7bb1e28c9f39-grafik.png

                // DP ezeugen und Initialisierung
                createState("0_userdata.0.Debug.Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old", 0);
                setState("0_userdata.0.Debug.Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old", 12); 
                
                // Vorlauftemperatur Heizkreis geändert
                on({id: "knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)", change: "any"}, async function (obj) {
                  var value = obj.state.val
                 
                  var MyoldValue = (await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old")).val; 
                  sendTo("pushover", "send", {message: "---Lesen OLD", sound: "" }); 
                  sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Old: " + MyoldValue + "-", sound: "" });
                  sendTo("pushover", "send", {message: "---Gelesen OLD", sound: "" }); 
                  sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Aktuell: " + value, sound: "" });     
                  sendTo("pushover", "send", {message: "---333333", sound: "" }); 
                
                  // old_value setzen
                  await setStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old", value);   
                
                })
                
                ? Offline
                ? Offline
                Ein ehemaliger Benutzer
                schrieb am zuletzt editiert von
                #7

                @automatisierer-0 getStateAsync gibt es. Nutze es auch in einem Script. Versuche es mal so: So ist es in meinem script auch.

                const MyoldObj = await getStateAsync(`knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old`);
                let MyoldValue = MyoldObj.val;
                
                1 Antwort Letzte Antwort
                0
                • A Automatisierer 0

                  @paul53
                  Ich auch nicht, daher meine Frage 2
                  74f1ef3f-fc57-4ac2-896a-7bb1e28c9f39-grafik.png

                  // DP ezeugen und Initialisierung
                  createState("0_userdata.0.Debug.Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old", 0);
                  setState("0_userdata.0.Debug.Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old", 12); 
                  
                  // Vorlauftemperatur Heizkreis geändert
                  on({id: "knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)", change: "any"}, async function (obj) {
                    var value = obj.state.val
                   
                    var MyoldValue = (await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old")).val; 
                    sendTo("pushover", "send", {message: "---Lesen OLD", sound: "" }); 
                    sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Old: " + MyoldValue + "-", sound: "" });
                    sendTo("pushover", "send", {message: "---Gelesen OLD", sound: "" }); 
                    sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Aktuell: " + value, sound: "" });     
                    sendTo("pushover", "send", {message: "---333333", sound: "" }); 
                  
                    // old_value setzen
                    await setStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old", value);   
                  
                  })
                  
                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von paul53
                  #8

                  @automatisierer-0
                  Im Javascript-Adapter ist die Funktion allerdings implementiert.
                  Weshalb möchtest Du getStateAsync() verwenden? Hast Du den Puffer in der Javascript-Instanz deaktiviert?

                  var MyoldValue = (await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old")).val;
                  

                  Die Klammern sind falsch.

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  A 2 Antworten Letzte Antwort
                  0
                  • A Automatisierer 0

                    Hallo,

                    Ich habe ein Problem mit getStateAsync.

                    Der Script sieht so aus:

                    // DP ezeugen und Initialisierung
                    createState("0_userdata.0.Debug.Therme_-Heizkreis_1_Vorlaufemperatur(R)old", 0);
                    setState("0_userdata.0.Debug.Therme
                    -Heizkreis_1_Vorlaufemperatur(R)_old", 12);

                    // Vorlauftemperatur Heizkreis geändert
                    on({id: "knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)", change: "any"}, async function (obj) {
                    var value = obj.state.val;

                    var MyoldValue = (await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)_old")).val;
                    sendTo("pushover", "send", {message: "---Lesen OLD", sound: "" });
                    sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Old: " + MyoldValue + "-", sound: "" });
                    sendTo("pushover", "send", {message: "---Gelesen OLD", sound: "" });
                    sendTo("pushover", "send", {message: "--- Callback Heizkreis Vorlauftemp Aktuell: " + value, sound: "" });
                    sendTo("pushover", "send", {message: "---333333", sound: "" });

                    // old_value setzen
                    await setStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)_old", value);
                    })

                    Es kommt die folgende fehlermeldungwenn das Script aufgerufen wird:
                    script.js._Automation: TypeError: Cannot read property 'val' of null

                    Frage 1:
                    Was mache ich falsch?
                    Frage 2:
                    Gibt es irgendwo eine Beispielsammlung oder eine Einführung für Dummys wie man die Async Functions richtig anwendet?
                    Frage 3:
                    Die Reihenfolge der angezeigten Pushover Nachrichtenam Handy ist durcheinandergewürfelt.
                    Wenn ich schreibe:
                    async sendTo("pushover", "send", {message: "---Lesen OLD", sound: "" });
                    dann mag der Compiler das nicht
                    Wie mache ich das richtig ?

                    haus-automatisierungH Online
                    haus-automatisierungH Online
                    haus-automatisierung
                    Developer Most Active
                    schrieb am zuletzt editiert von haus-automatisierung
                    #9

                    Das Script stimmt ja erstmal, aber ist der State auch wirklich gesetzt / enthält einen Wert? Wenn man ein neues Objekt vom Typ state anlegt, dann ist dort erstmal kein State gespeichert und man bekommt null.

                    @automatisierer-0 sagte in Problem mit getStateAsync:

                    script.js._Automation: TypeError: Cannot read property 'val' of null

                    Denn: Da kam ja null zurück. Also darauf prüfen:

                    const state = await getStateAsync(`knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old`);
                    
                    if (state) {
                        const value = state.val;
                    }
                    

                    @automatisierer-0 sagte in Problem mit getStateAsync:

                    Die Reihenfolge der angezeigten Pushover Nachrichtenam Handy ist durcheinandergewürfelt.

                    Dann musst du mit await sendToAsync() arbeiten und auf das Ergebnis warten.

                    🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                    🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                    📚 Meine inoffizielle ioBroker Dokumentation

                    A 1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @automatisierer-0
                      Im Javascript-Adapter ist die Funktion allerdings implementiert.
                      Weshalb möchtest Du getStateAsync() verwenden? Hast Du den Puffer in der Javascript-Instanz deaktiviert?

                      var MyoldValue = (await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old")).val;
                      

                      Die Klammern sind falsch.

                      A Offline
                      A Offline
                      Automatisierer 0
                      schrieb am zuletzt editiert von
                      #10

                      @paul53
                      Wie ist es richtig?

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • A Automatisierer 0

                        @paul53
                        Wie ist es richtig?

                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von paul53
                        #11

                        @automatisierer-0 sagte: Wie ist es richtig?

                        var MyoldValue = await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old").val;
                        

                        Vielleicht kann man mit .val auch erst nachträglich auf das Objekt zugreifen? Wie @ciddi89 gezeigt hat:

                        const MyoldObj = await getStateAsync('knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old');
                        let MyoldValue = MyoldObj.val;
                        

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        A 2 Antworten Letzte Antwort
                        0
                        • paul53P paul53

                          @automatisierer-0 sagte: Wie ist es richtig?

                          var MyoldValue = await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old").val;
                          

                          Vielleicht kann man mit .val auch erst nachträglich auf das Objekt zugreifen? Wie @ciddi89 gezeigt hat:

                          const MyoldObj = await getStateAsync('knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old');
                          let MyoldValue = MyoldObj.val;
                          
                          A Offline
                          A Offline
                          Automatisierer 0
                          schrieb am zuletzt editiert von
                          #12

                          @paul53 said in Problem mit getStateAsync:

                          var MyoldValue = await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-TH-Therme-Heizkreis_1_Vorlaufemperatur(R)_old").val;

                          NEIN: bringt Compilerfehler

                          1 Antwort Letzte Antwort
                          0
                          • paul53P paul53

                            @automatisierer-0 sagte: Wie ist es richtig?

                            var MyoldValue = await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old").val;
                            

                            Vielleicht kann man mit .val auch erst nachträglich auf das Objekt zugreifen? Wie @ciddi89 gezeigt hat:

                            const MyoldObj = await getStateAsync('knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old');
                            let MyoldValue = MyoldObj.val;
                            
                            A Offline
                            A Offline
                            Automatisierer 0
                            schrieb am zuletzt editiert von
                            #13

                            @paul53 said in Problem mit getStateAsync:

                            const MyoldObj = await getStateAsync(knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old);

                            NEIN: Gleicher Fehler, funktioniert nicht

                            paul53P 1 Antwort Letzte Antwort
                            0
                            • A Automatisierer 0

                              @paul53 said in Problem mit getStateAsync:

                              const MyoldObj = await getStateAsync(knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old);

                              NEIN: Gleicher Fehler, funktioniert nicht

                              paul53P Offline
                              paul53P Offline
                              paul53
                              schrieb am zuletzt editiert von
                              #14

                              @automatisierer-0 sagte: funktioniert nicht

                              Tausche die ` gegen Hochkommata aus.

                              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                              1 Antwort Letzte Antwort
                              0
                              • haus-automatisierungH haus-automatisierung

                                Das Script stimmt ja erstmal, aber ist der State auch wirklich gesetzt / enthält einen Wert? Wenn man ein neues Objekt vom Typ state anlegt, dann ist dort erstmal kein State gespeichert und man bekommt null.

                                @automatisierer-0 sagte in Problem mit getStateAsync:

                                script.js._Automation: TypeError: Cannot read property 'val' of null

                                Denn: Da kam ja null zurück. Also darauf prüfen:

                                const state = await getStateAsync(`knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old`);
                                
                                if (state) {
                                    const value = state.val;
                                }
                                

                                @automatisierer-0 sagte in Problem mit getStateAsync:

                                Die Reihenfolge der angezeigten Pushover Nachrichtenam Handy ist durcheinandergewürfelt.

                                Dann musst du mit await sendToAsync() arbeiten und auf das Ergebnis warten.

                                A Offline
                                A Offline
                                Automatisierer 0
                                schrieb am zuletzt editiert von
                                #15

                                @haus-automatisierung said in Problem mit getStateAsync:

                                Dann musst du mit await sendToAsync() arbeiten und auf das Ergebnis warten.

                                Kannst du mir bitte die Codezeile schreiben wie es richtg sein soll?
                                Die Alte ist:

                                sendTo("pushover", "send", {message: "---Lesen OLD", sound: "" }); 
                                
                                haus-automatisierungH 1 Antwort Letzte Antwort
                                0
                                • paul53P paul53

                                  @automatisierer-0
                                  Im Javascript-Adapter ist die Funktion allerdings implementiert.
                                  Weshalb möchtest Du getStateAsync() verwenden? Hast Du den Puffer in der Javascript-Instanz deaktiviert?

                                  var MyoldValue = (await getStateAsync("knx.0.Heizung_und_Temp_(HZ).Alles_(Zentral).HZ_-_TH_-_Therme_-_Heizkreis_1_Vorlaufemperatur_(R)_old")).val;
                                  

                                  Die Klammern sind falsch.

                                  A Offline
                                  A Offline
                                  Automatisierer 0
                                  schrieb am zuletzt editiert von
                                  #16

                                  @paul53 said in Problem mit getStateAsync:

                                  Hast Du den Puffer in der Javascript-Instanz deaktiviert?

                                  Nein. Bitte wie mache ich das ?

                                  ? 1 Antwort Letzte Antwort
                                  0
                                  • A Automatisierer 0

                                    @haus-automatisierung said in Problem mit getStateAsync:

                                    Dann musst du mit await sendToAsync() arbeiten und auf das Ergebnis warten.

                                    Kannst du mir bitte die Codezeile schreiben wie es richtg sein soll?
                                    Die Alte ist:

                                    sendTo("pushover", "send", {message: "---Lesen OLD", sound: "" }); 
                                    
                                    haus-automatisierungH Online
                                    haus-automatisierungH Online
                                    haus-automatisierung
                                    Developer Most Active
                                    schrieb am zuletzt editiert von
                                    #17

                                    @automatisierer-0 sagte in Problem mit getStateAsync:

                                    Kannst du mir bitte die Codezeile schreiben wie es richtg sein soll?

                                    Na

                                    await sendToAsync("pushover", "send", { message: "---Lesen OLD", sound: "" });
                                    

                                    🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                    🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                    📚 Meine inoffizielle ioBroker Dokumentation

                                    A 1 Antwort Letzte Antwort
                                    0
                                    • A Automatisierer 0

                                      @paul53 said in Problem mit getStateAsync:

                                      Hast Du den Puffer in der Javascript-Instanz deaktiviert?

                                      Nein. Bitte wie mache ich das ?

                                      ? Offline
                                      ? Offline
                                      Ein ehemaliger Benutzer
                                      schrieb am zuletzt editiert von
                                      #18

                                      @automatisierer-0 das mit den Puffer lass mal sein.
                                      Frage: Warum muss es unbedingt async sein? Hier reicht der ganz normale getState aus. Finde merkwürdig das du ein Compiler Fehler bekommst. Was sagt der genau? Hab es in mehreren scripts genau so und da kommt kein Fehler. Steht da wirklich schon was im Datenpunkt drin den du abfragen möchtest? Finde keine Antwort auf die Frage die Hausautomatisierung dir gestellt hat.

                                      1 Antwort Letzte Antwort
                                      0
                                      • haus-automatisierungH haus-automatisierung

                                        @automatisierer-0 sagte in Problem mit getStateAsync:

                                        Kannst du mir bitte die Codezeile schreiben wie es richtg sein soll?

                                        Na

                                        await sendToAsync("pushover", "send", { message: "---Lesen OLD", sound: "" });
                                        
                                        A Offline
                                        A Offline
                                        Automatisierer 0
                                        schrieb am zuletzt editiert von
                                        #19

                                        @haus-automatisierung said in Problem mit getStateAsync:

                                        await sendToAsync("pushover", "send", { message: "---Lesen OLD", sound: "" });

                                        Image 029.jpg

                                        haus-automatisierungH 1 Antwort Letzte Antwort
                                        0
                                        • A Automatisierer 0

                                          @haus-automatisierung said in Problem mit getStateAsync:

                                          await sendToAsync("pushover", "send", { message: "---Lesen OLD", sound: "" });

                                          Image 029.jpg

                                          haus-automatisierungH Online
                                          haus-automatisierungH Online
                                          haus-automatisierung
                                          Developer Most Active
                                          schrieb am zuletzt editiert von haus-automatisierung
                                          #20

                                          @automatisierer-0 Naja, die Doku und Type Definition ist scheinbar nicht ganz vollständig (hatten wir ja oben schon). Soll ich auf die Stelle im GitHub Repo verlinken, dass es die Funktion gibt? :)

                                          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                          📚 Meine inoffizielle ioBroker Dokumentation

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          776

                                          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