Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. [gelöst] [Blockly ??] Schedule macht was es will.

    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] [Blockly ??] Schedule macht was es will.

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

      Systemdata Bitte Ausfüllen
      Hardwaresystem: VMware
      Arbeitsspeicher: 4GB
      Festplattenart: HDD
      Betriebssystem: Windows
      Node-Version: 10.x.x
      Nodejs-Version: 14.18.3
      NPM-Version: 6.14.15
      Installationsart: Manuell
      Image genutzt: Nein
      Ort/Name der Imagedatei: Link

      Hallo

      Ein Gerät soll alle 4 Stunden für 45 Minuten eingeschaltet werden.
      Ich habe alle Arten der Zeitplandefinitionen ausprobiert „Wizard“ und „Cron“.
      Zeitplan definieren… „Einfach“ geht nicht, weil dort nur Minuten und Sekunden möglich sind und der Wert für Zeitraum keine Zahl > 60 zulässt.

      Um einen Fehler einzukreisen lasse ich nun einen Datenpunkt alle 4 Stunden für 45 Minuten auf „wahr“ schalten und lasse den Datenpunkt von „Eventlist“ überwachen.
      Dabei ist aufgefallen, dass „Eventlist“ Zeiten anzeigt die eigentlich nicht möglich sind.
      Eine Zeit von „3h 14m 60s“ gibt es meiner Meinung nach nicht. „3h 15m 0s“ wäre richtig.
      Entweder ist das ein Bug in „Eventlist“ oder das System „tickt“ nicht richtig und „verschluckt“ immer einige Sekunden.
      Ich tippe mal auf einen Bug im System, weil je größer die Stundenanzahl ist, desto wilder die Differenzen.

      So sieht das Blockly aus:
      blockly.png

      Dieses JS wird generiert:


      var timeout;

      createState("ScheduleTest", false, async function () {
      });
      schedule('{"time":{"start":"00:00","end":"23:59","mode":"hours","interval":4},"period":{"days":1}}', async function () {
      if (getState("javascript.0.ScheduleTest").val == false) {
      setState("javascript.0.ScheduleTest"/ScheduleTest/, true, true);
      }
      });
      on({id: "javascript.0.ScheduleTest"/ScheduleTest/, change: "ne"}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      if ((obj.state ? obj.state.val : "") == true) {
      (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
      timeout = setTimeout(async function () {
      setState("javascript.0.ScheduleTest"/ScheduleTest/, false, true);
      }, 2700000);
      } else {
      (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
      }
      });

      Das zeichnet Eventlist auf:
      eventlist.png

      Kann das jemand nachvollziehen oder liegt der Fehler bei mir?

      Grüße

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

        @rantanplan sagte: Gerät soll alle 4 Stunden für 45 Minuten eingeschaltet werden.

        Das funktioniert mit CRON zuverlässig.

        Bild_2022-04-24_131515521.png

        Bild_2022-04-24_131410368.png

        @rantanplan sagte in [Blockly ??] Schedule macht was es will.:

        Das zeichnet Eventlist auf:

        Dazu kann ich nichts sagen, da ich Eventlist nicht verwende.

        rantanplan 3 Replies Last reply Reply Quote 0
        • rantanplan
          rantanplan @paul53 last edited by

          @paul53 sagte in [Blockly ??] Schedule macht was es will.:

          @rantanplan sagte: Gerät soll alle 4 Stunden für 45 Minuten eingeschaltet werden.

          Das funktioniert mit CRON zuverlässig.

          Hallo paul53
          Danke für die schnelle Antwort.
          Ich hatte es schon mit CRON versucht. Starte aber gerne nochmal eine Versuchsreihe.
          Melde mich dann.

          Grüße

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

            @paul53 sagte in [Blockly ??] Schedule macht was es will.:

            Das funktioniert mit CRON zuverlässig.

            Hallo Paul53
            Das kann ich leider nicht bestätigen.

            Ich habe nun mehrere Tests durchgeführt.
            Nur dieser Test lief sauber.
            schedule_60Min.png

            Aufzeichnung mit Eventlist:
            Ergebnis_60Min.png
            Wie gewünscht wird der Datenpunkt jeweils zur vollen Stunde für 15 Min. auf True gesetzt und ist dann 45 Min. auf False.

            Dies funktioniert nur mit Werten <=60 Minuten!!!
            Wenn man z.B. 120 einsetzt kommt der "Zeitplan" wieder völlig durcheinander.

            Dann habe ich mir gedacht, was mit 60 Min. funktioniert sollte auch mit 1 Std. klappen.
            schedule_1Std.png
            Hier das Ergebnis
            ergebnis_1Std.png
            Völliges Chaos. (Auch das setzen von "löschen falls läuft" bringt nichts")

            Kann noch jemand dieses Verhalten nachvollziehen?

            Danke!

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

              @rantanplan sagte: was mit 60 Min. funktioniert sollte auch mit 1 Std. klappen.

              So wird jede Minute getriggert. Richtig:

              Bild_2022-04-29_125552493.png

              triggert zu jeder vollen Stunde. Man kann auch einen beliebigen anderen Minutenwert <= 59 eingeben.

              Jede gerade Stunde:

              Bild_2022-04-29_125951126.png

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

                @paul53 Verstehe leider nicht was mir die Antwort sagen soll.

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

                  @rantanplan sagte: Verstehe leider nicht was mir die Antwort sagen soll.

                  1651228245247-schedule_1std.png

                  Der erste Stern bewirkt, dass jede Minute getriggert wird und nicht nur jede Stunde. Wiki

                  S rantanplan 2 Replies Last reply Reply Quote 0
                  • S
                    SpacerX @paul53 last edited by

                    @paul53
                    Hat du zwischenzeitlich mal den Script-Adapter neu gestartet.

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

                      @spacerx sagte:

                      @paul53
                      Hat du zwischenzeitlich mal den Script-Adapter neu gestartet.

                      Meinst Du wirklich mich?

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

                        @paul53

                        Nein Sorry. ich meinte @rantanplan

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

                          @paul53 sagte in [Blockly ??] Schedule macht was es will.:

                          Der erste Stern bewirkt, dass jede Minute getriggert wird und nicht nur jede Stunde. Wiki

                          Wenn man den Wald vor lauter Bäumen nicht sieht.
                          (Wobei das Verhalten auch dann recht merkwürdig ist)
                          Ja, Scipt-Adapter schon mehrmals neu gestartet.
                          Neuer Test läuft!
                          Werde berichten.

                          Danke!

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

                            @paul53 sagte in [Blockly ??] Schedule macht was es will.:

                            Das funktioniert mit CRON zuverlässig.

                            Kann ich nun bestätigen!
                            Kaum macht man es richtig, schon funktionierts 😬

                            Danke!

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            915
                            Online

                            31.9k
                            Users

                            80.1k
                            Topics

                            1.3m
                            Posts

                            3
                            12
                            1077
                            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