Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Block CompareTime funktioniert nicht

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Block CompareTime funktioniert nicht

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

      @ingo-2 sagte in Block CompareTime funktioniert nicht:

      Ich dachte auch so, ohne Trigger,
      funktioniert das...

      ohne trigger läuft ein Skript genau einmal

      I 1 Reply Last reply Reply Quote 0
      • I
        Ingo 2 @Homoran last edited by

        @homoran ok. Das war mir so nicht bewusst. Vielen Dank für Info.
        Heißt, mit einem Intervall funktioniert es?

        CompareTime.png

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

          @ingo-2 sagte in Block CompareTime funktioniert nicht:

          Heißt, mit einem Intervall funktioniert es?

          nur wenn das intervall auf die Millisekunde genau die Uhrzeit trifft.

          üblicherweise wird ein Zeitplan (Cron) als Trigger genommen, der um die gewünschte Uhrzeit auslöst

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

            @homoran sagte: Zeitplan (Cron) als Trigger genommen

            Der löst auch nicht auf die Millisekunde genau aus.
            Besser man vergleicht nur auf die Minute genau:

            Blockly_temp.JPG

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

              @paul53 sagte in Block CompareTime funktioniert nicht:

              Der löst auch nicht auf die Millisekunde genau aus.

              eben!
              aber muss es nicht wenn er alle 10 Sekunden Prüft ob es 18:31 is genau 18:31:00.000 sein?

              Asgothian 1 Reply Last reply Reply Quote 0
              • Asgothian
                Asgothian Developer @Homoran last edited by

                @homoran sagte in Block CompareTime funktioniert nicht:

                @paul53 sagte in Block CompareTime funktioniert nicht:

                Der löst auch nicht auf die Millisekunde genau aus.

                eben!
                aber muss es nicht wenn er alle 10 Sekunden Prüft ob es 18:31 is genau 18:31:00.000 sein?

                Nein. Aktuelle Zeit als SS:mm schneidet die Sekunden und ms ab. Das heisst wenn der Timeout alle 10 Sekunden läuft ist die Bedingung statistisch gesehen 5 mal mit jeweils 10 s Abstand wahr 🙂

                A.
                Also doch Cron, keine Timeout Schleife mit Zeitvergleich)

                Homoran 1 Reply Last reply Reply Quote 2
                • Homoran
                  Homoran Global Moderator Administrators @Asgothian last edited by

                  @asgothian sagte in Block CompareTime funktioniert nicht:

                  Nein. Aktuelle Zeit als SS:mm schneidet die Sekunden und ms ab.

                  Danke! Wieder was gelernt!
                  ich würde trotzdem mit cron arbeiten

                  Asgothian 1 Reply Last reply Reply Quote 0
                  • Asgothian
                    Asgothian Developer @Homoran last edited by Asgothian

                    @homoran sagte in Block CompareTime funktioniert nicht:

                    ich würde trotzdem mit cron arbeiten

                    Auf jeden Fall.

                    Der Timeout stream ist ggf. nicht 100% exakt, sprich
                    Läuft der Timeout kürzer als 1 Minute, dann gibt es das Risiko das ein Zeitvergleich irgendwann mal 2 mal während der relevanten Minute wahr ist.
                    Läuft der Timeout genau 1 Minute, dann gibt es das Risiko das der Zeitvergleich irgendwann mal nicht zuschlägt, wegen der Verzögerung zwischen "Auslösen des Timeouts" und "auswerten der aktuellen Zeit. Selbst wenn das nur wenige ms dauert, dann kann immer mal wieder eine Minute nicht explizit erreicht wird. (Beispiel: Timeout wird gestartet genau um 18:30:59.999. Mit Timeout 1 Minute. Wird also also aktiv (theoretisch) um 18:31:59.999. Wenn es dann nur 1 ms dauert bis die Uhrzeit ausgewertet wird, ist es bereits 18:32:00.000 🙂

                    Das der Cron nicht ms Sekunden genau auslöst ist dabei eher weniger relevant.

                    A.

                    1 Reply Last reply Reply Quote 2
                    • Codierknecht
                      Codierknecht Developer Most Active @Ingo 2 last edited by Codierknecht

                      @ingo-2
                      Habe ich da was falsch verstanden?
                      Warum nicht so:

                      b251e0cf-d4b6-4af9-b0b4-061ea55f2449-grafik.png
                      Auf die Millisekunde wird's wohl kaum ankommen.

                      Möglicherweise ist das hilfreich:
                      https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps

                      I 1 Reply Last reply Reply Quote 1
                      • I
                        Ingo 2 @Codierknecht last edited by

                        @codierknecht

                        Generell habe ich das Problem, dass bei mir die Triggerevents nie erfüllt sind.
                        Kann ich bei dem FALLS OBEKT das Triggerevent nicht mit einer Logik verknüpfen?
                        Aus welchem Grund funktioniert Trigger.PNG

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

                          @ingo-2 sagte in Block CompareTime funktioniert nicht:

                          Kann ich bei dem FALLS OBEKT das Triggerevent nicht mit einer Logik verknüpfen?

                          richtig!
                          die Logik ist im Triggerblock selber (ist wahr)

                          1 Reply Last reply Reply Quote 0
                          • Codierknecht
                            Codierknecht Developer Most Active @Ingo 2 last edited by

                            @ingo-2 sagte in Block CompareTime funktioniert nicht:

                            Generell habe ich das Problem, dass bei mir die Triggerevents nie erfüllt sind.

                            Welche "Triggerevents" werden bei Dir nicht erfüllt?
                            ZEIGEN!

                            An "Falls Objekt" wird eine Objekt-ID übergeben ... kein Ausdruck!

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            693
                            Online

                            32.0k
                            Users

                            80.4k
                            Topics

                            1.3m
                            Posts

                            5
                            15
                            424
                            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