Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Falls sich Wert über längere Zeit nicht ändert, mache ...

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Falls sich Wert über längere Zeit nicht ändert, mache ...

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators @Qlink last edited by

      @Qlink sagte in Falls sich Wert über längere Zeit nicht ändert, mache ...:

      Hier die Fehlermeldung:

      Das ist nicht die Fehlermeldung selbst, sonder nur, wo der Fehler auftritt.

      umschalten in Javascript ansicht und in Zeile 10 den markierten Fehler suchen

      Q 1 Reply Last reply Reply Quote 0
      • Q
        Qlink @Homoran last edited by Qlink

        @Homoran

        Hier das Script in javascript

        var timeout;
        
        
        // Wenn sich Termperatur ändert -> Script triggern
        on({id: 'hm-rega.0.49599', change: "ne"}, function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          // Wenn sich Temperatur ändert -> Timer Stop
          // -> nichts passiert
          (function () {if (unbenannt) {clearTimeout(unbenannt); unbenannt = null;}})();
          // Wenn sich Temperatur für 60min NICHT ändert
          // -> Mail schicken + reset ausführen
          timeout = setTimeout(function () {
            console.warn('weatherman restart, weil temperatur 60min keine Änderung');
            sendTo("email.0", "send", {
               text: 'Weatherman prüfen !',
               to: '...',
               subject: 'Weatherman prüfen !'
            });
            console.log("email: " + 'Weatherman prüfen !');
            try {
              require("request")('http://192.168.30.12/?reset:').on("error", function (e) {console.error(e);});
            } catch (e) { console.error(e); }
            console.log("request: " + 'http://192.168.30.12/?reset:');
          }, 3600000);
        });
        

        Wo wäre hier in Zeile 10 ein Fehler ?

        Hier das log:

        javascript.0	2020-09-13 07:47:59.859	error	(2804) at process.topLevelDomainCallback (domain.js:126:23)
        javascript.0	2020-09-13 07:47:59.859	error	(2804) at processImmediate (timers.js:658:5)
        javascript.0	2020-09-13 07:47:59.859	error	(2804) at tryOnImmediate (timers.js:676:5)
        javascript.0	2020-09-13 07:47:59.859	error	(2804) at runCallback (timers.js:705:18)
        javascript.0	2020-09-13 07:47:59.859	error	(2804) at Immediate.setImmediate (C:\iobroker\iob01\node_modules\iobroker.js-controller\lib\adapter.js:5384:37)
        javascript.0	2020-09-13 07:47:59.859	error	(2804) at Object.stateChange (C:\iobroker\iob01\node_modules\iobroker.javascript\main.js:451:25)
        javascript.0	2020-09-13 07:47:59.859	error	(2804) at Object.callback (C:\iobroker\iob01\node_modules\iobroker.javascript\lib\sandbox.js:1052:38)
        javascript.0	2020-09-13 07:47:59.859	error	(2804) at Object.<anonymous> (script.js.weatherman_data_check:10:78)
        javascript.0	2020-09-13 07:47:59.859	error	(2804) at script.js.weatherman_data_check:10:17
        javascript.0	2020-09-13 07:47:59.859	error	(2804) Error in callback: ReferenceError: unbenannt is not defined
        

        Warum meint er "unbenannt is not defined" ?

        Xenon 1 Reply Last reply Reply Quote 0
        • Xenon
          Xenon Forum Testing Developer @Qlink last edited by Xenon

          @Qlink sagte in Falls sich Wert über längere Zeit nicht ändert, mache ...:

          @Homoran

          Hier das Script in javascript

          var timeout;
          
          
          // Wenn sich Termperatur ändert -> Script triggern
          on({id: 'hm-rega.0.49599', change: "ne"}, function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            // Wenn sich Temperatur ändert -> Timer Stop
            // -> nichts passiert
            (function () {if (unbenannt) {clearTimeout(unbenannt); unbenannt = null;}})();
            // Wenn sich Temperatur für 60min NICHT ändert
            // -> Mail schicken + reset ausführen
            timeout = setTimeout(function () {
              console.warn('weatherman restart, weil temperatur 60min keine Änderung');
              console.log("email: " + 'Weatherman prüfen !');
              try {
                require("request")('http://192.168.30.12/?reset:').on("error", function (e) {console.error(e);});
              } catch (e) { console.error(e); }
              console.log("request: " + 'http://192.168.30.12/?reset:');
            }, 3600000);
          });
          

          Wo wäre hier in Zeile 10 ein Fehler ?

          if (unbenannt) {clear(unbenannt); unbenannt = null; }})();

          er findet den timeout "unbenannt" nicht, ändere mal einfach den timeoutnamen in deinem blockly

          Q 1 Reply Last reply Reply Quote 1
          • Q
            Qlink @Xenon last edited by

            @Xenon

            Das wars tatsächlich!

            Warum vergisst er den Namen ?
            Kann man das irgendwie zukünftig verhindern ?

            Vielen Dank für die Hilfe 🙂

            Beste Grüße

            dslraser Xenon 2 Replies Last reply Reply Quote 0
            • dslraser
              dslraser Forum Testing Most Active @Qlink last edited by

              @Qlink
              @Xenon
              in den JS Ansichten in den Beiträgen ist nun die E-Mail sichtbar.
              Nur als Info....

              Q 1 Reply Last reply Reply Quote 0
              • Q
                Qlink @dslraser last edited by

                @dslraser

                Danke für den Hinweis.
                Ist wohl noch zu früh am morgen.

                @Xenon

                Bitte die Adresse in dem Quoting von deinem Post entfernen.

                Danke.

                Beste Grüße

                Xenon 1 Reply Last reply Reply Quote 0
                • Xenon
                  Xenon Forum Testing Developer @Qlink last edited by

                  @Qlink erledigt, hatte ich nicht gesehen

                  1 Reply Last reply Reply Quote 0
                  • Xenon
                    Xenon Forum Testing Developer @Qlink last edited by

                    @Qlink das ist leider ein bekanntes problem bei blockly, gerade wenn man updates macht. Ich nutze nur JS, habe damals mit blockly angefangen und hatte immer wieder timeouts kaputt

                    Homoran 1 Reply Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators @Xenon last edited by

                      @Xenon sagte in Falls sich Wert über längere Zeit nicht ändert, mache ...:

                      @Qlink das ist leider ein bekanntes problem bei blockly, gerade wenn man updates macht

                      So stimmt das nicht!
                      Es war ein Bug in einer Version von Javascript.
                      Das wurde damals sehr intensiv kommuniziert, dass bei einem Update die timeouts überprüft werden sollten.

                      Xenon 1 Reply Last reply Reply Quote 1
                      • Xenon
                        Xenon Forum Testing Developer @Homoran last edited by

                        @Homoran ich hatte danach selbst mehrfach Probleme gehabt. Einmal hatte ich einen Stromausfall und meine system ist neugestartet, selbst da waren timeouts weg.

                        Wie es jetzt aussieht -> keine Ahnung, ich arbeite ausschließlich nur noch mit JS

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        886
                        Online

                        32.0k
                        Users

                        80.5k
                        Topics

                        1.3m
                        Posts

                        4
                        11
                        555
                        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