Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. [Gelöst] Blockly Trigger Abhängigkeit

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    328

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    9
    1
    297

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    927

[Gelöst] Blockly Trigger Abhängigkeit

Geplant Angeheftet Gesperrt Verschoben Blockly
7 Beiträge 4 Kommentatoren 293 Aufrufe 3 Beobachtet
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • draexlerD Offline
    draexlerD Offline
    draexler
    schrieb am zuletzt editiert von draexler
    #1

    Hi Zusammen,
    komme gerade nicht weiter 😧 Vielleicht stehe ich auch komplett auf dem Schlauch.

    Was ich machen möchte:
    In der Visualisierung möchte ich einen Hauptschalter für die Lichter in einen Raum haben (true/false).
    Wenn eine oder mehrere dieser Lampe eingeschaltet werden, springt der Schalter auf true (Signalisieren das eine oder mehrere Lampen brennen). Ich kann mit mit diesen Schalter auch alle Lampen gleichzeitig wieder ausschalten.
    So weit so gut. Jetzt aber das Problem: Wenn ich jetzt implementiere das wenn der Hauptschalter von Hand auf true gestellt wird, das alle Lichter angehen funktioniert das noch... ABER wenn ich jetzt eine der Einzellampen einschalte wird ja der Wert des Hauptschalters aufgrund der oben genannten Prüfung auf true gesetzt und das triggert an das alle Lichter eingeschaltet werden

    In der Suche bin ich ständig auf den Hinweis mit "Entprellen" gestoßen. Aber das funktioniert nicht bzw. habe ich es auch nicht verstanden wie das mit der Variable funktionieren soll. Oder gibt es es hier tatsächlich einen eigenen Baustein denn ich nur nicht gefunden habe??

    AlCalzoneA W mickymM 3 Antworten Letzte Antwort
    0
    • draexlerD draexler

      Hi Zusammen,
      komme gerade nicht weiter 😧 Vielleicht stehe ich auch komplett auf dem Schlauch.

      Was ich machen möchte:
      In der Visualisierung möchte ich einen Hauptschalter für die Lichter in einen Raum haben (true/false).
      Wenn eine oder mehrere dieser Lampe eingeschaltet werden, springt der Schalter auf true (Signalisieren das eine oder mehrere Lampen brennen). Ich kann mit mit diesen Schalter auch alle Lampen gleichzeitig wieder ausschalten.
      So weit so gut. Jetzt aber das Problem: Wenn ich jetzt implementiere das wenn der Hauptschalter von Hand auf true gestellt wird, das alle Lichter angehen funktioniert das noch... ABER wenn ich jetzt eine der Einzellampen einschalte wird ja der Wert des Hauptschalters aufgrund der oben genannten Prüfung auf true gesetzt und das triggert an das alle Lichter eingeschaltet werden

      In der Suche bin ich ständig auf den Hinweis mit "Entprellen" gestoßen. Aber das funktioniert nicht bzw. habe ich es auch nicht verstanden wie das mit der Variable funktionieren soll. Oder gibt es es hier tatsächlich einen eigenen Baustein denn ich nur nicht gefunden habe??

      AlCalzoneA Offline
      AlCalzoneA Offline
      AlCalzone
      Developer
      schrieb am zuletzt editiert von AlCalzone
      #2

      @draexler Ein Datenpunkt kann bestätigt (ACK=true) oder gesteuert (ACK=false) werden. ACK=false bedeutet, dass die Statusänderung eine Aktion ausführen soll, ACK=false ist quasi eine Rückmeldung.

      Du solltest also beim Betätigen des Schalters ACK=false setzen (ist Standard, ggf. musst du hier nichts ändern). Beim Aktualisieren des "Hauptschalters" mit dem Status der Einzellampen muss ACK=true genutzt werden, damit dann nichts passiert.

      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

      draexlerD 1 Antwort Letzte Antwort
      1
      • AlCalzoneA AlCalzone

        @draexler Ein Datenpunkt kann bestätigt (ACK=true) oder gesteuert (ACK=false) werden. ACK=false bedeutet, dass die Statusänderung eine Aktion ausführen soll, ACK=false ist quasi eine Rückmeldung.

        Du solltest also beim Betätigen des Schalters ACK=false setzen (ist Standard, ggf. musst du hier nichts ändern). Beim Aktualisieren des "Hauptschalters" mit dem Status der Einzellampen muss ACK=true genutzt werden, damit dann nichts passiert.

        draexlerD Offline
        draexlerD Offline
        draexler
        schrieb am zuletzt editiert von draexler
        #3

        @alcalzone: danke dir für die Schnelle Antwort.
        Kannst du mir mit eine Screenshot zeigen wo ich das finde?
        Bzw. noch als Ergänzung. Das Problem tritt auf wenn ich nach dem ich den Hauptschalter mit Funktion ergänzt habe bei TRUE alle Lampen einzuschalten. Schalte ich anschließend z.B. über HomeKit eine einzelne Lampe ein wird geprüft und das Datenobjekt des Hauptschalters springt auf TRUE. Aktiviert aber damit auch die Funktion das alle Lampen eingeschaltet werden.
        Bildschirmfoto 2021-07-20 um 23.50.54.png

        1 Antwort Letzte Antwort
        0
        • draexlerD draexler

          Hi Zusammen,
          komme gerade nicht weiter 😧 Vielleicht stehe ich auch komplett auf dem Schlauch.

          Was ich machen möchte:
          In der Visualisierung möchte ich einen Hauptschalter für die Lichter in einen Raum haben (true/false).
          Wenn eine oder mehrere dieser Lampe eingeschaltet werden, springt der Schalter auf true (Signalisieren das eine oder mehrere Lampen brennen). Ich kann mit mit diesen Schalter auch alle Lampen gleichzeitig wieder ausschalten.
          So weit so gut. Jetzt aber das Problem: Wenn ich jetzt implementiere das wenn der Hauptschalter von Hand auf true gestellt wird, das alle Lichter angehen funktioniert das noch... ABER wenn ich jetzt eine der Einzellampen einschalte wird ja der Wert des Hauptschalters aufgrund der oben genannten Prüfung auf true gesetzt und das triggert an das alle Lichter eingeschaltet werden

          In der Suche bin ich ständig auf den Hinweis mit "Entprellen" gestoßen. Aber das funktioniert nicht bzw. habe ich es auch nicht verstanden wie das mit der Variable funktionieren soll. Oder gibt es es hier tatsächlich einen eigenen Baustein denn ich nur nicht gefunden habe??

          W Offline
          W Offline
          Wildbill
          schrieb am zuletzt editiert von
          #4

          @draexler Dafür böte sich auch der Szenen - Adapter (scenes) an. Eine Szene erstellen in der alle Lampen enthalten sind und im VIS dann den Trigger der Szene als zu schaltenden Datenpunkt. Dann kannst Du per VIS die Szene ein - und ausschalten und der Trigger-Datenpunkt wird auch nur true, wenn die Szene aktiv ist, also alle Lampen leuchten.

          Gruß, Jürgen

          draexlerD 1 Antwort Letzte Antwort
          1
          • W Wildbill

            @draexler Dafür böte sich auch der Szenen - Adapter (scenes) an. Eine Szene erstellen in der alle Lampen enthalten sind und im VIS dann den Trigger der Szene als zu schaltenden Datenpunkt. Dann kannst Du per VIS die Szene ein - und ausschalten und der Trigger-Datenpunkt wird auch nur true, wenn die Szene aktiv ist, also alle Lampen leuchten.

            Gruß, Jürgen

            draexlerD Offline
            draexlerD Offline
            draexler
            schrieb am zuletzt editiert von
            #5

            @wildbill: danke dir für die Idee 😊
            Aber ich möchte das der schalter schon true ist wenn noch nicht alle Lampen des Raumes leuchten.

            1 Antwort Letzte Antwort
            0
            • draexlerD draexler

              Hi Zusammen,
              komme gerade nicht weiter 😧 Vielleicht stehe ich auch komplett auf dem Schlauch.

              Was ich machen möchte:
              In der Visualisierung möchte ich einen Hauptschalter für die Lichter in einen Raum haben (true/false).
              Wenn eine oder mehrere dieser Lampe eingeschaltet werden, springt der Schalter auf true (Signalisieren das eine oder mehrere Lampen brennen). Ich kann mit mit diesen Schalter auch alle Lampen gleichzeitig wieder ausschalten.
              So weit so gut. Jetzt aber das Problem: Wenn ich jetzt implementiere das wenn der Hauptschalter von Hand auf true gestellt wird, das alle Lichter angehen funktioniert das noch... ABER wenn ich jetzt eine der Einzellampen einschalte wird ja der Wert des Hauptschalters aufgrund der oben genannten Prüfung auf true gesetzt und das triggert an das alle Lichter eingeschaltet werden

              In der Suche bin ich ständig auf den Hinweis mit "Entprellen" gestoßen. Aber das funktioniert nicht bzw. habe ich es auch nicht verstanden wie das mit der Variable funktionieren soll. Oder gibt es es hier tatsächlich einen eigenen Baustein denn ich nur nicht gefunden habe??

              mickymM Online
              mickymM Online
              mickym
              Most Active
              schrieb am zuletzt editiert von mickym
              #6

              @draexler Nachdem in meinen Augen, das Problem bei Dir eher ein logisches ist und keines Deiner Logikmaschine. Ich arbeite mit NodeRed - aber wie gesagt - umsetzen kannst Du das mit allen Maschinen.

              Was ich bei Dir verstehe sind folgende Dinge:

              1. Sobald eine Lampe in einem Raum eingeschaltet wird, dann ist der Status Deines Hauptschalters an. (Bei mir auch).
              2. Wenn Du möchtest das beim Schalten des Hauptschalters alle Lichter angehen, dann kannst Du das nur mit einem selbst definiertem Datenpunkt machen oder Du arbeitest wie schon angesprochen mit den ACK Flags. VIS schickt immer unbestätigt den Status aus (ACK=False) - wenn Du also den Status aufgrund einer Zustandsänderung einschaltest - könnte man das ggf. hier unterscheiden.
              3. Wenn Du nun einzelne Lampen zusätzlich einschaltest würde das die anderen Lampen nicht einschalten, weil Du diesen Vorgang bestätigt schaltest, während VIS das unbestätigt macht. (also der Status des Hauptschalters wird nicht aktualisiert (ACK=true) und nicht gesteuert (wie bei VIS - ACK= false).
              4. Ein sogenanntes Entprellen würde Dir nicht helfen. Das prüft nur, ob der Hauptschalter bereits eingeschaltet ist oder nicht und blockt somit einen weiteren Einschaltvorgang - würde aber ggf. auch verhindern, dass Du über VIS weiterhin alles einschaltest.

              Ich hoffe, ich habe mich verständlich ausgedrückt.

              Im Prinzip musst Du bei dem Hauptschalter - ich sehe Du machst ja schon steuern bzw. aktualisieren, dass Du nur dann die anderen Lichtschalter einschaltest, wenn der Hauptschalter gesteuert und nicht aktualisiert wird - das unterscheidest Du in dem Du nicht Auslösung egal nimmst:

              a09fbbf0-4401-4abf-a585-3c3a817891ae-image.png

              bestätigt werden die Änderungen des Hauptschalters durch die anderen Lampen.
              unbestätigt wird die Änderung durch VIS.

              Also hast Du letztlich für aktives Schalten nur ein Trigger für Deinen Hauptschalter - nämlich die "unbestätigte Änderung" durch VIS. Alle Statusupdates durch die anderen Lampen haben mit Aktualisierung zu erfolgen (und sind deshalb "bestätigte Änderungen") und triggern deshalb nicht das Einschalten der anderen Lampen. Ich hoffe, ich habs verständlich ausgedrückt.

              Also falls der untere Teil der Hauptschalter ist, der alle anderen Lampen einschaltet, stell den mal auf Auslösung - unbestätigte Änderung.

              Der obere Teil aktualisiert ja (und steuert) nicht, deshalb sollte die Änderung dort ja bestätigt sein.

              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.

              draexlerD 1 Antwort Letzte Antwort
              1
              • mickymM mickym

                @draexler Nachdem in meinen Augen, das Problem bei Dir eher ein logisches ist und keines Deiner Logikmaschine. Ich arbeite mit NodeRed - aber wie gesagt - umsetzen kannst Du das mit allen Maschinen.

                Was ich bei Dir verstehe sind folgende Dinge:

                1. Sobald eine Lampe in einem Raum eingeschaltet wird, dann ist der Status Deines Hauptschalters an. (Bei mir auch).
                2. Wenn Du möchtest das beim Schalten des Hauptschalters alle Lichter angehen, dann kannst Du das nur mit einem selbst definiertem Datenpunkt machen oder Du arbeitest wie schon angesprochen mit den ACK Flags. VIS schickt immer unbestätigt den Status aus (ACK=False) - wenn Du also den Status aufgrund einer Zustandsänderung einschaltest - könnte man das ggf. hier unterscheiden.
                3. Wenn Du nun einzelne Lampen zusätzlich einschaltest würde das die anderen Lampen nicht einschalten, weil Du diesen Vorgang bestätigt schaltest, während VIS das unbestätigt macht. (also der Status des Hauptschalters wird nicht aktualisiert (ACK=true) und nicht gesteuert (wie bei VIS - ACK= false).
                4. Ein sogenanntes Entprellen würde Dir nicht helfen. Das prüft nur, ob der Hauptschalter bereits eingeschaltet ist oder nicht und blockt somit einen weiteren Einschaltvorgang - würde aber ggf. auch verhindern, dass Du über VIS weiterhin alles einschaltest.

                Ich hoffe, ich habe mich verständlich ausgedrückt.

                Im Prinzip musst Du bei dem Hauptschalter - ich sehe Du machst ja schon steuern bzw. aktualisieren, dass Du nur dann die anderen Lichtschalter einschaltest, wenn der Hauptschalter gesteuert und nicht aktualisiert wird - das unterscheidest Du in dem Du nicht Auslösung egal nimmst:

                a09fbbf0-4401-4abf-a585-3c3a817891ae-image.png

                bestätigt werden die Änderungen des Hauptschalters durch die anderen Lampen.
                unbestätigt wird die Änderung durch VIS.

                Also hast Du letztlich für aktives Schalten nur ein Trigger für Deinen Hauptschalter - nämlich die "unbestätigte Änderung" durch VIS. Alle Statusupdates durch die anderen Lampen haben mit Aktualisierung zu erfolgen (und sind deshalb "bestätigte Änderungen") und triggern deshalb nicht das Einschalten der anderen Lampen. Ich hoffe, ich habs verständlich ausgedrückt.

                Also falls der untere Teil der Hauptschalter ist, der alle anderen Lampen einschaltet, stell den mal auf Auslösung - unbestätigte Änderung.

                Der obere Teil aktualisiert ja (und steuert) nicht, deshalb sollte die Änderung dort ja bestätigt sein.

                draexlerD Offline
                draexlerD Offline
                draexler
                schrieb am zuletzt editiert von
                #7

                @mickym Ich sage jetzt einfach mal WOW :-) Das war die Lösung. Nach den ersten Test funktioniert es wunderbar. Ich danke dir vielmals @mickym

                1 Antwort Letzte Antwort
                0

                Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                Registrieren Anmelden
                Antworten
                • In einem neuen Thema antworten
                Anmelden zum Antworten
                • Älteste zuerst
                • Neuste zuerst
                • Meiste Stimmen


                Support us

                ioBroker
                Community Adapters
                Donate

                418

                Online

                32.8k

                Benutzer

                82.8k

                Themen

                1.3m

                Beiträge
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                ioBroker Community 2014-2025
                logo
                • Anmelden

                • Du hast noch kein Konto? Registrieren

                • Anmelden oder registrieren, um zu suchen
                • Erster Beitrag
                  Letzter Beitrag
                0
                • Home
                • Aktuell
                • Tags
                • Ungelesen 0
                • Kategorien
                • Unreplied
                • Beliebt
                • GitHub
                • Docu
                • Hilfe