Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Gelöst: Stur schalten oder lieber vorher IST-Zustand abfrag

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Gelöst: Stur schalten oder lieber vorher IST-Zustand abfrag

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

      Hi zusammen,

      ich überlege gerade einige Scripte, die zum Beispiel Licht ein- und ausschalten bei Erkennung von Präsenz, zu optimieren. Betrifft aber auch einige andere ähnliche Scripte.

      Ist es sinnvoller (ressourcenschonender) wenn ich jetzt in einem Script vor dem Absenden eines Schaltbefehls nochmal abfrage, ob der Schaltbefehl Sinn macht (einen Zustand ändert) bzw. der Datenpunkt bereits passend steht, oder ist es sinnvoller (ressourcenschonender) wenn ich die Abfrage im Script spare und den Schaltbefehl einfach abschicke, auch wenn er dann nichts ändert?

      Hier mal zwei Beispiele. Beide machen exakt das Gleiche (laufen nicht beide, nur hier als Beispiel 😊 )

      98e740a1-7812-4eec-a8d7-fa3946d698b3-image.png

      Obiges schaltet immer, auch wenn das Schalten "unnötig" wäre, falls der Zustand bereits besteht. Unteres prüft vorher, hat aber halt etwas mehr Code.

      Oder kommt es gar auf den Adapter des Schalters an, wie der damit umgeht, wenn ein eigentlich unnötiger Schaltbefehl kommt? Bei mir betroffen wären MQTT, Homematic (+IP), Sonoff, Shelly, Deconz und Hue.

      Mir geht es einmal darum, unnötigen (Funk-)Verkehr einzusparen, andererseits aber die Scripte nicht unnötig aufzublähen und nur das zu tun, was auch nötig und sinnvoll ist.

      Gruss, Jürgen

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

        @wildbill sagte: unnötigen (Funk-)Verkehr einzusparen

        Das sollte man, da man so gegenseitige Störungen vermeidet. Bei 868 MHz (HomeMatic) muss man unnötiges Senden auch mit Rücksicht auf den Duty Cycle vermeiden.

        EDIT: Die komplexe Funktion "steuere" nur einmal per Callback-Funktion verwenden:

        Blockly_temp.JPG

        W 1 Reply Last reply Reply Quote 1
        • W
          Wildbill @paul53 last edited by

          @paul53 Da muss ich mich erstmal reindenken. Aber sieht gut aus, dann werde ich die Scripte so auf- bzw. umbauen.
          Auf welche ID bezieht sich in Deinem Beispiel „Wert von Objekt-ID (ID auswählen)? Schon auf den jeweils zu schaltenden Datenpunkt (den Du an den anderen Stellen „Licht“ genannt hast?

          Da Du den Duty cycle ansprichst. Das heißt also, Homematic (und andere?) würde stur ein Paket absenden, auch wenn es eigentlich unnötig wäre?

          Gruss, Jürgen

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

            @wildbill sagte: Auf welche ID bezieht sich in Deinem Beispiel „Wert von Objekt-ID (ID auswählen)?

            Bei dir "BWM_Alle_aktiv".

            @wildbill sagte in Stur schalten oder lieber vorher IST-Zustand abfragen:

            Homematic (und andere?) würde stur ein Paket absenden, auch wenn es eigentlich unnötig wäre?

            Ja. Die anderen genannten Protokolle funken auf 2,4 GHz. Auf 868 MHz funken auch Z-Wave und Enocean.

            W 1 Reply Last reply Reply Quote 1
            • W
              Wildbill @paul53 last edited by

              @paul53 Ich Blindfisch, vor lauter Abfragen hatte ich vergessen, dass ich ja auch abfrage, ob auf Bewegungsmelder gerade überhaupt reagiert werdedn soll oder ich zu nachtschlafender Zeit lieber darauf verzichte. Super, dann ist mir klar, was ich zu tun habe. Ich danke Dir. 👍

              Und Danke für die Info, dass Adapter auch stur Pakete absenden, wenn es eigentlich nicht nötig wäre. Da habe ich dann doch noch einiges mehr zu optimieren.

              Gruss, Jürgen

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

              Support us

              ioBroker
              Community Adapters
              Donate

              780
              Online

              31.7k
              Users

              79.8k
              Topics

              1.3m
              Posts

              2
              5
              204
              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