Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst] Skriptfehler nach iobroker Update

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Skriptfehler nach iobroker Update

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      mwolle last edited by mwolle

      Hallo zusammen, ich habe mein iobroker mal auf den neusten Stand gebracht:
      js-controller = 5.0.8
      npm = 9.5.1
      node 18.6.1
      javaskript Adapter = 7.1.1

      Seit dem bekomme ich aber diese Fehlermeldung, obwohl die States mit Values da sind:

      2023-07-24 23:00:00.025 - warn: javascript.0 (2968) State "km200:heatingCircuits.hc2.activeSwitchProgram" not found
      2023-07-24 23:00:00.027 - warn: javascript.0 (2968) at setState (C:\Program Files\iobroker\SmartHomeneu\node_modules\iobroker.javascript\lib\sandbox.js:1730:20)
      2023-07-24 23:00:00.028 - warn: javascript.0 (2968) at Object.cb (script.js.common.Heizprogram_dyn:43:6)
      2023-07-24 23:00:00.028 - warn: javascript.0 (2968) at Immediate._onImmediate (C:\Program Files\iobroker\SmartHomeneu\node_modules\iobroker.javascript\lib\scheduler.js:96:109)
      2023-07-24 23:00:00.029 - warn: javascript.0 (2968) at processImmediate (node:internal/timers:478:21)
      2023-07-24 23:00:00.029 - warn: javascript.0 (2968) State "km200:heatingCircuits.hc1.activeSwitchProgram" not found
      2023-07-24 23:00:00.030 - warn: javascript.0 (2968) at setState (C:\Program Files\iobroker\SmartHomeneu\node_modules\iobroker.javascript\lib\sandbox.js:1730:20)
      2023-07-24 23:00:00.031 - warn: javascript.0 (2968) at Object.cb (script.js.common.Heizprogram_dyn:44:6)
      2023-07-24 23:00:00.031 - warn: javascript.0 (2968) at Immediate._onImmediate (C:\Program Files\iobroker\SmartHomeneu\node_modules\iobroker.javascript\lib\scheduler.js:96:109)
      2023-07-24 23:00:00.032 - warn: javascript.0 (2968) at processImmediate (node:internal/timers:478:21)
      2023-07-24 23:00:00.032 - warn: javascript.0 (2968) State "km200:heatingCircuits.hc2.temperatureLevels.high" not found
      2023-07-24 23:00:00.033 - warn: javascript.0 (2968) at setState (C:\Program Files\iobroker\SmartHomeneu\node_modules\iobroker.javascript\lib\sandbox.js:1730:20)
      2023-07-24 23:00:00.034 - warn: javascript.0 (2968) at Object.cb (script.js.common.Heizprogram_dyn:57:11)
      2023-07-24 23:00:00.034 - warn: javascript.0 (2968) at Immediate._onImmediate (C:\Program Files\iobroker\SmartHomeneu\node_modules\iobroker.javascript\lib\scheduler.js:96:109)
      2023-07-24 23:00:00.035 - warn: javascript.0 (2968) at processImmediate (node:internal/timers:478:21)
      2023-07-24 23:00:00.035 - warn: javascript.0 (2968) State "km200:heatingCircuits.hc1.temperatureLevels.high" not found
      2023-07-24 23:00:00.038 - warn: javascript.0 (2968) at setState (C:\Program Files\iobroker\SmartHomeneu\node_modules\iobroker.javascript\lib\sandbox.js:1730:20)
      2023-07-24 23:00:00.038 - warn: javascript.0 (2968) at Object.cb (script.js.common.Heizprogram_dyn:58:11)
      2023-07-24 23:00:00.039 - warn: javascript.0 (2968) at Immediate._onImmediate (C:\Program Files\iobroker\SmartHomeneu\node_modules\iobroker.javascript\lib\scheduler.js:96:109)
      2023-07-24 23:00:00.039 - warn: javascript.0 (2968) at processImmediate (node:internal/timers:478:21)
      2023-07-24 23:00:00.040 - info: javascript.0 (2968) script.js.common.Heizprogram_dyn: 24
      2023-07-24 23:00:00.041 - warn: javascript.0 (2968) getState "km200:heatingCircuits.hc2.activeSwitchProgram" not found (3)
      2023-07-24 23:00:00.043 - warn: javascript.0 (2968) at Object.cb (script.js.common.Heizprogram_dyn:65:15)
      2023-07-24 23:00:00.043 - warn: javascript.0 (2968) at Immediate._onImmediate (C:\Program Files\iobroker\SmartHomeneu\node_modules\iobroker.javascript\lib\scheduler.js:96:109)
      2023-07-24 23:00:00.044 - warn: javascript.0 (2968) at processImmediate (node:internal/timers:478:21)
      

      ich kann nicht so das Problem nachvollziehen...es hat ja auch vorher alles funktioniert.

      Homoran arteck 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @mwolle last edited by Homoran

        @mwolle sagte in Skriptfehler nach iobroker Update:

        hat ja auch vorher alles funktioniert.

        @mwolle sagte in Skriptfehler nach iobroker Update:

        js-controller = 5.0.8

        ist eine Version für Beta-Tester

        @mwolle sagte in Skriptfehler nach iobroker Update:

        javaskript Adapter = 7.1.1

        ist eine Version für Beta-Tester

        bitte in den entsprechenden Beta-Tester Threads melden

        und sollte es Windows sein, bitte solche Informationen in den Eröffnungspost oder in den Threadtitel
        https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1

        1 Reply Last reply Reply Quote 0
        • arteck
          arteck Developer Most Active @mwolle last edited by arteck

          @mwolle sagte in Skriptfehler nach iobroker Update:

          2023-07-24 23:00:00.025 - warn: javascript.0 (2968) State "km200:heatingCircuits.hc2.activeSwitchProgram" not found

          zeigmal im screenshot diesen Datenpunkt

          @Homoran hat nix mit js-controller zu tun

          M 1 Reply Last reply Reply Quote 0
          • M
            mwolle @arteck last edited by

            @arteck
            49561654-f515-4c08-8cdf-e87dad2207d8-image.png

            T 1 Reply Last reply Reply Quote 0
            • T
              ticaki Developer @mwolle last edited by ticaki

              @mwolle
              im Screenshot fehlt "km200:heatingCircuits." und das wohl fehlende "0." oder "javascript.0."

              M 1 Reply Last reply Reply Quote 0
              • M
                mwolle @ticaki last edited by

                @ticaki hier noch mal von hc1, der Pfad sieht für mich vollständig aus:
                d06d542d-00f2-4262-ba37-3698a2069980-image.png

                javascript.0 ist die Instanz

                arteck 1 Reply Last reply Reply Quote 0
                • arteck
                  arteck Developer Most Active @mwolle last edited by arteck

                  @mwolle wo ist der knoten davor ??

                  km200: heatingCircuits.hc2.activeSwitchProgram

                  zeigmal das getState von dem Datenpunkt im Script.. oder zeig das Script mal

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    mwolle @arteck last edited by

                    @arteck der ganze Pfad sieht so aus. Der Adapter liest zwei Geräte aus, die dann in separaten Pfaden da gestellt werden, EMS-ESP und km200
                    a8e62dcc-2337-44ac-baa2-cc5651f3d609-image.png

                    arteck 1 Reply Last reply Reply Quote 0
                    • arteck
                      arteck Developer Most Active @mwolle last edited by

                      @mwolle sagte in Skriptfehler nach iobroker Update:

                      Der Adapter liest zwei Geräte aus,

                      zeigmal das Script

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        mwolle @arteck last edited by

                        @arteck ist etwas unaufgeräumt...

                        //createState("javascript.0.Merker_Heizleistung", 0, {
                        //    name: "Merker_Heizleistung",
                        //    type: 'int'
                        //});
                        
                        on({
                            id: "javascript.0.minutenZwischenBrennerStarts",
                            change: "ne"
                        }, async function (obj) {
                            var Element2 = (getState("javascript.0.Merker_Heizleistung").val);
                            // var Element3;
                            var Counterschleife = 0;
                            var Leistungswert2 = 41; // (getState("km200.0.heatSources.actualModulation").val);
                            var Heat_on = (getState("km200:heatSources.hs1.flameStatus").val);
                            var WWtemperatur = (getState("ems-esp.0.dhwCircuits.dhw1.wwcurtemp").val);
                            var Leistungswert = (getState("km200:heatSources.hs1.burnerModulationSetpoint").val);
                            var Brennerstarts = (getState("javascript.0.minutenZwischenBrennerStarts").val);
                            var actualPower = (getState("km200:heatSources.hs1.actualPower").val);
                            // var Raumtemperatur = (getState("fritzdect.0.DECT_116300132384.celsius").val);
                            // Weitere Prüfung auf Heizprogramm, Programm soll nur laufen, wenn Heizung aktiv ist
                               var Zeit = new Date();
                                var Stunden = Zeit.getHours();
                                var Minuten = Zeit.getMinutes();
                                var Minuten_Tag = (Stunden * 60) + Minuten;
                        
                                var temp = 360; //Heizprogramm_E[703]; // 300 Minuten ab Mitternacht -> 5 Uhr
                                var temp_2 = 1200; //Heizprogramm_E[45]; // 1200 Minuten ab Mitternacht -> 20 Uhr geht Heizung aus
                        
                        console.log(WWtemperatur);
                        console.log(Leistungswert);
                        console.log(actualPower);
                        console.log(Leistungswert2);
                                
                            if (actualPower <= Leistungswert && actualPower <= Leistungswert2 && WWtemperatur < 41){ // Prüfen ob Leistung für Warmwasser ist
                                //if (Heat_on == 0) { //Prüfen ob Heizung an ist
                                //Counterschleife = 1;
                                   if (Minuten_Tag > temp && Minuten_Tag < temp_2) {
                                   Counterschleife = 1; 
                        
                                // Prüfung, ob Heizung Taktet, wenn ja, Heizleistung um 2 verringern.
                                      if (Brennerstarts <= 30) {
                                    Element2 += 1;
                                    setState("javascript.0.Merker_Heizleistung", (Element2),true);
                                    Counterschleife = 2;
                                      } else {
                                    Element2 = 0;
                                    setState("javascript.0.Merker_Heizleistung", (Element2),true);
                                    Counterschleife = 3;
                                }
                                if (Element2 >= 2){
                        
                                    //setState("ems-esp.0.heatingCircuits.hc2.activeSwitchProgram"/*heatingCircuits.hc2.activeSwitchProgram*/, 5, true);
                                    
                                         setState("km200:heatingCircuits.hc2.activeSwitchProgram"/*heatingCircuits.hc2.activeSwitchProgram*/, 1, true);
                                         setState("km200:heatingCircuits.hc1.activeSwitchProgram"/*heatingCircuits.hc2.activeSwitchProgram*/, 1, true); 
                                    Element2 = 0;
                                    setState("javascript.0.Merker_Heizleistung", (Element2),);
                                Counterschleife = 4;
                                    sendTo("whatsapp-cmb", "send", {
                                     text: 'Heizung ausgeschaltet. Folgende Parameter:' + (Brennerstarts) +' Minuten Brennerstarts und ' + (actualPower) + ' Heizung an'
                                     });
                                }
                                }
                           // }
                            }
                        
                           // console.log(Heat_on);
                           // console.log(Minuten_Tag);
                           // console.log(Leistungswert);
                           // console.log(actualPower);
                           // console.log(Brennerstarts);
                            // console.log(Raumtemperatur);
                           // console.log(Element2);
                            // console.log(Element3);
                           console.log(Counterschleife);
                        });
                        // Wenn Raumtemperatur aber unter 20 Grad ist, Heizleistung erhöhen,
                        // wenn Heizung taktet wird Heizleistung dennoch niedriger da Thermostate ausgedreht
                        on({
                            id: "km200:heatingCircuits.hc2.roomtemperature",
                            change: "ne"
                        }, async function (obj) {
                        //    on({
                        //        id: "fritzdect.0.DECT_116300132384.celsius",
                        //        change: "ne"
                        //    }, async function (obj) {
                                // var Element2 = 1;
                                var Counterschleife = 0;
                                var Heat_on = (getState("km200.0.heatSources.hs1.flameStatus").val);
                                // var Leistungswert = (getState("km200.0.heatSources.powerSetpoint").val);
                                //var Brennerstarts = (getState("javascript.0.minutenZwischenBrennerStarts").val);
                                var Raumtemperatur_Mila = (getState("fritzdect.0.DECT_116300142272.celsius").val);
                                var Raumtemperatur2_Wohnz = (getState("km200:heatingCircuits.hc2.roomtemperature").val);
                                var Aussentemp = (getState("km200:system.sensors.temperatures.outdoor_t1").val)
                                // Weitere Prüfung auf Heizprogramm, Programm soll nur laufen, wenn Heizung aktiv ist
                        
                                var Zeit = new Date();
                                var Stunden = Zeit.getHours();
                                var Minuten = Zeit.getMinutes();
                                var Minuten_Tag = (Stunden * 60) + Minuten;
                        
                                //var Heizprogramm_E = (getState("km200.0.heatingCircuits.hc2.switchPrograms.E").val);
                        
                                // getState("von allen Heizprogrammen") -> später, erst mal das Programm nehmen, welches durchgängig an ist.
                        
                                // getState("km200.0.heatingCircuits.hc2.activeSwitchProgram") wir später benötigt, wenn andere Heizprogramme auch aktiviert sind
                        
                                var temp = 420; //Heizprogramm_E[703]; // 300 Minuten ab Mitternacht -> 5 Uhr
                                var temp_2 = 1200; //Heizprogramm_E[45]; // 1200 Minuten ab Mitternacht -> 20 Uhr geht Heizung aus
                                
                                //if (Heat_on == 1) {
                                //    Counterschleife = 7;
                        
                                    if (Minuten_Tag > temp && Minuten_Tag < temp_2) {
                                        Counterschleife = 5;
                        
                                        if (Raumtemperatur_Mila <= 20 && Raumtemperatur2_Wohnz <= 18.5 || Raumtemperatur2_Wohnz <= 18.3 && Aussentemp <= 9 || Raumtemperatur2_Wohnz < 19.0 && Aussentemp > 9.1) {
                        
                                            //setState("ems-esp.0.heatingCircuits.hc2.activeSwitchProgram"/*heatingCircuits.hc2.activeSwitchProgram*/, 4, true);
                                            
                                                 setState("km200:heatingCircuits.hc2.activeSwitchProgram"/*heatingCircuits.hc2.activeSwitchProgram*/, 0,true );
                                                 setState("km200:heatingCircuits.hc1.activeSwitchProgram"/*heatingCircuits.hc2.activeSwitchProgram*/, 0,true ); 
                                            Counterschleife = 6;
                                                sendTo("whatsapp-cmb", "send", {
                                                text: 'Heizung eingeschaltet.' + (Raumtemperatur_Mila)+ ' Raumtemperatur Mila und' + (Raumtemperatur2_Wohnz) +'Raumtemperatur Wohnzimmer'
                                                  });
                                        }
                                    }
                                //}
                        
                                console.log(Heat_on);
                                console.log(Minuten_Tag);
                                console.log(temp);
                                console.log(temp_2);
                                //console.log(actualPower);
                                //console.log(Leitungswert);
                                console.log(Raumtemperatur_Mila);
                                console.log(Raumtemperatur2_Wohnz);
                                console.log(Counterschleife);
                        
                            });
                        //});
                        
                        
                        
                        
                        Homoran arteck 2 Replies Last reply Reply Quote 0
                        • Homoran
                          Homoran Global Moderator Administrators @mwolle last edited by Homoran

                          @mwolle sagte in Skriptfehler nach iobroker Update:

                          ems-esp.0.dhwCircuits.dhw1.wwcurtem

                          seh nur ich den nicht?

                          edit: ist ja nicht aufgeklappt, sorry

                          M 1 Reply Last reply Reply Quote 0
                          • arteck
                            arteck Developer Most Active @mwolle last edited by arteck

                            @mwolle sagte in Skriptfehler nach iobroker Update:

                            km200:

                            nicht km200: <-- doppelpunkt

                            sondern km200. <-- da muss ein Punkt hin

                            in Zeile 14, 16, 18, 54, 55,80, 93, 94,121, 122

                            und die insanznummer fehlt da auch

                            also alle km200: auf km200.0. ersetzen... wie in Zeile 13 steht

                            wenn du schon was Editierst dann achte drauf das du es richtig machst

                            M 1 Reply Last reply Reply Quote 0
                            • M
                              mwolle @Homoran last edited by

                              @homoran das ist der hier:
                              3d7b8f88-52e7-4d87-9c3f-19bc4390b600-image.png

                              die ID heißt so: ems-esp.0.dhwCircuits.dhw1.wwcurtemp

                              1 Reply Last reply Reply Quote 0
                              • T
                                ticaki Developer last edited by ticaki

                                Ich bin echt gerade verwirrt...

                                lese bildet 🙂

                                1 Reply Last reply Reply Quote 0
                                • M
                                  mwolle @arteck last edited by

                                  @arteck ich habe die IDs einfach kopiert...der hat den Doppelpunkt im Bauch. Ich hatte den Datenbaum gelöscht und noch mal neu aufbauen lassen, da ich den Heizungsregler neu getauscht hatte.

                                  T arteck 2 Replies Last reply Reply Quote 0
                                  • T
                                    ticaki Developer @mwolle last edited by ticaki

                                    @mwolle

                                    Du hast noch kein Bild gezeigt wo der gesamte Pfad über km200: bis zum Enddatenpunkt zu sehen ist 🙂

                                    sowas z.B. Bildschirmfoto 2023-07-25 um 11.36.10.png

                                    Edit: da könnt ich mal all die ungenutzen States löschen

                                    1 Reply Last reply Reply Quote 1
                                    • arteck
                                      arteck Developer Most Active @mwolle last edited by arteck

                                      @mwolle sagte in Skriptfehler nach iobroker Update:

                                      ich habe die IDs einfach kopiert.

                                      never... es gibt keinen Datenbaum mit : im object..dann bist du auf caps lock gekommen.. und so ist der : reingekommen anstatt .

                                      ist der gleiche knopp

                                      M 1 Reply Last reply Reply Quote 1
                                      • M
                                        mwolle @arteck last edited by mwolle

                                        @arteck ja du hast absolut recht...ich habe den Namen kopiert und nicht die ID...der Name der ID ist dann km200:XXX, die ID ist dann richtigerweise ems-esp.0.XXX...

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

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        511
                                        Online

                                        31.8k
                                        Users

                                        80.0k
                                        Topics

                                        1.3m
                                        Posts

                                        4
                                        18
                                        514
                                        Loading More Posts
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        Community
                                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                        The ioBroker Community 2014-2023
                                        logo