Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Zeitplan mit ändernder Wiederholung erstellen

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Zeitplan mit ändernder Wiederholung erstellen

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

      Ein Blockly mit einem Zeitplan und dem Crone-Block, damit dies immer um eine bestimmte Zeit ausgeführt wird funktioniert einwandfrei.
      606bccb5-0c50-4783-b729-a53ca861c7f8-image.png

      Ich scheitere aber daran, wenn ich dies alle x Sekunden ausführen möchte. Kann dies auch irgendwie umgesetzt werden?

      J paul53 2 Replies Last reply Reply Quote 0
      • J
        JoergH @Kusi last edited by

        @kusi Wieso nimmst Du nicht den Zeitplan ohne CRON? Da kann man die Sekunden einfach einstellen...

        K 1 Reply Last reply Reply Quote 0
        • K
          Kusi @JoergH last edited by

          @joergh Damit ich das Abfrageintervall via "Objekte" ändern kann. Möchte da etwas versuchen, dass man dann z.B. das Abfrageintervall auf der vis ändern könnte.

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

            @kusi sagte: alle x Sekunden ausführen

            Wenn das Intervall variabel sein soll, muss auf den Datenpunkt getriggert werden.

            Bild_2021-10-21_120756.png

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

              @paul53 Danke für deine Antwort. Diese Änderung hätte ich im Nachhinein vorgenommen, analog dem Wecker-Blockly.
              Mir geht es aber nicht darum dass er immer bei xx:xx:10 auslöst (wäre alle 60 Sekunden), sondern dass er alle 10 Sekunden auslöst (analog Timeouts "ausführen alle x Sekunden".
              Ich möchte folgendes Element "Variabel" machen:
              84b664bc-0178-4a20-9088-05b442c3dbd1-image.png
              e29866b8-1502-41a6-94be-c110abeb2b99-image.png

              paul53 Asgothian 2 Replies Last reply Reply Quote 0
              • paul53
                paul53 @Kusi last edited by

                @kusi sagte: sondern dass er alle 10 Sekunden auslöst.

                Passiert das nicht mit dem Wert 10 im Datenpunkt?

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

                  @paul53 Nein, leider nicht.

                  64425bd9-2bf9-4554-8ac9-0b1cf716ad74-image.png
                  39f15056-51db-47a2-943f-45dfe0003e65-image.png

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

                    @kusi Ist doch ganz einfach.

                    An stelle von Screenshot 2021-10-21 at 12.24.51.png

                    einfach

                    Screenshot 2021-10-21 at 12.25.02.png

                    einsetzen.

                    A.

                    K 1 Reply Last reply Reply Quote 1
                    • K
                      Kusi @Asgothian last edited by

                      @asgothian
                      cbf9d188-0e66-4766-b4ca-5f6988efb903-image.png
                      genial, funktioniert wunderbar...

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

                        @kusi sagte: Nein, leider nicht.

                        Du hast recht: Man muss ein "*/" davor setzen:

                        Bild_2021-10-21_122748.png

                        K 2 Replies Last reply Reply Quote 1
                        • K
                          Kusi @paul53 last edited by

                          @paul53 Funktioniert einwandfrei, vielen Dank für eure rasche Hilfe.
                          9ebe86f9-606c-4262-bda1-49482bd5c4f9-image.png

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

                            @paul53 Du siehst obenstehend mein fertiges Blockly. Wenn ich nun z.B. 2 oder noch mehr IP-Adressen abfragen möchte, soll ich das Blockly kopieren oder die IP-Adresse variabel änderbar machen und mit einer Schleife arbeiten?
                            Denke vor allem an die Performance (Auslastung ioBroker).

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

                              @kusi Wie oft willst du denn wie viele IP Adressen abfragen ?

                              Generell gibt es 2 unterschiedliche Situationen:

                              Situation 1:
                              Die Summe aller Abfragen dauert kürzer als das Abfrageintervall. Dann ist ein Cron-Job der alle Abfragen erledigt ok.

                              Situation 2:
                              Die Summe aller Abfragen kann länger dauern als das Abfrageintervall. Dann ist es besser das in getrennten Zeitplänen laufen zu lassen.

                              Der Zeitverlust der Abfrage ist in deinem Skript in dem "Request" Baustein hinterlegt.

                              Du solltest gut darüber nachdenken wie oft du welchen Wert wirklich abfragen musst damit alles so geht wie du das willst.

                              A.

                              K 1 Reply Last reply Reply Quote 0
                              • K
                                Kusi @Asgothian last edited by

                                @asgothian Der "noch funktionierende" Adapter fragt die Werte alle 5 Sekunden ab. Zur Zeit sind es 2 IP-Adressen, welche evtl. in nächster Zeit auf 4 steigen werden.
                                Momentan muss für jede IP-Adresse eine eigene Instanz installiert werden.
                                48e0bcdd-5acb-46d7-8eb1-6f087a2ec049-image.png

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

                                  @kusi sagte in [gelöst] Zeitplan mit ändernder Wiederholung erstellen:

                                  Der "noch funktionierende" Adapter fragt die Werte alle 5 Sekunden ab. Zur Zeit sind es 2 IP-Adressen, welche evtl. in nächster Zeit auf 4 steigen werden.
                                  Momentan muss für jede IP-Adresse eine eigene Instanz installiert werden.

                                  Das sagt noch nicht viel aus.

                                  Ich würde es nicht über einen Cron Job abbilden. Besser ist meiner Meinung nach eine Kette von Timeouts, die jedes mal nach einer erfolgreichen Abfrage weitergereicht wird. Damit ist sichergestellt das wenn ein Gerät mal nicht reagiert kein Haufen an unbeantworteten Requests entstehen kann.

                                  Parallel dazu würde ich eine Liste mit den zu prüfenden Geräten aufbauen, und im Timeout immer ein Gerät abfragen, wenn das geantwortet hat den Timeout neu ansetzen um dann das nächste Gerät abzufragen. Auf die Art und weise kannst du das ganze einfach auf weitere Geräte erweitern ohne das am Skript selber viel getan werden muss.

                                  A.

                                  K 1 Reply Last reply Reply Quote 0
                                  • K
                                    Kusi @Asgothian last edited by

                                    @asgothian ich werde dies versuchen umzusetzen und dich/euch auf dem Laufenden halten.

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    761
                                    Online

                                    32.0k
                                    Users

                                    80.5k
                                    Topics

                                    1.3m
                                    Posts

                                    4
                                    16
                                    452
                                    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