Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Wert der Variable? Ich stehe auf dem Schlauch

    NEWS

    • Neues Video auf YouTube

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    Wert der Variable? Ich stehe auf dem Schlauch

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @skorpil last edited by

      @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 3 Replies Last reply Reply Quote 1
      • S
        skorpil @paul53 last edited by

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

        1 Reply Last reply Reply Quote 0
        • S
          skorpil @paul53 last edited by

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

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @skorpil last edited by

            @skorpil sagte:

            Es wird reagiert!

            Dann ist doch alles in Ordnung.

            S 1 Reply Last reply Reply Quote 0
            • S
              skorpil @paul53 last edited by

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

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @skorpil last edited by

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

                1 Reply Last reply Reply Quote 0
                • S
                  skorpil @paul53 last edited by

                  @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 Reply Quote 0
                  • S
                    skorpil @skorpil last edited by 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();
                    
                    
                    
                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @skorpil last edited by

                      @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 1 Reply Last reply Reply Quote 1
                      • S
                        skorpil @paul53 last edited by

                        @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 Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        811
                        Online

                        32.0k
                        Users

                        80.5k
                        Topics

                        1.3m
                        Posts

                        javascript
                        3
                        20
                        646
                        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