Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Wert der Variable? Ich stehe auf dem Schlauch

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

Wert der Variable? Ich stehe auf dem Schlauch

Scheduled Pinned Locked Moved JavaScript
javascript
20 Posts 3 Posters 743 Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • paul53P paul53

    @OstfrieseUnterwegs sagte:

    STATE ist der Datenpunkt.

    Nein, das ist eine Systemvariable.

    S Offline
    S Offline
    skorpil
    wrote on last edited by
    #6

    @paul53 stimmt. Der Vorschlag aus Ostfriesland hat nicht funktioniert. Aber warum klappt das dann nicht? Was mache ich falsch.

    paul53P 1 Reply Last reply
    0
    • S skorpil

      @paul53 stimmt. Der Vorschlag aus Ostfriesland hat nicht funktioniert. Aber warum klappt das dann nicht? Was mache ich falsch.

      paul53P Offline
      paul53P Offline
      paul53
      wrote on last edited by
      #7

      @skorpil sagte:

      Aber warum klappt das dann nicht?

      Vielleicht wird der Wert im Reiter "Objekte" nicht aktualisiert ? Welcher Wert muss es laut CCU sein ?

      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

      S 1 Reply Last reply
      0
      • paul53P paul53

        @skorpil sagte:

        Aber warum klappt das dann nicht?

        Vielleicht wird der Wert im Reiter "Objekte" nicht aktualisiert ? Welcher Wert muss es laut CCU sein ?

        S Offline
        S Offline
        skorpil
        wrote on last edited by
        #8

        @paul53 „false“ oder „inaktiv“

        S paul53P 2 Replies Last reply
        0
        • S Offline
          S Offline
          skorpil
          wrote on last edited by
          #9

          0EB59A94-7703-4DA2-AADF-F3AEB5CED3A8.jpeg

          1 Reply Last reply
          0
          • S skorpil

            @paul53 „false“ oder „inaktiv“

            S Offline
            S Offline
            skorpil
            wrote on last edited by
            #10

            @skorpil irgendeine Idee, was ich mal testen konnte? Vlt. die Systemvariable löschen und nochmal neu anlegen?

            DC610314-C6E3-439A-A5D4-16E4B12E8B1D.jpeg

            Das ist das, was der Historian zeigt. Um kurz nach 17:00 hatte ich die Variable mal eingeschaltet. Da sieht alles gut aus.

            1 Reply Last reply
            0
            • S skorpil

              @paul53 „false“ oder „inaktiv“

              paul53P Offline
              paul53P Offline
              paul53
              wrote on last edited by
              #11

              @skorpil sagte:

              „false“ oder „inaktiv"

              Das war auch zum Zeitpunkt des Skriptstarts der Fall ? Die SV wird nur ausgewertet, wenn das Skript gestartet wird. Ergänze es mal durch einen Trigger und schau im Log nach, ob auf Änderung der SV reagiert wurde.

              on('hm-rega.0.30304', function(dp) {
                 log('dea: ' + dp.state.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

              S 3 Replies Last reply
              1
              • paul53P paul53

                @skorpil sagte:

                „false“ oder „inaktiv"

                Das war auch zum Zeitpunkt des Skriptstarts der Fall ? Die SV wird nur ausgewertet, wenn das Skript gestartet wird. Ergänze es mal durch einen Trigger und schau im Log nach, ob auf Änderung der SV reagiert wurde.

                on('hm-rega.0.30304', function(dp) {
                   log('dea: ' + dp.state.val);
                });
                
                S Offline
                S Offline
                skorpil
                wrote on last edited by
                #12

                @paul53 Danke, mache ich. Melde mich morgen. Gute Nacht m Paul, und vielen Dank.

                1 Reply Last reply
                0
                • paul53P paul53

                  @skorpil sagte:

                  „false“ oder „inaktiv"

                  Das war auch zum Zeitpunkt des Skriptstarts der Fall ? Die SV wird nur ausgewertet, wenn das Skript gestartet wird. Ergänze es mal durch einen Trigger und schau im Log nach, ob auf Änderung der SV reagiert wurde.

                  on('hm-rega.0.30304', function(dp) {
                     log('dea: ' + dp.state.val);
                  });
                  
                  S Offline
                  S Offline
                  skorpil
                  wrote on last edited by
                  #13

                  @paul53 sagte in Wert der Variable? Ich stehe auf dem Schlauch:

                  on('hm-rega.0.30304', function(dp) { log('dea: ' + dp.state.val); });

                  Gerade getestet:

                  javascript.0	2019-03-25 22:51:44.194	info	script.js.common.Test.Test: dea: false
                  javascript.0	2019-03-25 22:50:14.150	info	script.js.common.Test.Test: dea: true
                  

                  Es wird reagiert!

                  paul53P 1 Reply Last reply
                  0
                  • S skorpil

                    @paul53 sagte in Wert der Variable? Ich stehe auf dem Schlauch:

                    on('hm-rega.0.30304', function(dp) { log('dea: ' + dp.state.val); });

                    Gerade getestet:

                    javascript.0	2019-03-25 22:51:44.194	info	script.js.common.Test.Test: dea: false
                    javascript.0	2019-03-25 22:50:14.150	info	script.js.common.Test.Test: dea: true
                    

                    Es wird reagiert!

                    paul53P Offline
                    paul53P Offline
                    paul53
                    wrote on last edited by
                    #14

                    @skorpil sagte:

                    Es wird reagiert!

                    Dann ist doch alles in Ordnung.

                    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

                    S 1 Reply Last reply
                    0
                    • paul53P paul53

                      @skorpil sagte:

                      „false“ oder „inaktiv"

                      Das war auch zum Zeitpunkt des Skriptstarts der Fall ? Die SV wird nur ausgewertet, wenn das Skript gestartet wird. Ergänze es mal durch einen Trigger und schau im Log nach, ob auf Änderung der SV reagiert wurde.

                      on('hm-rega.0.30304', function(dp) {
                         log('dea: ' + dp.state.val);
                      });
                      
                      S Offline
                      S Offline
                      skorpil
                      wrote on last edited by
                      #15

                      @paul53

                      ich habe den Eindruck, dass das Script bei Scriptstart NICHT reagiert. Erst bei einer Änderung der Variablen und tracking mit "on" ,reagiert das Script. Ist das ein bug?

                      paul53P 1 Reply Last reply
                      0
                      • S skorpil

                        @paul53

                        ich habe den Eindruck, dass das Script bei Scriptstart NICHT reagiert. Erst bei einer Änderung der Variablen und tracking mit "on" ,reagiert das Script. Ist das ein bug?

                        paul53P Offline
                        paul53P Offline
                        paul53
                        wrote on last edited by
                        #16

                        @skorpil sagte:

                        das Script bei Scriptstart NICHT reagiert

                        Das glaube ich nicht. Wie sieh das komplette Skript jetzt aus ? Wenn es nur den Trigger enthält, passiert beim Skriptstart nichts.

                        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 Reply Last reply
                        0
                        • paul53P paul53

                          @skorpil sagte:

                          Es wird reagiert!

                          Dann ist doch alles in Ordnung.

                          S Offline
                          S Offline
                          skorpil
                          wrote on last edited by
                          #17

                          @paul53

                          //bei Skriptstart Cron Job starten, wenn Automower ein
                          schedule('27,50 14-18 * * *', function () {
                          
                          if(getState('hm-rega.0.30304'/*Automower Daemon Modus*/).val = true) {
                          

                          Ausgangspunkt meiner ganzen Tests war folgendes: Ich wollte erreichen, dass eine Funktion zu den definierten cron Zeitpunkten nur aufgerufen wird, wenn die Variable hm-rega.0.30304 auf true steht. Nun habe ich aber im log gesehen, dass die Funktion zu den Zeitpunkten gestartet wird, obwohl ja der Wert der Variablen auf false stand.

                          Sehr merkwürdig

                          S 1 Reply Last reply
                          0
                          • S skorpil

                            @paul53

                            //bei Skriptstart Cron Job starten, wenn Automower ein
                            schedule('27,50 14-18 * * *', function () {
                            
                            if(getState('hm-rega.0.30304'/*Automower Daemon Modus*/).val = true) {
                            

                            Ausgangspunkt meiner ganzen Tests war folgendes: Ich wollte erreichen, dass eine Funktion zu den definierten cron Zeitpunkten nur aufgerufen wird, wenn die Variable hm-rega.0.30304 auf true steht. Nun habe ich aber im log gesehen, dass die Funktion zu den Zeitpunkten gestartet wird, obwohl ja der Wert der Variablen auf false stand.

                            Sehr merkwürdig

                            S Offline
                            S Offline
                            skorpil
                            wrote on last edited by skorpil
                            #18

                            @skorpil zur Sicherheit hier nochmal das komplette Sript:

                            // ##################################################################
                            //         Regen ermitteln und in Wetter Regen schreiben     
                            // ##################################################################
                            function regen_ermitteln() {
                                
                            //Definitionen
                            var idOpenWeater = 'openweathermap.0.forecast.current.state'/*Actual state*/;
                            var idVariable = 'hm-rega.0.32978'/*Wetter Regen*/
                            
                            //Wetterdaten auslesen 
                            wetterdaten = getState(idOpenWeater).val;
                            
                            //finde regen oder niesel
                            var regen = wetterdaten.lastIndexOf('Regen')+1;
                            var niesel = wetterdaten.lastIndexOf('Niesel')+1;
                            var Regen = wetterdaten.lastIndexOf('regen')+1;
                            var Niesel = wetterdaten.lastIndexOf('niesel')+1;  
                            
                            // wenn gefunden dann
                            if (regen + niesel + Regen + Niesel > 0) {
                                regen = true;
                                } else
                                {regen = false;}
                                log(regen);
                            
                            //Variable setzen
                            setState(idVariable, regen);
                             };
                            
                            
                            
                            //bei Skriptstart Cron Job starten
                            schedule('0 13 * * *', function () {
                            
                            if(getState('hm-rega.0.30304'/*Automower Daemon Modus*/).val = true) {
                                regen_ermitteln();
                            };
                            
                            });
                            
                            //bei Skriptstart: Start
                            //regen_ermitteln();
                            
                            
                            
                            paul53P 1 Reply Last reply
                            0
                            • S skorpil

                              @skorpil zur Sicherheit hier nochmal das komplette Sript:

                              // ##################################################################
                              //         Regen ermitteln und in Wetter Regen schreiben     
                              // ##################################################################
                              function regen_ermitteln() {
                                  
                              //Definitionen
                              var idOpenWeater = 'openweathermap.0.forecast.current.state'/*Actual state*/;
                              var idVariable = 'hm-rega.0.32978'/*Wetter Regen*/
                              
                              //Wetterdaten auslesen 
                              wetterdaten = getState(idOpenWeater).val;
                              
                              //finde regen oder niesel
                              var regen = wetterdaten.lastIndexOf('Regen')+1;
                              var niesel = wetterdaten.lastIndexOf('Niesel')+1;
                              var Regen = wetterdaten.lastIndexOf('regen')+1;
                              var Niesel = wetterdaten.lastIndexOf('niesel')+1;  
                              
                              // wenn gefunden dann
                              if (regen + niesel + Regen + Niesel > 0) {
                                  regen = true;
                                  } else
                                  {regen = false;}
                                  log(regen);
                              
                              //Variable setzen
                              setState(idVariable, regen);
                               };
                              
                              
                              
                              //bei Skriptstart Cron Job starten
                              schedule('0 13 * * *', function () {
                              
                              if(getState('hm-rega.0.30304'/*Automower Daemon Modus*/).val = true) {
                                  regen_ermitteln();
                              };
                              
                              });
                              
                              //bei Skriptstart: Start
                              //regen_ermitteln();
                              
                              
                              
                              paul53P Offline
                              paul53P Offline
                              paul53
                              wrote on last edited by
                              #19

                              @skorpil sagte:

                              das komplette Sript:

                              Nur um 13:00 Uhr wird ermittelt, ob es regnet. In der Abfrage steht eine Zuweisung und kein Vergleich. Richtig:

                              schedule('0 13 * * *', function () {
                                 if(getState('hm-rega.0.30304'/*Automower Daemon Modus*/).val == true) regen_ermitteln();
                              });
                              

                              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

                              S 1 Reply Last reply
                              1
                              • paul53P paul53

                                @skorpil sagte:

                                das komplette Sript:

                                Nur um 13:00 Uhr wird ermittelt, ob es regnet. In der Abfrage steht eine Zuweisung und kein Vergleich. Richtig:

                                schedule('0 13 * * *', function () {
                                   if(getState('hm-rega.0.30304'/*Automower Daemon Modus*/).val == true) regen_ermitteln();
                                });
                                
                                S Offline
                                S Offline
                                skorpil
                                wrote on last edited by
                                #20

                                @paul53 ahhhh, okay. Wiederum vielen mitternächtlichen Dank.

                                JavaScript hat es in sich. Ich bin froh, dass es gut Lehrer gibt.

                                1 Reply Last reply
                                0
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                638

                                Online

                                32.4k

                                Users

                                81.4k

                                Topics

                                1.3m

                                Posts
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                ioBroker Community 2014-2025
                                logo
                                • Login

                                • Don't have an account? Register

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Recent
                                • Tags
                                • Unread 0
                                • Categories
                                • Unreplied
                                • Popular
                                • GitHub
                                • Docu
                                • Hilfe