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. Auslösen nur bei Falsch

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    541

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

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

Auslösen nur bei Falsch

Scheduled Pinned Locked Moved Blockly
40 Posts 8 Posters 4.6k Views 3 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.
  • xadoxX Offline
    xadoxX Offline
    xadox
    wrote on last edited by xadox
    #1

    Ich nutzte einen Reed Kontakt mit Shelly und möchte, dass ein Ereignis nur eintritt wenn der Reed Kontakt "false" liefert.
    Ich bekomme es aber leider nicht hin. Ich wäre daher über Tipps dankbar:

    fd91c943-78a9-4c44-bf6e-479345cdff9a-image.png

    on({ id: 'shelly.0.shellyplus1#441793a38938#1.Ext.input100' /* Input100 */, change: 'ne' }, async (obj) => {
      let value = obj.state.val;
      let oldValue = obj.oldState.val;
      if ((obj.state ? obj.state.val : "") == false) {
        // rotes Lauflicht Tor in Bewegung
        try {
          require("request")('http://192.168./win&PL=2').on("error", (e) => { console.error(e); });
        } catch (e) { console.error(e); }
        await wait(8000);
        // grünes Licht Tor offen/zu
        try {
          require("request")('http://192.168./win&PL=6').on("error", (e) => { console.error(e); });
        } catch (e) { console.error(e); }
        await wait(3000);
        // Spots An
        try {
          require("request")('http://192.168./win&PL=7').on("error", (e) => { console.error(e); });
        } catch (e) { console.error(e); }
        await wait(60000);
        // Spots Aus
        try {
          require("request")('http://192.168./win&T=0').on("error", (e) => { console.error(e); });
        } catch (e) { console.error(e); }
      }
    });
    
    HomoranH 1 Reply Last reply
    0
    • xadoxX xadox

      Ich nutzte einen Reed Kontakt mit Shelly und möchte, dass ein Ereignis nur eintritt wenn der Reed Kontakt "false" liefert.
      Ich bekomme es aber leider nicht hin. Ich wäre daher über Tipps dankbar:

      fd91c943-78a9-4c44-bf6e-479345cdff9a-image.png

      on({ id: 'shelly.0.shellyplus1#441793a38938#1.Ext.input100' /* Input100 */, change: 'ne' }, async (obj) => {
        let value = obj.state.val;
        let oldValue = obj.oldState.val;
        if ((obj.state ? obj.state.val : "") == false) {
          // rotes Lauflicht Tor in Bewegung
          try {
            require("request")('http://192.168./win&PL=2').on("error", (e) => { console.error(e); });
          } catch (e) { console.error(e); }
          await wait(8000);
          // grünes Licht Tor offen/zu
          try {
            require("request")('http://192.168./win&PL=6').on("error", (e) => { console.error(e); });
          } catch (e) { console.error(e); }
          await wait(3000);
          // Spots An
          try {
            require("request")('http://192.168./win&PL=7').on("error", (e) => { console.error(e); });
          } catch (e) { console.error(e); }
          await wait(60000);
          // Spots Aus
          try {
            require("request")('http://192.168./win&T=0').on("error", (e) => { console.error(e); });
          } catch (e) { console.error(e); }
        }
      });
      
      HomoranH Do not disturb
      HomoranH Do not disturb
      Homoran
      Global Moderator Administrators
      wrote on last edited by
      #2

      @xadox sagte in Auslösen nur bei Falsch:

      Ich wäre daher über Tipps dankbar:

      wenn ... "ist kleiner als letztes"

      kein Support per PN! - Fragen im Forum stellen -
      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
      Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      xadoxX 1 Reply Last reply
      1
      • HomoranH Homoran

        @xadox sagte in Auslösen nur bei Falsch:

        Ich wäre daher über Tipps dankbar:

        wenn ... "ist kleiner als letztes"

        xadoxX Offline
        xadoxX Offline
        xadox
        wrote on last edited by
        #3

        @homoran Vielen Dank. Du meinst dann so:
        d4c43853-a99f-4a86-a484-af1d1dfc3c9a-image.png

        L 1 Reply Last reply
        0
        • xadoxX xadox

          @homoran Vielen Dank. Du meinst dann so:
          d4c43853-a99f-4a86-a484-af1d1dfc3c9a-image.png

          L Offline
          L Offline
          lessthanmore
          wrote on last edited by
          #4

          @xadox Nein, im Trigger statt „wurde geändert“ auf „ist kleiner als letztes“ ändern.

          1 Reply Last reply
          1
          • xadoxX Offline
            xadoxX Offline
            xadox
            wrote on last edited by
            #5

            Habe ich angepasst. Vielen Dank.

            Allerdings verstehe ich dies nicht. Wie kann der Wert hier kleiner sein? Er kann doch entweder "true" oder "false" sein.

            WalW 1 Reply Last reply
            0
            • xadoxX xadox

              Habe ich angepasst. Vielen Dank.

              Allerdings verstehe ich dies nicht. Wie kann der Wert hier kleiner sein? Er kann doch entweder "true" oder "false" sein.

              WalW Offline
              WalW Offline
              Wal
              Developer
              wrote on last edited by
              #6

              @xadox ,
              true ist 1
              false ist 0
              was ist kleiner als 1 ?

              Gruß
              Walter

              DoorIO-Adapter
              wioBrowser-Adapter und wioBrowser

              MartinPM xadoxX 2 Replies Last reply
              3
              • WalW Wal

                @xadox ,
                true ist 1
                false ist 0
                was ist kleiner als 1 ?

                MartinPM Online
                MartinPM Online
                MartinP
                wrote on last edited by MartinP
                #7
                1. Ist der Zustand des Reed-Kontaktes eine Nebenbedingung?
                2. Oder wird der Zustand des Reed-Kontaktes im Datenpunkt "Input100" gemeldet, und es soll nur dessen Wechsel von true -> false zu dem Ablauf in der Blockly - Klammer führen?

                Die Formulierung des einleitenden Satzes lässt da Interpretationsspielraum:

                Ich nutzte einen Reed Kontakt mit Shelly und möchte, dass ein Ereignis nur eintritt wenn der Reed Kontakt "false" liefert

                Falls (2) Möglicherweise liegt der Hase ganz woanders im Pfeffer. Reed-Kontakte "prellen" ganz gerne, das heißt der Wechsel von "true" auf "false" ist zuerst nicht stabil, sondern es kommen ein paar "true" Pulse, bevor dauerhaft "false" stehen bleibt...

                Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                Virtualization : unprivileged lxc container (debian 13) on Proxmox 9.1.5)
                Linux pve 6.17.9-1-pve
                6 GByte RAM für den Container
                Fritzbox 6591 FW 8.20 (Vodafone Leih-Box)
                Remote-Access über Wireguard der Fritzbox

                paul53P 1 Reply Last reply
                1
                • WalW Wal

                  @xadox ,
                  true ist 1
                  false ist 0
                  was ist kleiner als 1 ?

                  xadoxX Offline
                  xadoxX Offline
                  xadox
                  wrote on last edited by
                  #8

                  @wal Von der reinen Logik her verstehe ich das, aber der Reek Kontakt liefert nun mal nicht 0 oder 1 sondern true oder false.
                  Ist das eine Interne Blockly Funktion, die true und false auch als 0 und 1 interpretiert?

                  Davon abgesehen hat dies nichts geändert. Das Script löst dennoch bei jeder Zustandsänderung aus.

                  @MartinP wie von dir in 2 beschrieben.

                  MartinPM 1 Reply Last reply
                  0
                  • xadoxX xadox

                    @wal Von der reinen Logik her verstehe ich das, aber der Reek Kontakt liefert nun mal nicht 0 oder 1 sondern true oder false.
                    Ist das eine Interne Blockly Funktion, die true und false auch als 0 und 1 interpretiert?

                    Davon abgesehen hat dies nichts geändert. Das Script löst dennoch bei jeder Zustandsänderung aus.

                    @MartinP wie von dir in 2 beschrieben.

                    MartinPM Online
                    MartinPM Online
                    MartinP
                    wrote on last edited by MartinP
                    #9

                    @xadox Das ist einfach eine Definition der Programmiersprache Javascript, dass true > false ist...

                    Ich habe übrigens beide Varianten mit einem kleinen Example state in Userdata ausprobiert - auch die Variante mit der "=" Abfrage funktioniert... Die "Kleiner als" Variante braucht aber eine Klammerebene weniger ...

                    b9025da7-ddad-46a6-8341-bf8c32349600-grafik.png

                    Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                    Virtualization : unprivileged lxc container (debian 13) on Proxmox 9.1.5)
                    Linux pve 6.17.9-1-pve
                    6 GByte RAM für den Container
                    Fritzbox 6591 FW 8.20 (Vodafone Leih-Box)
                    Remote-Access über Wireguard der Fritzbox

                    1 Reply Last reply
                    0
                    • MartinPM MartinP
                      1. Ist der Zustand des Reed-Kontaktes eine Nebenbedingung?
                      2. Oder wird der Zustand des Reed-Kontaktes im Datenpunkt "Input100" gemeldet, und es soll nur dessen Wechsel von true -> false zu dem Ablauf in der Blockly - Klammer führen?

                      Die Formulierung des einleitenden Satzes lässt da Interpretationsspielraum:

                      Ich nutzte einen Reed Kontakt mit Shelly und möchte, dass ein Ereignis nur eintritt wenn der Reed Kontakt "false" liefert

                      Falls (2) Möglicherweise liegt der Hase ganz woanders im Pfeffer. Reed-Kontakte "prellen" ganz gerne, das heißt der Wechsel von "true" auf "false" ist zuerst nicht stabil, sondern es kommen ein paar "true" Pulse, bevor dauerhaft "false" stehen bleibt...

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

                      @martinp sagt: Reed-Kontakte "prellen" ganz gerne

                      Das vermute ich auch. Man sollte also entprellen:

                      Blockly_temp.JPG

                      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

                      MartinPM 1 Reply Last reply
                      0
                      • paul53P paul53

                        @martinp sagt: Reed-Kontakte "prellen" ganz gerne

                        Das vermute ich auch. Man sollte also entprellen:

                        Blockly_temp.JPG

                        MartinPM Online
                        MartinPM Online
                        MartinP
                        wrote on last edited by
                        #11

                        Zum Beispiel von @paul53 Das Problem wird nicht das "Prellen" beim Wechsel True -> False sein, sondern ein "Prellen" beim Wechsel False -> True. Da ist der True-Zustand erstmal nicht stabil, sondern es wird noch einige Male kurz "false" gemeldet.
                        ...

                        Also muss erst in den zu erstellenden "Aktionen" Block die Abfrage, ob der Zustand False vorliegt. Der Timeout muss bei jedem Wechsel - egal in welche Richtung aufgezogen werden ...

                        Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                        Virtualization : unprivileged lxc container (debian 13) on Proxmox 9.1.5)
                        Linux pve 6.17.9-1-pve
                        6 GByte RAM für den Container
                        Fritzbox 6591 FW 8.20 (Vodafone Leih-Box)
                        Remote-Access über Wireguard der Fritzbox

                        paul53P 1 Reply Last reply
                        0
                        • MartinPM MartinP

                          Zum Beispiel von @paul53 Das Problem wird nicht das "Prellen" beim Wechsel True -> False sein, sondern ein "Prellen" beim Wechsel False -> True. Da ist der True-Zustand erstmal nicht stabil, sondern es wird noch einige Male kurz "false" gemeldet.
                          ...

                          Also muss erst in den zu erstellenden "Aktionen" Block die Abfrage, ob der Zustand False vorliegt. Der Timeout muss bei jedem Wechsel - egal in welche Richtung aufgezogen werden ...

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

                          @martinp sagte: Der Timeout muss bei jedem Wechsel - egal in welche Richtung aufgezogen werden ...

                          Weshalb? Es muss nur die Wirkung während des Prellens eingehender weiterer Trigger unterdrückt werden.

                          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

                          MartinPM 1 Reply Last reply
                          0
                          • paul53P paul53

                            @martinp sagte: Der Timeout muss bei jedem Wechsel - egal in welche Richtung aufgezogen werden ...

                            Weshalb? Es muss nur die Wirkung während des Prellens eingehender weiterer Trigger unterdrückt werden.

                            MartinPM Online
                            MartinPM Online
                            MartinP
                            wrote on last edited by MartinP
                            #13

                            @paul53 falls der Low-Zustand lange stabil angelegen hat, ist der Entprell-Timeout für den High->Low Übergang abgelaufen.

                            Wenn dann beim darauf folgenden Low->High Übergang der Entprell-Timeout nicht aufgezogen wird, wird die fallende Flanke des ersten "Preller", der diesem Übergang folgt als regulärer High->Low Übergang interpretiert ...

                            Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                            Virtualization : unprivileged lxc container (debian 13) on Proxmox 9.1.5)
                            Linux pve 6.17.9-1-pve
                            6 GByte RAM für den Container
                            Fritzbox 6591 FW 8.20 (Vodafone Leih-Box)
                            Remote-Access über Wireguard der Fritzbox

                            paul53P 1 Reply Last reply
                            0
                            • MartinPM MartinP

                              @paul53 falls der Low-Zustand lange stabil angelegen hat, ist der Entprell-Timeout für den High->Low Übergang abgelaufen.

                              Wenn dann beim darauf folgenden Low->High Übergang der Entprell-Timeout nicht aufgezogen wird, wird die fallende Flanke des ersten "Preller", der diesem Übergang folgt als regulärer High->Low Übergang interpretiert ...

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

                              @martinp sagte: falls der Low-Zustand lange stabil angelegen hat

                              ... dann prellt der Kontakt nicht mehr. Prellen bewirkt schnelle Änderungen in beide Richtungen.

                              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

                              MartinPM 1 Reply Last reply
                              0
                              • paul53P paul53

                                @martinp sagte: falls der Low-Zustand lange stabil angelegen hat

                                ... dann prellt der Kontakt nicht mehr. Prellen bewirkt schnelle Änderungen in beide Richtungen.

                                MartinPM Online
                                MartinPM Online
                                MartinP
                                wrote on last edited by
                                #15

                                @paul53 Es geht um die Preller die dem Low->High Übergang folgen - gibt es da Preller, enthalten diese natürlich auf "fake" High-Low-Übergänge, die ausgeblendet werden müssen.

                                Dein Beispiel-Schnipsel arbeitet da aber durchaus korrekt, er zieht den Timeout bei jeder Flanke auf ... Da der "Wenn" Block aber noch nicht enthalten war, habe ich nur auf die korrekte Platzierung von diesem hingewiesen...

                                Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                                Virtualization : unprivileged lxc container (debian 13) on Proxmox 9.1.5)
                                Linux pve 6.17.9-1-pve
                                6 GByte RAM für den Container
                                Fritzbox 6591 FW 8.20 (Vodafone Leih-Box)
                                Remote-Access über Wireguard der Fritzbox

                                1 Reply Last reply
                                0
                                • xadoxX Offline
                                  xadoxX Offline
                                  xadox
                                  wrote on last edited by
                                  #16

                                  Ich habe eurer Diskussion nicht ganz folgen können aber dies hat das Problem auch nicht lösen können:

                                  a8f997d6-5e0b-4491-b5ba-0d202e2a1e30-image.png

                                  HomoranH 1 Reply Last reply
                                  0
                                  • xadoxX xadox

                                    Ich habe eurer Diskussion nicht ganz folgen können aber dies hat das Problem auch nicht lösen können:

                                    a8f997d6-5e0b-4491-b5ba-0d202e2a1e30-image.png

                                    HomoranH Do not disturb
                                    HomoranH Do not disturb
                                    Homoran
                                    Global Moderator Administrators
                                    wrote on last edited by
                                    #17

                                    @xadox sagte in Auslösen nur bei Falsch:

                                    dies hat das Problem auch nicht lösen können

                                    heisst in beschreibender Sprache?

                                    kein Support per PN! - Fragen im Forum stellen -
                                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                    Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
                                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                    1 Reply Last reply
                                    0
                                    • xadoxX Offline
                                      xadoxX Offline
                                      xadox
                                      wrote on last edited by
                                      #18

                                      Trigger löst nach wie vor bei jeder Änderung aus.
                                      Sowohl auf false auch auch auf true.

                                      paul53P 1 Reply Last reply
                                      0
                                      • xadoxX xadox

                                        Trigger löst nach wie vor bei jeder Änderung aus.
                                        Sowohl auf false auch auch auf true.

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

                                        @xadox sagte: Trigger löst nach wie vor bei jeder Änderung aus.
                                        Sowohl auf false auch auch auf true.

                                        Wie stellst du das fest? Mit entsprechenden Logs?

                                        Blockly_temp.JPG

                                        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

                                        xadoxX 1 Reply Last reply
                                        0
                                        • MartinPM Online
                                          MartinPM Online
                                          MartinP
                                          wrote on last edited by MartinP
                                          #20

                                          @paul53 Durch die Nutzung von "ist kleiner als Letztes" kommt vom Prellen am Übergang Low->High der erste Impuls ungefiltert durch.

                                          So etwas in der Art sollte das beheben. Habe ich mal für einen kurzen Test genutzt...

                                          3f76698f-2f3f-4641-9270-9a0e2c7230d3-grafik.png

                                          Hier ist aber die Sperrzeit, bevor wieder Änderungen angenommen werden mit 8000 ms sicherlich deutlich zu hoch...

                                          Alternativ wäre natürlich zu fragen, ob nicht direkt im Shelly der Eingang entprellt werden kann, entweder per Konfiguration in der Shelly Firmware, oder in Form einer Vorschalt-Mimik zwischen Shelly und Reed-Kontakt ...
                                          Da wird ja schon bei jedem Prellen unnötig ein Telegramm auf die Reise geschickt ...

                                          Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                                          Virtualization : unprivileged lxc container (debian 13) on Proxmox 9.1.5)
                                          Linux pve 6.17.9-1-pve
                                          6 GByte RAM für den Container
                                          Fritzbox 6591 FW 8.20 (Vodafone Leih-Box)
                                          Remote-Access über Wireguard der Fritzbox

                                          paul53P 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

                                          501

                                          Online

                                          32.7k

                                          Users

                                          82.5k

                                          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