Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Ist meine ODER Logik korrekt?

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Ist meine ODER Logik korrekt?

Scheduled Pinned Locked Moved Blockly
24 Posts 5 Posters 2.8k Views 5 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • BananaJoeB BananaJoe

    @rtwl Falls eine der 4 Bedingungen erfüllt wird sollte mache aufgerufen werden

    rtwlR Online
    rtwlR Online
    rtwl
    wrote on last edited by
    #6

    @bananajoe Alles klar, danke 👍

    -Peter

    1 Reply Last reply
    0
    • rtwlR rtwl

      @ofbeqnpolkkl6mby5e13 sagte in Ist meine ODER Logik korrekt?:

      Das hängt davon ab, ob dein Wert "next_hour" unabhängig von "current" aktualisiert wird

      Ja, daran hab ich auch anfangs gedacht, und ich gehe mal davon aus, dass beide gleichzeitig aktualisiert werden, da der DasWetter Adapter jede halbe Stunde alle Daten abruft.
      Aber ich werde das mal beobachten.
      Theoretisch könnte ich ja den zweiten Datenpunkt auch in den Trigger mit auf nehmen, oder?

      O Away
      O Away
      oFbEQnpoLKKl6mbY5e13
      wrote on last edited by
      #7

      @rtwl
      Richtig.

      rtwlR 1 Reply Last reply
      0
      • O oFbEQnpoLKKl6mbY5e13

        @rtwl
        Richtig.

        rtwlR Online
        rtwlR Online
        rtwl
        wrote on last edited by
        #8

        @ofbeqnpolkkl6mby5e13
        Dann mach ich das. Sicher ist sicher. Danke für den Input👍

        -Peter

        O 1 Reply Last reply
        0
        • rtwlR rtwl

          @ofbeqnpolkkl6mby5e13
          Dann mach ich das. Sicher ist sicher. Danke für den Input👍

          O Away
          O Away
          oFbEQnpoLKKl6mbY5e13
          wrote on last edited by
          #9

          @rtwl
          Wenn immer beide getriggert werden, wird natürlich auch zweimal die Logik durchlaufen, aber ob das den Kohl fett macht...

          rtwlR 1 Reply Last reply
          0
          • O oFbEQnpoLKKl6mbY5e13

            @rtwl
            Wenn immer beide getriggert werden, wird natürlich auch zweimal die Logik durchlaufen, aber ob das den Kohl fett macht...

            rtwlR Online
            rtwlR Online
            rtwl
            wrote on last edited by
            #10

            @ofbeqnpolkkl6mby5e13 sagte in Ist meine ODER Logik korrekt?:

            aber ob das den Kohl fett macht...

            nö vermutlich nicht.

            Eine frage aber noch an dich: Hast du unabsichtlich dein Passwort als Username vergeben oder ist deine Katze über deine Tastatur gelaufen? 😉

            -Peter

            O 1 Reply Last reply
            0
            • rtwlR rtwl

              @ofbeqnpolkkl6mby5e13 sagte in Ist meine ODER Logik korrekt?:

              aber ob das den Kohl fett macht...

              nö vermutlich nicht.

              Eine frage aber noch an dich: Hast du unabsichtlich dein Passwort als Username vergeben oder ist deine Katze über deine Tastatur gelaufen? 😉

              O Away
              O Away
              oFbEQnpoLKKl6mbY5e13
              wrote on last edited by oFbEQnpoLKKl6mbY5e13
              #11

              @rtwl
              Das wurde ich schon mal gefragt...die einfache Antwort ist: Ich hatte an dem Tag einfach keine bessere Idee als einen Passwortgenerator auch für den Username zu verwenden...

              1 Reply Last reply
              2
              • rtwlR rtwl

                @ofbeqnpolkkl6mby5e13 sagte in Ist meine ODER Logik korrekt?:

                Das hängt davon ab, ob dein Wert "next_hour" unabhängig von "current" aktualisiert wird

                Ja, daran hab ich auch anfangs gedacht, und ich gehe mal davon aus, dass beide gleichzeitig aktualisiert werden, da der DasWetter Adapter jede halbe Stunde alle Daten abruft.
                Aber ich werde das mal beobachten.
                Theoretisch könnte ich ja den zweiten Datenpunkt auch in den Trigger mit auf nehmen, oder?

                paul53P Offline
                paul53P Offline
                paul53
                wrote on last edited by paul53
                #12

                @rtwl sagte: ich gehe mal davon aus, dass beide gleichzeitig aktualisiert werden

                Exakt gleichzeitig gibt es nicht.

                @rtwl sagte in Ist meine ODER Logik korrekt?:

                könnte ich ja den zweiten Datenpunkt auch in den Trigger mit auf nehmen, oder?

                Du solltest prüfen, welcher DP im Zyklus zuletzt aktualisiert wird und diesen DP als Trigger verwenden.

                @rtwl sagte in Ist meine ODER Logik korrekt?:

                Bei einem Code höher als 2 wird nicht in den Sonnenschutz gefahren.

                Dann genügt für den Wert beider Datenpunkte eine Prüfung auf <= 2.

                Bild_2022-08-12_121945954.png

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                1 Reply Last reply
                0
                • mickymM Offline
                  mickymM Offline
                  mickym
                  Most Active
                  wrote on last edited by
                  #13

                  Wenn man das nicht bestimmen kann, wer wann wie wo triggert, würde ich halt beide Werte in einem Objekt in einer Variable sammeln und diese beiden Eigenschaften mit ODER verknüpfen. So funktioniert es halt mit NR.

                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                  paul53P 1 Reply Last reply
                  0
                  • mickymM mickym

                    Wenn man das nicht bestimmen kann, wer wann wie wo triggert, würde ich halt beide Werte in einem Objekt in einer Variable sammeln und diese beiden Eigenschaften mit ODER verknüpfen. So funktioniert es halt mit NR.

                    paul53P Offline
                    paul53P Offline
                    paul53
                    wrote on last edited by
                    #14

                    @mickym sagte: Wenn man das nicht bestimmen kann, wer wann wie wo triggert

                    Man kann.

                    Bild_2022-08-12_122842789.png

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    mickymM 1 Reply Last reply
                    0
                    • paul53P paul53

                      @mickym sagte: Wenn man das nicht bestimmen kann, wer wann wie wo triggert

                      Man kann.

                      Bild_2022-08-12_122842789.png

                      mickymM Offline
                      mickymM Offline
                      mickym
                      Most Active
                      wrote on last edited by mickym
                      #15

                      @paul53 ja und beide Werte in eine Variable mit unterschiedlichen Objekteigenschaften schreiben und bei jedem Trigger egal von welchem Datenpunkt auswerten und Ergebnis ausspucken. Es gibt ja im Blockly glaub auch so ein Schleifenkonstrukt, das über die Eigenschaften eines Objektes iterieren kann

                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                      paul53P 1 Reply Last reply
                      0
                      • mickymM mickym

                        @paul53 ja und beide Werte in eine Variable mit unterschiedlichen Objekteigenschaften schreiben und bei jedem Trigger egal von welchem Datenpunkt auswerten und Ergebnis ausspucken. Es gibt ja im Blockly glaub auch so ein Schleifenkonstrukt, das über die Eigenschaften eines Objektes iterieren kann

                        paul53P Offline
                        paul53P Offline
                        paul53
                        wrote on last edited by
                        #16

                        @mickym sagte: Schleifenkonstrukt, das über die Eigenschaften eines Objektes iterieren kann

                        Zu kompliziert. Man kann auch auf Änderung beider Datenpunkte triggern und durch eine kurze Verzögerung vermeiden, dass der Zieldatenpunkt zwischen 0 und 1 hin und her springt, wenn sich beide Datenpunkte "gleichzeitig" ändern.

                        Bild_2022-08-12_124510940.png

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        mickymM rtwlR 2 Replies Last reply
                        3
                        • paul53P paul53

                          @mickym sagte: Schleifenkonstrukt, das über die Eigenschaften eines Objektes iterieren kann

                          Zu kompliziert. Man kann auch auf Änderung beider Datenpunkte triggern und durch eine kurze Verzögerung vermeiden, dass der Zieldatenpunkt zwischen 0 und 1 hin und her springt, wenn sich beide Datenpunkte "gleichzeitig" ändern.

                          Bild_2022-08-12_124510940.png

                          mickymM Offline
                          mickymM Offline
                          mickym
                          Most Active
                          wrote on last edited by mickym
                          #17

                          @paul53 jo so gehts auch. Das Entprellen hast Du halt jetzt noch hinzugefügt, macht aber natürlich Sinn. Wie immer King of Blockly.👍😉 und natürlich auch JS und generell

                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                          1 Reply Last reply
                          1
                          • paul53P paul53

                            @mickym sagte: Schleifenkonstrukt, das über die Eigenschaften eines Objektes iterieren kann

                            Zu kompliziert. Man kann auch auf Änderung beider Datenpunkte triggern und durch eine kurze Verzögerung vermeiden, dass der Zieldatenpunkt zwischen 0 und 1 hin und her springt, wenn sich beide Datenpunkte "gleichzeitig" ändern.

                            Bild_2022-08-12_124510940.png

                            rtwlR Online
                            rtwlR Online
                            rtwl
                            wrote on last edited by
                            #18

                            @paul53 sagte in Ist meine ODER Logik korrekt?:

                            Bild_2022-08-12_124510940.png

                            wollte gerade deinen Vorschlag nachbauen, jedoch hab ich hier wohl keine Möglichkeit bei "falls wahr/falsch" eine Debug output zu integrieren. Damit ich Änderungen im Log sehen kann.

                            Was mich aber zu meiner zweiten Frage bringt. Aktuell erhalte ich alle 30 min einen Log eintrag vom debug output, obwohl sich die Werte nicht geändert haben. Gibt es da eine Möglichkeit der Prüfung, dass der Debug output nur dann passiert, wenn sich der Datenpunkt auch tatsächlich geändert hat?

                            2022-08-14 12:55:07.859 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz aktiv
                            2022-08-14 13:25:07.986 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz aktiv
                            2022-08-14 13:55:08.011 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz aktiv
                            2022-08-14 14:25:08.386 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz nicht aktiv
                            2022-08-14 14:55:08.156 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz nicht aktiv
                            2022-08-14 15:25:08.444 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz nicht aktiv
                            2022-08-14 15:55:08.309 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz nicht aktiv
                            2022-08-14 16:25:08.397 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz nicht aktiv
                            2022-08-14 16:55:08.306 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz nicht aktiv
                            2022-08-14 17:25:08.685 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz nicht aktiv
                            2022-08-14 17:55:08.368 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz aktiv
                            2022-08-14 18:25:08.583 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz aktiv
                            2022-08-14 18:55:08.634 - info: javascript.0 (32080) script.js.Raffstores.zSonnenstatus: Sonnenschutz aktiv
                            

                            -Peter

                            1 Reply Last reply
                            0
                            • rtwlR Online
                              rtwlR Online
                              rtwl
                              wrote on last edited by
                              #19

                              ah...
                              ich hatte den Trigger auf "wurde aktualisiert" anstelle von "wurde geändert".

                              So sollte es jetzt passen:
                              4d55dc21-8935-4a50-8474-b25b56ac1d81-image.png

                              -Peter

                              1 Reply Last reply
                              0
                              • rtwlR Online
                                rtwlR Online
                                rtwl
                                wrote on last edited by
                                #20

                                alle guten Dinge sind drei...

                                Wenn meine Logik korrekt ist, sollten jetzt dennoch bei jeder Änderung zwei gleiche Log-Einträge kommen, da immer zuerst der "next_hour" Datenpunkt geändert wird und dann eine Stunde später der "current". Beide male liegt dann ja eine "wurde geändert" Auslösung vor wodurch dann das Skript erneut durchläuft.

                                Daher trotzdem die Frage, ob es eine einfache Möglichkeit gibt den debug output block nur bei einer tatsächlichen Änderung auszuführen?

                                -Peter

                                paul53P 1 Reply Last reply
                                0
                                • rtwlR rtwl

                                  alle guten Dinge sind drei...

                                  Wenn meine Logik korrekt ist, sollten jetzt dennoch bei jeder Änderung zwei gleiche Log-Einträge kommen, da immer zuerst der "next_hour" Datenpunkt geändert wird und dann eine Stunde später der "current". Beide male liegt dann ja eine "wurde geändert" Auslösung vor wodurch dann das Skript erneut durchläuft.

                                  Daher trotzdem die Frage, ob es eine einfache Möglichkeit gibt den debug output block nur bei einer tatsächlichen Änderung auszuführen?

                                  paul53P Offline
                                  paul53P Offline
                                  paul53
                                  wrote on last edited by
                                  #21

                                  @rtwl sagte: den debug output block nur bei einer tatsächlichen Änderung auszuführen?

                                  Bild_2022-08-14_215009719.png

                                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                  rtwlR 1 Reply Last reply
                                  0
                                  • paul53P paul53

                                    @rtwl sagte: den debug output block nur bei einer tatsächlichen Änderung auszuführen?

                                    Bild_2022-08-14_215009719.png

                                    rtwlR Online
                                    rtwlR Online
                                    rtwl
                                    wrote on last edited by
                                    #22

                                    @paul53
                                    Vielen Dank!

                                    Bedeutet das, dass die Variable lastDebug auch über mehrere Stunden bis zum nächsten Triggern gespeichert bleibt und dadurch diese Prüfung zum Erfolg führt?

                                    -Peter

                                    paul53P 1 Reply Last reply
                                    0
                                    • rtwlR rtwl

                                      @paul53
                                      Vielen Dank!

                                      Bedeutet das, dass die Variable lastDebug auch über mehrere Stunden bis zum nächsten Triggern gespeichert bleibt und dadurch diese Prüfung zum Erfolg führt?

                                      paul53P Offline
                                      paul53P Offline
                                      paul53
                                      wrote on last edited by paul53
                                      #23

                                      @rtwl sagte: Bedeutet das, dass die Variable lastDebug auch über mehrere Stunden bis zum nächsten Triggern gespeichert bleibt und dadurch diese Prüfung zum Erfolg führt?

                                      Ja, sie übersteht nur keinen Neustart des Skripts.

                                      Wenn man allerdings die Variable sonnenstatus mit dem Wert des Datenpunktes vergleicht, wird auch ein Skriptstart überstanden:

                                      Bild_2022-08-14_232659808.png

                                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                      rtwlR 1 Reply Last reply
                                      1
                                      • paul53P paul53

                                        @rtwl sagte: Bedeutet das, dass die Variable lastDebug auch über mehrere Stunden bis zum nächsten Triggern gespeichert bleibt und dadurch diese Prüfung zum Erfolg führt?

                                        Ja, sie übersteht nur keinen Neustart des Skripts.

                                        Wenn man allerdings die Variable sonnenstatus mit dem Wert des Datenpunktes vergleicht, wird auch ein Skriptstart überstanden:

                                        Bild_2022-08-14_232659808.png

                                        rtwlR Online
                                        rtwlR Online
                                        rtwl
                                        wrote on last edited by
                                        #24

                                        @paul53 sagte: Wenn man allerdings die Variable sonnenstatus mit dem Wert des Datenpunktes vergleicht, wird auch ein Skriptstart überstanden

                                        Guter Input! Hab es so umgesetzt. Danke für deine tolle Hilfe und Erklärungen!

                                        -Peter

                                        1 Reply Last reply
                                        0
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes


                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        722

                                        Online

                                        32.6k

                                        Users

                                        82.3k

                                        Topics

                                        1.3m

                                        Posts
                                        Community
                                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                        ioBroker Community 2014-2025
                                        logo
                                        • Login

                                        • Don't have an account? Register

                                        • Login or register to search.
                                        • First post
                                          Last post
                                        0
                                        • Home
                                        • Recent
                                        • Tags
                                        • Unread 0
                                        • Categories
                                        • Unreplied
                                        • Popular
                                        • GitHub
                                        • Docu
                                        • Hilfe