Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Blocky bringt mich in den Wahnsinn

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    133

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

Blocky bringt mich in den Wahnsinn

Geplant Angeheftet Gesperrt Verschoben Blockly
16 Beiträge 5 Kommentatoren 1.2k Aufrufe 4 Watching
  • Ä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.
  • S Offline
    S Offline
    smartysmart
    schrieb am zuletzt editiert von smartysmart
    #1

    Kurz zum Problem ...
    Ich habe eine Lichtsteuerung mit einem Xiaomi Bewegungsmelder. Der funktioniert auch soweit gut. (Der erste Block oben)
    Ich steuere das Licht anhand ob Bewegung da ist oder nicht.

    ABER

    Wenn das Licht wie auch immer (z.b direkt über ioBroker) angeschalten wird, dann triggert meine Routine nicht.
    Also wollte ich mir ein Backup machen, dass wenn das Licht über 1 Stunde an ist, dass es dann durch den backup Trigger gefangen wird und Licht aus.

    Auch das funktioniert ABER warum bekomme ich die Debug Meldung 9999999999999 mal ?

    P.S Wenn ihr das ganze ganz anders angehen würdet oder im Blocky einfacher zu machen ist dann gerne eure Ideen.

    315ec77d-e0ca-4298-8210-a9a0d35d2d2b-image.png

    AsgothianA I 2 Antworten Letzte Antwort
    0
    • S smartysmart

      Kurz zum Problem ...
      Ich habe eine Lichtsteuerung mit einem Xiaomi Bewegungsmelder. Der funktioniert auch soweit gut. (Der erste Block oben)
      Ich steuere das Licht anhand ob Bewegung da ist oder nicht.

      ABER

      Wenn das Licht wie auch immer (z.b direkt über ioBroker) angeschalten wird, dann triggert meine Routine nicht.
      Also wollte ich mir ein Backup machen, dass wenn das Licht über 1 Stunde an ist, dass es dann durch den backup Trigger gefangen wird und Licht aus.

      Auch das funktioniert ABER warum bekomme ich die Debug Meldung 9999999999999 mal ?

      P.S Wenn ihr das ganze ganz anders angehen würdet oder im Blocky einfacher zu machen ist dann gerne eure Ideen.

      315ec77d-e0ca-4298-8210-a9a0d35d2d2b-image.png

      AsgothianA Offline
      AsgothianA Offline
      Asgothian
      Developer
      schrieb am zuletzt editiert von Asgothian
      #2

      @mend fangen wir vorne an:

      Du triggerst auf jede Aktualisierung wo eines der Lichter auf “wahr” ist. Das können viele werden. In jedem trigger startest du scheinbar einen (neuen) timeout ohne den alten zu löschen. Wenn die dann alle abgelaufen sind (und beide Lampen aus sind) dann bekommst du deine Meldung - einmal für jeden timeout.

      Änderungsvorschläge:

      1. Trigger nicht auf “ist wahr” sondern “ist größer als”. Dann bekommst du pro einschalten nur Genau einen trigger
      2. Vor dem ausführen des timeout4 die Abfrage falls timeout4 dann mache cleartimeout(timeout4)
      3. In dem bwm script solltest du such noch die Timeouts beenden falls der bwm wieder auf true geht, sonst steht man unweigerlich irgendwann im Dunkeln. (BWM erkennt dich nicht mehr, schaltet auf false, das Licht wird herunter gedimmt, du merkst das und sorgst dafür das der BWM dich wieder sieht, das Licht wird auf hell geschaltet, aber nach 10-x Sekunden geht es aus :)

      A.

      ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
      "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

      S 1 Antwort Letzte Antwort
      0
      • AsgothianA Asgothian

        @mend fangen wir vorne an:

        Du triggerst auf jede Aktualisierung wo eines der Lichter auf “wahr” ist. Das können viele werden. In jedem trigger startest du scheinbar einen (neuen) timeout ohne den alten zu löschen. Wenn die dann alle abgelaufen sind (und beide Lampen aus sind) dann bekommst du deine Meldung - einmal für jeden timeout.

        Änderungsvorschläge:

        1. Trigger nicht auf “ist wahr” sondern “ist größer als”. Dann bekommst du pro einschalten nur Genau einen trigger
        2. Vor dem ausführen des timeout4 die Abfrage falls timeout4 dann mache cleartimeout(timeout4)
        3. In dem bwm script solltest du such noch die Timeouts beenden falls der bwm wieder auf true geht, sonst steht man unweigerlich irgendwann im Dunkeln. (BWM erkennt dich nicht mehr, schaltet auf false, das Licht wird herunter gedimmt, du merkst das und sorgst dafür das der BWM dich wieder sieht, das Licht wird auf hell geschaltet, aber nach 10-x Sekunden geht es aus :)

        A.

        S Offline
        S Offline
        smartysmart
        schrieb am zuletzt editiert von smartysmart
        #3

        @Asgothian

        Hey danke für deine Hilfe.
        Bei den Lichtern handelt es sich um ein Ablageraum im Dachgeschoss d.h da ist sehr sehr selten Bewegung. Macht aber nichts ich will das trotzdem mit Sinn und Logik haben weil das nicht der letzte BWM sein soll.

        1. Trigger nicht auf “ist wahr” sondern “ist größer als”. Dann bekommst du pro einschalten nur Genau einen trigger
        1. Versteh nicht ganz was du meinst. "Ist größer als was" ?
          Du meinst die Dimmstufe ?
          Wen ja versteh ich nicht wieso es besser ist auf die Dimmstufe zu triggern. Mich interessiert ja nur ob Licht an oder aus egal welche stufe.
        1. Vor dem ausführen des timeout4 die Abfrage falls timeout4 dann mache cleartimeout(timeout4)
        1. Wie soll ich so eine Abfrage per Blockly machen ? Das geht nur per Code oder ?
        <block xmlns="http://www.w3.org/1999/xhtml" type="on_ext" id="=Ekh(d#t2Q/*a0|-RmIP" x="-837.0000000000002" y="-447">
          <mutation items="2"></mutation>
          <field name="CONDITION">true</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="VYCE?r?S{yr,*JD3[dT2">
              <field name="oid">deconz.0.Lights.1.on</field>
            </shadow>
          </value>
          <value name="OID1">
            <shadow type="field_oid" id="|HA~+2V0,q3/n5pvDBA6">
              <field name="oid">deconz.0.Lights.3.on</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="timeouts_settimeout" id="gy}|sAF_DQXg.;FQmc3a">
              <field name="NAME">timeout4</field>
              <field name="DELAY">60</field>
              <field name="UNIT">sec</field>
              <statement name="STATEMENT">
                <block type="controls_if" id="lgo%/1P8sMZTlfT|f*8}">
                  <mutation else="1"></mutation>
                  <value name="IF0">
                    <block type="logic_operation" id="T/`h4}o]EYuy^]FfKKpS">
                      <field name="OP">OR</field>
                      <value name="A">
                        <block type="logic_compare" id="zo|J]:4A(y,7H3$e(JHI">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="get_value" id="#a6HSdgys/n}-5r-a|;C">
                              <field name="ATTR">val</field>
                              <field name="OID">deconz.0.Lights.3.on</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_boolean" id="bT:F4=Vojc|*,3bhKs[1">
                              <field name="BOOL">TRUE</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_compare" id="Wza^L+Y9x.}`PYe!Z{=}">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="get_value" id=";+*=*:kAkVQ0!@ljG7N[">
                              <field name="ATTR">val</field>
                              <field name="OID">deconz.0.Lights.1.on</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_boolean" id="(qQ5{p5:T~sts@a1fN23">
                              <field name="BOOL">TRUE</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="control" id="N@HhnKGGSq/*;%O3aL6A">
                      <mutation delay_input="false"></mutation>
                      <field name="OID">deconz.0.Lights.1.on</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="m0{RE;LB$,L+!ww[K-~}">
                          <field name="BOOL">FALSE</field>
                        </block>
                      </value>
                      <next>
                        <block type="control" id="zsUhH%2Efk-1`|:=3LmU">
                          <mutation delay_input="false"></mutation>
                          <field name="OID">deconz.0.Lights.3.on</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id="1-%oIIRm}DotQc?N,!6f">
                              <field name="BOOL">FALSE</field>
                            </block>
                          </value>
                          <next>
                            <block type="debug" id="bS2z6G8|?V#u9VNK*%6t">
                              <field name="Severity">log</field>
                              <value name="TEXT">
                                <shadow type="text" id="oD(knTZ5Pdl?V,9`xC=y">
                                  <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                </shadow>
                              </value>
                              <next>
                                <block type="telegram" id="isq6}}*2cGG/S4r3b/P]">
                                  <field name="INSTANCE"></field>
                                  <field name="LOG"></field>
                                  <field name="SILENT">FALSE</field>
                                  <field name="PARSEMODE">default</field>
                                  <value name="MESSAGE">
                                    <shadow type="text" id="{H^_s2;_+l_$3N~pRrDj">
                                      <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                    </shadow>
                                  </value>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </statement>
                  <statement name="ELSE">
                    <block type="debug" id="+/wD}mBboia2~Y6Aw1$@">
                      <field name="Severity">log</field>
                      <value name="TEXT">
                        <shadow type="text" id="$,e#2{Af!UgNz{us11U~">
                          <field name="TEXT">Licht vor Notlauf ausgeschlten</field>
                        </shadow>
                      </value>
                    </block>
                  </statement>
                </block>
              </statement>
            </block>
          </statement>
        </block>
        
        1. In dem bwm script solltest du such noch die Timeouts beenden falls ...
        1. Bin mir nicht sicher wo ich die Abfrage machen soll und das stoppen realisieren soll.
          Hier wird es wohl falsch sein oder ?
          5f7bb9bf-fc43-4d9f-8144-0d3b78404c27-image.png

        2. Dennoch bleibt eine Frage noch ungeklärt. Warum habe ich da so viele Debug-Nachrichten bekommen ? Es ist höcht unwahrscheinlich dass genau auf die sekunde alle Timeouts ausgelaufen sind. Gar unmöglich sogar.

        AsgothianA 1 Antwort Letzte Antwort
        0
        • S smartysmart

          @Asgothian

          Hey danke für deine Hilfe.
          Bei den Lichtern handelt es sich um ein Ablageraum im Dachgeschoss d.h da ist sehr sehr selten Bewegung. Macht aber nichts ich will das trotzdem mit Sinn und Logik haben weil das nicht der letzte BWM sein soll.

          1. Trigger nicht auf “ist wahr” sondern “ist größer als”. Dann bekommst du pro einschalten nur Genau einen trigger
          1. Versteh nicht ganz was du meinst. "Ist größer als was" ?
            Du meinst die Dimmstufe ?
            Wen ja versteh ich nicht wieso es besser ist auf die Dimmstufe zu triggern. Mich interessiert ja nur ob Licht an oder aus egal welche stufe.
          1. Vor dem ausführen des timeout4 die Abfrage falls timeout4 dann mache cleartimeout(timeout4)
          1. Wie soll ich so eine Abfrage per Blockly machen ? Das geht nur per Code oder ?
          <block xmlns="http://www.w3.org/1999/xhtml" type="on_ext" id="=Ekh(d#t2Q/*a0|-RmIP" x="-837.0000000000002" y="-447">
            <mutation items="2"></mutation>
            <field name="CONDITION">true</field>
            <field name="ACK_CONDITION"></field>
            <value name="OID0">
              <shadow type="field_oid" id="VYCE?r?S{yr,*JD3[dT2">
                <field name="oid">deconz.0.Lights.1.on</field>
              </shadow>
            </value>
            <value name="OID1">
              <shadow type="field_oid" id="|HA~+2V0,q3/n5pvDBA6">
                <field name="oid">deconz.0.Lights.3.on</field>
              </shadow>
            </value>
            <statement name="STATEMENT">
              <block type="timeouts_settimeout" id="gy}|sAF_DQXg.;FQmc3a">
                <field name="NAME">timeout4</field>
                <field name="DELAY">60</field>
                <field name="UNIT">sec</field>
                <statement name="STATEMENT">
                  <block type="controls_if" id="lgo%/1P8sMZTlfT|f*8}">
                    <mutation else="1"></mutation>
                    <value name="IF0">
                      <block type="logic_operation" id="T/`h4}o]EYuy^]FfKKpS">
                        <field name="OP">OR</field>
                        <value name="A">
                          <block type="logic_compare" id="zo|J]:4A(y,7H3$e(JHI">
                            <field name="OP">EQ</field>
                            <value name="A">
                              <block type="get_value" id="#a6HSdgys/n}-5r-a|;C">
                                <field name="ATTR">val</field>
                                <field name="OID">deconz.0.Lights.3.on</field>
                              </block>
                            </value>
                            <value name="B">
                              <block type="logic_boolean" id="bT:F4=Vojc|*,3bhKs[1">
                                <field name="BOOL">TRUE</field>
                              </block>
                            </value>
                          </block>
                        </value>
                        <value name="B">
                          <block type="logic_compare" id="Wza^L+Y9x.}`PYe!Z{=}">
                            <field name="OP">EQ</field>
                            <value name="A">
                              <block type="get_value" id=";+*=*:kAkVQ0!@ljG7N[">
                                <field name="ATTR">val</field>
                                <field name="OID">deconz.0.Lights.1.on</field>
                              </block>
                            </value>
                            <value name="B">
                              <block type="logic_boolean" id="(qQ5{p5:T~sts@a1fN23">
                                <field name="BOOL">TRUE</field>
                              </block>
                            </value>
                          </block>
                        </value>
                      </block>
                    </value>
                    <statement name="DO0">
                      <block type="control" id="N@HhnKGGSq/*;%O3aL6A">
                        <mutation delay_input="false"></mutation>
                        <field name="OID">deconz.0.Lights.1.on</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="logic_boolean" id="m0{RE;LB$,L+!ww[K-~}">
                            <field name="BOOL">FALSE</field>
                          </block>
                        </value>
                        <next>
                          <block type="control" id="zsUhH%2Efk-1`|:=3LmU">
                            <mutation delay_input="false"></mutation>
                            <field name="OID">deconz.0.Lights.3.on</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                              <block type="logic_boolean" id="1-%oIIRm}DotQc?N,!6f">
                                <field name="BOOL">FALSE</field>
                              </block>
                            </value>
                            <next>
                              <block type="debug" id="bS2z6G8|?V#u9VNK*%6t">
                                <field name="Severity">log</field>
                                <value name="TEXT">
                                  <shadow type="text" id="oD(knTZ5Pdl?V,9`xC=y">
                                    <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                  </shadow>
                                </value>
                                <next>
                                  <block type="telegram" id="isq6}}*2cGG/S4r3b/P]">
                                    <field name="INSTANCE"></field>
                                    <field name="LOG"></field>
                                    <field name="SILENT">FALSE</field>
                                    <field name="PARSEMODE">default</field>
                                    <value name="MESSAGE">
                                      <shadow type="text" id="{H^_s2;_+l_$3N~pRrDj">
                                        <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                      </shadow>
                                    </value>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </statement>
                    <statement name="ELSE">
                      <block type="debug" id="+/wD}mBboia2~Y6Aw1$@">
                        <field name="Severity">log</field>
                        <value name="TEXT">
                          <shadow type="text" id="$,e#2{Af!UgNz{us11U~">
                            <field name="TEXT">Licht vor Notlauf ausgeschlten</field>
                          </shadow>
                        </value>
                      </block>
                    </statement>
                  </block>
                </statement>
              </block>
            </statement>
          </block>
          
          1. In dem bwm script solltest du such noch die Timeouts beenden falls ...
          1. Bin mir nicht sicher wo ich die Abfrage machen soll und das stoppen realisieren soll.
            Hier wird es wohl falsch sein oder ?
            5f7bb9bf-fc43-4d9f-8144-0d3b78404c27-image.png

          2. Dennoch bleibt eine Frage noch ungeklärt. Warum habe ich da so viele Debug-Nachrichten bekommen ? Es ist höcht unwahrscheinlich dass genau auf die sekunde alle Timeouts ausgelaufen sind. Gar unmöglich sogar.

          AsgothianA Offline
          AsgothianA Offline
          Asgothian
          Developer
          schrieb am zuletzt editiert von Asgothian
          #4

          @mend sagte in Blocky bringt mich in den Wahnsinn:

          Versteh nicht ganz was du meinst. "Ist größer als was" ?
          Du meinst die Dimmstufe ?
          Wen ja versteh ich nicht wieso es besser ist auf die Dimmstufe zu triggern. Mich interessiert ja nur ob Licht an oder aus egal welche stufe.

          Auch bei werten die nur “wahr” und “falsch” sind gibt es “größer als” und “kleiner als”. “Wahr”>”Falsch”.

          Da wo du im trigger “ist wahr” stehen hast sollte “ist größer als vorher” stehen

          Zum Thema timeouts:
          Du kannst dir die Abfrage auch sparen, und vor dem ausführen timeout4 einfach ein anhalten timeout4 setzen.

          Das du so viele auf einmal bekommst ist durchaus denkbar. Es waren ja nicht immer alle in einer Sekunde, aber selbst das ist bis zu 4 timeouts erklärbar: 2 States, jeder wird zum steuern einmal gesetzt und von der Hardware einmal bestätigt, macht 4 trigger. Die kommen da du auf “ist wahr (also nur Aktualisierung) und “anerkannt ist egal”, also sowohl beim Ansteuern und beim bestätigen triggerst. Als Lösungsmöglichkeiten gelten da: trigger nur bei Änderung falsch auf wahr (über trigger auf geändert und nachfolgendes wenn oder trigger auf größer als vorher) oder trigger nur beim acknowledge, sprich nur wenn die Hardware den Wert bestätigt hat.
          Zur Frage des löschen der anderen beiden timeouts - dieses sollte mit da rein wo du die Helligkeit auf 254 setzt.

          Ich kann leider gerade kein Bild basteln, hoffe du hast es aber trotzdem verstanden.

          ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
          "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

          1 Antwort Letzte Antwort
          0
          • H Offline
            H Offline
            Hoffiheller
            schrieb am zuletzt editiert von
            #5

            @mend

            ich will auch mal versuchen etwas beizutragen. anbei mal mein Lösungsansatz wie ich es bewältigen würde, das liegt aber daran das ich mit den Timeouts auf Kriegsfuß bin.

            <xml xmlns="http://www.w3.org/1999/xhtml">
              <variables>
                <variable type="undefined" id="timeout4">timeout4</variable>
              </variables>
              <block type="on_ext" id="=Ekh(d#t2Q/*a0|-RmIP" x="-838" y="-562">
                <mutation items="2"></mutation>
                <field name="CONDITION">true</field>
                <field name="ACK_CONDITION"></field>
                <value name="OID0">
                  <shadow type="field_oid" id="VYCE?r?S{yr,*JD3[dT2">
                    <field name="oid">deconz.0.Lights.1.on</field>
                  </shadow>
                </value>
                <value name="OID1">
                  <shadow type="field_oid" id="|HA~+2V0,q3/n5pvDBA6">
                    <field name="oid">deconz.0.Lights.3.on</field>
                  </shadow>
                </value>
                <statement name="STATEMENT">
                  <block type="timeouts_settimeout" id="gy}|sAF_DQXg.;FQmc3a">
                    <field name="NAME">timeout4</field>
                    <field name="DELAY">60</field>
                    <field name="UNIT">sec</field>
                    <statement name="STATEMENT">
                      <block type="controls_if" id="lgo%/1P8sMZTlfT|f*8}">
                        <mutation else="1"></mutation>
                        <value name="IF0">
                          <block type="logic_operation" id="T/`h4}o]EYuy^]FfKKpS">
                            <field name="OP">OR</field>
                            <value name="A">
                              <block type="logic_compare" id="zo|J]:4A(y,7H3$e(JHI">
                                <field name="OP">EQ</field>
                                <value name="A">
                                  <block type="get_value" id="#a6HSdgys/n}-5r-a|;C">
                                    <field name="ATTR">val</field>
                                    <field name="OID">deconz.0.Lights.3.on</field>
                                  </block>
                                </value>
                                <value name="B">
                                  <block type="logic_boolean" id="bT:F4=Vojc|*,3bhKs[1">
                                    <field name="BOOL">TRUE</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <value name="B">
                              <block type="logic_compare" id="Wza^L+Y9x.}`PYe!Z{=}">
                                <field name="OP">EQ</field>
                                <value name="A">
                                  <block type="get_value" id=";+*=*:kAkVQ0!@ljG7N[">
                                    <field name="ATTR">val</field>
                                    <field name="OID">deconz.0.Lights.1.on</field>
                                  </block>
                                </value>
                                <value name="B">
                                  <block type="logic_boolean" id="(qQ5{p5:T~sts@a1fN23">
                                    <field name="BOOL">TRUE</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                          </block>
                        </value>
                        <statement name="DO0">
                          <block type="control" id="N@HhnKGGSq/*;%O3aL6A">
                            <mutation delay_input="false"></mutation>
                            <field name="OID">deconz.0.Lights.1.on</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                              <block type="logic_boolean" id="m0{RE;LB$,L+!ww[K-~}">
                                <field name="BOOL">FALSE</field>
                              </block>
                            </value>
                            <next>
                              <block type="control" id="zsUhH%2Efk-1`|:=3LmU">
                                <mutation delay_input="false"></mutation>
                                <field name="OID">deconz.0.Lights.3.on</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE">
                                  <block type="logic_boolean" id="1-%oIIRm}DotQc?N,!6f">
                                    <field name="BOOL">FALSE</field>
                                  </block>
                                </value>
                                <next>
                                  <block type="debug" id="bS2z6G8|?V#u9VNK*%6t">
                                    <field name="Severity">log</field>
                                    <value name="TEXT">
                                      <shadow type="text" id="oD(knTZ5Pdl?V,9`xC=y">
                                        <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                      </shadow>
                                    </value>
                                    <next>
                                      <block type="telegram" id="isq6}}*2cGG/S4r3b/P]">
                                        <field name="INSTANCE"></field>
                                        <field name="LOG"></field>
                                        <field name="SILENT">FALSE</field>
                                        <field name="PARSEMODE">default</field>
                                        <value name="MESSAGE">
                                          <shadow type="text" id="{H^_s2;_+l_$3N~pRrDj">
                                            <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                          </shadow>
                                        </value>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </statement>
                        <statement name="ELSE">
                          <block type="debug" id="+/wD}mBboia2~Y6Aw1$@">
                            <field name="Severity">log</field>
                            <value name="TEXT">
                              <shadow type="text" id="$,e#2{Af!UgNz{us11U~">
                                <field name="TEXT">Licht vor Notlauf ausgeschlten</field>
                              </shadow>
                            </value>
                          </block>
                        </statement>
                        <next>
                          <block type="comment" id="w|c.MV]lQRpdh)#?Ur8X">
                            <field name="COMMENT">hier der timeoutstop </field>
                            <next>
                              <block type="timeouts_cleartimeout" id="TH3!29wEx$9gA`wPFe9I">
                                <field name="NAME">timeout4</field>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </statement>
                  </block>
                </statement>
                <next>
                  <block type="comment" id="y=+AZqyYw7DI8.ulb+}f">
                    <field name="COMMENT">so hätte ich es bewältigt</field>
                    <next>
                      <block type="on_ext" id="9eUR^;5!QfBv-9mby5lo">
                        <mutation items="2"></mutation>
                        <field name="CONDITION">true</field>
                        <field name="ACK_CONDITION"></field>
                        <value name="OID0">
                          <shadow type="field_oid" id="!MdQl/o%J-jz*Z~C3Qe:">
                            <field name="oid">deconz.0.Lights.1.on</field>
                          </shadow>
                        </value>
                        <value name="OID1">
                          <shadow type="field_oid" id="*]K-K*nzhBPN%r4IuS4C">
                            <field name="oid">deconz.0.Lights.3.on</field>
                          </shadow>
                        </value>
                        <statement name="STATEMENT">
                          <block type="controls_if" id="_S^ZbKn4RwU=Co!+0F7B">
                            <mutation else="1"></mutation>
                            <value name="IF0">
                              <block type="logic_operation" id="%jvB#=}]dTOEKA.V2oy3">
                                <field name="OP">OR</field>
                                <value name="A">
                                  <block type="logic_compare" id="v4UW`GAxv%O6v=gzs%Ir">
                                    <field name="OP">EQ</field>
                                    <value name="A">
                                      <block type="get_value" id="k:z}~a1+7FFb)zPA]N6s">
                                        <field name="ATTR">val</field>
                                        <field name="OID">deconz.0.Lights.3.on</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="logic_boolean" id="Nemkw`T=~gf)0JuW/6DI">
                                        <field name="BOOL">TRUE</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <value name="B">
                                  <block type="logic_compare" id="i:?ohuj:(,*P)N}LV(S2">
                                    <field name="OP">EQ</field>
                                    <value name="A">
                                      <block type="get_value" id="ddXtq7*)ZZn|/I+^ekcu">
                                        <field name="ATTR">val</field>
                                        <field name="OID">deconz.0.Lights.1.on</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="logic_boolean" id="phN350Z4(pMnVAx#+gV2">
                                        <field name="BOOL">TRUE</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <statement name="DO0">
                              <block type="control" id="IS3]BN=T@,ia+Wl8k#oN">
                                <mutation delay_input="true"></mutation>
                                <field name="OID">deconz.0.Lights.1.on</field>
                                <field name="WITH_DELAY">TRUE</field>
                                <field name="DELAY_MS">60000</field>
                                <field name="UNIT">ms</field>
                                <field name="CLEAR_RUNNING">FALSE</field>
                                <value name="VALUE">
                                  <block type="logic_boolean" id="R]fJe]WzT_:1j:|Jc=cF">
                                    <field name="BOOL">FALSE</field>
                                  </block>
                                </value>
                                <next>
                                  <block type="control" id="[$GxiAUR_bqs;U2218:$">
                                    <mutation delay_input="true"></mutation>
                                    <field name="OID">deconz.0.Lights.3.on</field>
                                    <field name="WITH_DELAY">TRUE</field>
                                    <field name="DELAY_MS">60000</field>
                                    <field name="UNIT">ms</field>
                                    <field name="CLEAR_RUNNING">FALSE</field>
                                    <value name="VALUE">
                                      <block type="logic_boolean" id="T)N7l~I)%N``~m#8bMK~">
                                        <field name="BOOL">FALSE</field>
                                      </block>
                                    </value>
                                    <next>
                                      <block type="debug" id="=3rf{)Ki{ICEBvUTY+h|">
                                        <field name="Severity">log</field>
                                        <value name="TEXT">
                                          <shadow type="text" id=")%5}k0]*~Y(8TQz0/`=|">
                                            <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                          </shadow>
                                        </value>
                                        <next>
                                          <block type="telegram" id="IulSqelmIrbB/;4h*6]d">
                                            <field name="INSTANCE"></field>
                                            <field name="LOG"></field>
                                            <field name="SILENT">FALSE</field>
                                            <field name="PARSEMODE">default</field>
                                            <value name="MESSAGE">
                                              <shadow type="text" id="L+wm-pY$rOpS{w;D5)Eu">
                                                <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                              </shadow>
                                            </value>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </statement>
                            <statement name="ELSE">
                              <block type="debug" id="p]I|^u}U}5a%BGF2LpsU">
                                <field name="Severity">log</field>
                                <value name="TEXT">
                                  <shadow type="text" id="xoK;=G[)tAj/CNoHTC{p">
                                    <field name="TEXT">Licht vor Notlauf ausgeschlten</field>
                                  </shadow>
                                </value>
                              </block>
                            </statement>
                          </block>
                        </statement>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </xml>```
            S 1 Antwort Letzte Antwort
            0
            • S smartysmart

              Kurz zum Problem ...
              Ich habe eine Lichtsteuerung mit einem Xiaomi Bewegungsmelder. Der funktioniert auch soweit gut. (Der erste Block oben)
              Ich steuere das Licht anhand ob Bewegung da ist oder nicht.

              ABER

              Wenn das Licht wie auch immer (z.b direkt über ioBroker) angeschalten wird, dann triggert meine Routine nicht.
              Also wollte ich mir ein Backup machen, dass wenn das Licht über 1 Stunde an ist, dass es dann durch den backup Trigger gefangen wird und Licht aus.

              Auch das funktioniert ABER warum bekomme ich die Debug Meldung 9999999999999 mal ?

              P.S Wenn ihr das ganze ganz anders angehen würdet oder im Blocky einfacher zu machen ist dann gerne eure Ideen.

              315ec77d-e0ca-4298-8210-a9a0d35d2d2b-image.png

              I Offline
              I Offline
              ITCrowd
              schrieb am zuletzt editiert von ITCrowd
              #6

              @mend
              Geht auch einfacher. (Bei mir, mangels Masse, ohne Dimmer.) Der obere Teil läuft so bei mir. (Den NotAus brauche ich nicht.)
              Dabei spielt es keine Rolle woher der Ein-Befehl kommt.

              Licht.PNG

              Das gestaffelte Dimmen vor Aus sollte so funktionieren. Kann ich hier nicht testen.

              Licht2.PNG

              S 1 Antwort Letzte Antwort
              0
              • I ITCrowd

                @mend
                Geht auch einfacher. (Bei mir, mangels Masse, ohne Dimmer.) Der obere Teil läuft so bei mir. (Den NotAus brauche ich nicht.)
                Dabei spielt es keine Rolle woher der Ein-Befehl kommt.

                Licht.PNG

                Das gestaffelte Dimmen vor Aus sollte so funktionieren. Kann ich hier nicht testen.

                Licht2.PNG

                S Offline
                S Offline
                smartysmart
                schrieb am zuletzt editiert von
                #7

                @ITCrowd sagte in Blocky bringt mich in den Wahnsinn:

                Geht auch einfacher
                Dabei spielt es keine Rolle woher der Ein-Befehl kommt.

                Was macht das "falls - [Wert]" siehe Pfeil
                Was maht das "löschen falls läuft" siehe Pfeil
                33a6fdeb-0eab-42f6-9f6c-561ff95b460f-image.png

                Diese Methode schaut am einfachsten aus aber ich muss noch verstehen was diese zwei Sachen machen.

                AsgothianA 1 Antwort Letzte Antwort
                0
                • H Hoffiheller

                  @mend

                  ich will auch mal versuchen etwas beizutragen. anbei mal mein Lösungsansatz wie ich es bewältigen würde, das liegt aber daran das ich mit den Timeouts auf Kriegsfuß bin.

                  <xml xmlns="http://www.w3.org/1999/xhtml">
                    <variables>
                      <variable type="undefined" id="timeout4">timeout4</variable>
                    </variables>
                    <block type="on_ext" id="=Ekh(d#t2Q/*a0|-RmIP" x="-838" y="-562">
                      <mutation items="2"></mutation>
                      <field name="CONDITION">true</field>
                      <field name="ACK_CONDITION"></field>
                      <value name="OID0">
                        <shadow type="field_oid" id="VYCE?r?S{yr,*JD3[dT2">
                          <field name="oid">deconz.0.Lights.1.on</field>
                        </shadow>
                      </value>
                      <value name="OID1">
                        <shadow type="field_oid" id="|HA~+2V0,q3/n5pvDBA6">
                          <field name="oid">deconz.0.Lights.3.on</field>
                        </shadow>
                      </value>
                      <statement name="STATEMENT">
                        <block type="timeouts_settimeout" id="gy}|sAF_DQXg.;FQmc3a">
                          <field name="NAME">timeout4</field>
                          <field name="DELAY">60</field>
                          <field name="UNIT">sec</field>
                          <statement name="STATEMENT">
                            <block type="controls_if" id="lgo%/1P8sMZTlfT|f*8}">
                              <mutation else="1"></mutation>
                              <value name="IF0">
                                <block type="logic_operation" id="T/`h4}o]EYuy^]FfKKpS">
                                  <field name="OP">OR</field>
                                  <value name="A">
                                    <block type="logic_compare" id="zo|J]:4A(y,7H3$e(JHI">
                                      <field name="OP">EQ</field>
                                      <value name="A">
                                        <block type="get_value" id="#a6HSdgys/n}-5r-a|;C">
                                          <field name="ATTR">val</field>
                                          <field name="OID">deconz.0.Lights.3.on</field>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="logic_boolean" id="bT:F4=Vojc|*,3bhKs[1">
                                          <field name="BOOL">TRUE</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="logic_compare" id="Wza^L+Y9x.}`PYe!Z{=}">
                                      <field name="OP">EQ</field>
                                      <value name="A">
                                        <block type="get_value" id=";+*=*:kAkVQ0!@ljG7N[">
                                          <field name="ATTR">val</field>
                                          <field name="OID">deconz.0.Lights.1.on</field>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="logic_boolean" id="(qQ5{p5:T~sts@a1fN23">
                                          <field name="BOOL">TRUE</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <statement name="DO0">
                                <block type="control" id="N@HhnKGGSq/*;%O3aL6A">
                                  <mutation delay_input="false"></mutation>
                                  <field name="OID">deconz.0.Lights.1.on</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="logic_boolean" id="m0{RE;LB$,L+!ww[K-~}">
                                      <field name="BOOL">FALSE</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="control" id="zsUhH%2Efk-1`|:=3LmU">
                                      <mutation delay_input="false"></mutation>
                                      <field name="OID">deconz.0.Lights.3.on</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="logic_boolean" id="1-%oIIRm}DotQc?N,!6f">
                                          <field name="BOOL">FALSE</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="debug" id="bS2z6G8|?V#u9VNK*%6t">
                                          <field name="Severity">log</field>
                                          <value name="TEXT">
                                            <shadow type="text" id="oD(knTZ5Pdl?V,9`xC=y">
                                              <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                            </shadow>
                                          </value>
                                          <next>
                                            <block type="telegram" id="isq6}}*2cGG/S4r3b/P]">
                                              <field name="INSTANCE"></field>
                                              <field name="LOG"></field>
                                              <field name="SILENT">FALSE</field>
                                              <field name="PARSEMODE">default</field>
                                              <value name="MESSAGE">
                                                <shadow type="text" id="{H^_s2;_+l_$3N~pRrDj">
                                                  <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                                </shadow>
                                              </value>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                              <statement name="ELSE">
                                <block type="debug" id="+/wD}mBboia2~Y6Aw1$@">
                                  <field name="Severity">log</field>
                                  <value name="TEXT">
                                    <shadow type="text" id="$,e#2{Af!UgNz{us11U~">
                                      <field name="TEXT">Licht vor Notlauf ausgeschlten</field>
                                    </shadow>
                                  </value>
                                </block>
                              </statement>
                              <next>
                                <block type="comment" id="w|c.MV]lQRpdh)#?Ur8X">
                                  <field name="COMMENT">hier der timeoutstop </field>
                                  <next>
                                    <block type="timeouts_cleartimeout" id="TH3!29wEx$9gA`wPFe9I">
                                      <field name="NAME">timeout4</field>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                      </statement>
                      <next>
                        <block type="comment" id="y=+AZqyYw7DI8.ulb+}f">
                          <field name="COMMENT">so hätte ich es bewältigt</field>
                          <next>
                            <block type="on_ext" id="9eUR^;5!QfBv-9mby5lo">
                              <mutation items="2"></mutation>
                              <field name="CONDITION">true</field>
                              <field name="ACK_CONDITION"></field>
                              <value name="OID0">
                                <shadow type="field_oid" id="!MdQl/o%J-jz*Z~C3Qe:">
                                  <field name="oid">deconz.0.Lights.1.on</field>
                                </shadow>
                              </value>
                              <value name="OID1">
                                <shadow type="field_oid" id="*]K-K*nzhBPN%r4IuS4C">
                                  <field name="oid">deconz.0.Lights.3.on</field>
                                </shadow>
                              </value>
                              <statement name="STATEMENT">
                                <block type="controls_if" id="_S^ZbKn4RwU=Co!+0F7B">
                                  <mutation else="1"></mutation>
                                  <value name="IF0">
                                    <block type="logic_operation" id="%jvB#=}]dTOEKA.V2oy3">
                                      <field name="OP">OR</field>
                                      <value name="A">
                                        <block type="logic_compare" id="v4UW`GAxv%O6v=gzs%Ir">
                                          <field name="OP">EQ</field>
                                          <value name="A">
                                            <block type="get_value" id="k:z}~a1+7FFb)zPA]N6s">
                                              <field name="ATTR">val</field>
                                              <field name="OID">deconz.0.Lights.3.on</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="logic_boolean" id="Nemkw`T=~gf)0JuW/6DI">
                                              <field name="BOOL">TRUE</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="logic_compare" id="i:?ohuj:(,*P)N}LV(S2">
                                          <field name="OP">EQ</field>
                                          <value name="A">
                                            <block type="get_value" id="ddXtq7*)ZZn|/I+^ekcu">
                                              <field name="ATTR">val</field>
                                              <field name="OID">deconz.0.Lights.1.on</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="logic_boolean" id="phN350Z4(pMnVAx#+gV2">
                                              <field name="BOOL">TRUE</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <block type="control" id="IS3]BN=T@,ia+Wl8k#oN">
                                      <mutation delay_input="true"></mutation>
                                      <field name="OID">deconz.0.Lights.1.on</field>
                                      <field name="WITH_DELAY">TRUE</field>
                                      <field name="DELAY_MS">60000</field>
                                      <field name="UNIT">ms</field>
                                      <field name="CLEAR_RUNNING">FALSE</field>
                                      <value name="VALUE">
                                        <block type="logic_boolean" id="R]fJe]WzT_:1j:|Jc=cF">
                                          <field name="BOOL">FALSE</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="control" id="[$GxiAUR_bqs;U2218:$">
                                          <mutation delay_input="true"></mutation>
                                          <field name="OID">deconz.0.Lights.3.on</field>
                                          <field name="WITH_DELAY">TRUE</field>
                                          <field name="DELAY_MS">60000</field>
                                          <field name="UNIT">ms</field>
                                          <field name="CLEAR_RUNNING">FALSE</field>
                                          <value name="VALUE">
                                            <block type="logic_boolean" id="T)N7l~I)%N``~m#8bMK~">
                                              <field name="BOOL">FALSE</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="debug" id="=3rf{)Ki{ICEBvUTY+h|">
                                              <field name="Severity">log</field>
                                              <value name="TEXT">
                                                <shadow type="text" id=")%5}k0]*~Y(8TQz0/`=|">
                                                  <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                                </shadow>
                                              </value>
                                              <next>
                                                <block type="telegram" id="IulSqelmIrbB/;4h*6]d">
                                                  <field name="INSTANCE"></field>
                                                  <field name="LOG"></field>
                                                  <field name="SILENT">FALSE</field>
                                                  <field name="PARSEMODE">default</field>
                                                  <value name="MESSAGE">
                                                    <shadow type="text" id="L+wm-pY$rOpS{w;D5)Eu">
                                                      <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                                    </shadow>
                                                  </value>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                  <statement name="ELSE">
                                    <block type="debug" id="p]I|^u}U}5a%BGF2LpsU">
                                      <field name="Severity">log</field>
                                      <value name="TEXT">
                                        <shadow type="text" id="xoK;=G[)tAj/CNoHTC{p">
                                          <field name="TEXT">Licht vor Notlauf ausgeschlten</field>
                                        </shadow>
                                      </value>
                                    </block>
                                  </statement>
                                </block>
                              </statement>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </xml>```
                  S Offline
                  S Offline
                  smartysmart
                  schrieb am zuletzt editiert von
                  #8

                  @Hoffiheller
                  Danke dir für deinen Ansatz, was passiert mit der Verzögerung, wenn das Licht dann doch davor aus geht ?
                  Greift dann der "sonst" Baustein ?

                  Und noch eine Frage ... Was passiert wenn bei 59:50 dann Bewegung passiert. Macht die Verzögerung trotzdem nach 60:00 aus ? Das befürchte ich fast bei dieser Lösung

                  AsgothianA 1 Antwort Letzte Antwort
                  0
                  • S smartysmart

                    @ITCrowd sagte in Blocky bringt mich in den Wahnsinn:

                    Geht auch einfacher
                    Dabei spielt es keine Rolle woher der Ein-Befehl kommt.

                    Was macht das "falls - [Wert]" siehe Pfeil
                    Was maht das "löschen falls läuft" siehe Pfeil
                    33a6fdeb-0eab-42f6-9f6c-561ff95b460f-image.png

                    Diese Methode schaut am einfachsten aus aber ich muss noch verstehen was diese zwei Sachen machen.

                    AsgothianA Offline
                    AsgothianA Offline
                    Asgothian
                    Developer
                    schrieb am zuletzt editiert von
                    #9

                    @mend

                    Das falls wert ist ein einfacher Trick. “Wert” entspricht dem Wert des datenpunktes der den trigger ausgelöst hat. Falls erwartet etwas das ‘wahr” oder “falsch” sei kann. Da der datenpunkt genau diese beiden Werte annehmen kann entspricht das “falls wert = wahr”

                    ‘Löschen falls läuft” sorgt dafür da du nicht für jeden trigger je einen schalt Befehl bekommst, sondern immer nur für den letzten.

                    Zum Thema “Not aus” - das wird in genau dieser Konfiguration auch dann getriggert wenn durch den bwm das Licht an geschaltet wird. Durch das ‘löschen falls läuft’ wird also wenn wenige Sekunden vor der Not Ausschaltung jemand nach oben geht der Timer für die Abschaltung auf 60 Minuten (neu) gesetzt.

                    Das geht aber nur deswegen weil

                    • du auf jede Aktualisierung triggerst
                    • du bei trigger des BWM den datenpunkt on explizit aktivierst. so wie du das oben gelöst hattest (“nur” Helligkeit hoch setzen würde das dann nicht passieren und das Licht wäre aus.

                    A.

                    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                    1 Antwort Letzte Antwort
                    0
                    • S smartysmart

                      @Hoffiheller
                      Danke dir für deinen Ansatz, was passiert mit der Verzögerung, wenn das Licht dann doch davor aus geht ?
                      Greift dann der "sonst" Baustein ?

                      Und noch eine Frage ... Was passiert wenn bei 59:50 dann Bewegung passiert. Macht die Verzögerung trotzdem nach 60:00 aus ? Das befürchte ich fast bei dieser Lösung

                      AsgothianA Offline
                      AsgothianA Offline
                      Asgothian
                      Developer
                      schrieb am zuletzt editiert von
                      #10

                      @mend sagte in Blocky bringt mich in den Wahnsinn:

                      Danke dir für deinen Ansatz, was passiert mit der Verzögerung, wenn das Licht dann doch davor aus geht ?
                      Greift dann der "sonst" Baustein ?

                      Welcher “sonst” Baustein ? Den gibt es im Beispiel nicht. Wenn du einen einfügst dann bring das nichts, da der Befehl zum abschalten sofort gesetzt wird (er wird halt nur 60 Minuten Kannst bei dieser Methode nicht feststellen wann die not Abschaltung greift.

                      A.

                      ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                      "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                      1 Antwort Letzte Antwort
                      0
                      • H Offline
                        H Offline
                        Hoffiheller
                        schrieb am zuletzt editiert von
                        #11

                        @mend

                        habe es nochmal umgebaut so geht es wie gewünscht aber man bekommt direkt eine telegram Nachricht so wie das Licht angeht. ich bekomme so auch immer direkt 5 nachrichten.
                        Bildschirmfoto 2020-01-15 um 21.35.19.png

                        J AsgothianA 2 Antworten Letzte Antwort
                        0
                        • H Hoffiheller

                          @mend

                          habe es nochmal umgebaut so geht es wie gewünscht aber man bekommt direkt eine telegram Nachricht so wie das Licht angeht. ich bekomme so auch immer direkt 5 nachrichten.
                          Bildschirmfoto 2020-01-15 um 21.35.19.png

                          J Offline
                          J Offline
                          Jan1
                          schrieb am zuletzt editiert von
                          #12

                          @Hoffiheller
                          Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.
                          Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

                          H AsgothianA 2 Antworten Letzte Antwort
                          0
                          • J Jan1

                            @Hoffiheller
                            Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.
                            Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

                            H Offline
                            H Offline
                            Hoffiheller
                            schrieb am zuletzt editiert von
                            #13

                            @Jan1

                            Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.

                            hat aber irgendwie Funktioniert

                            Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

                            Danke für den tip das macht in Zukunft einiges übersichtlicher und schneller.

                            1 Antwort Letzte Antwort
                            0
                            • J Jan1

                              @Hoffiheller
                              Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.
                              Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

                              AsgothianA Offline
                              AsgothianA Offline
                              Asgothian
                              Developer
                              schrieb am zuletzt editiert von
                              #14

                              @Jan1 sagte in Blocky bringt mich in den Wahnsinn:

                              @Hoffiheller
                              Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.
                              Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

                              Sind sie nicht. Fun fact in JS: true > false !

                              ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                              "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                              J 1 Antwort Letzte Antwort
                              0
                              • AsgothianA Asgothian

                                @Jan1 sagte in Blocky bringt mich in den Wahnsinn:

                                @Hoffiheller
                                Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.
                                Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

                                Sind sie nicht. Fun fact in JS: true > false !

                                J Offline
                                J Offline
                                Jan1
                                schrieb am zuletzt editiert von Jan1
                                #15

                                @Asgothian
                                True größer false, ok bolisch gesehen macht das sogar Sinn.

                                1 Antwort Letzte Antwort
                                0
                                • H Hoffiheller

                                  @mend

                                  habe es nochmal umgebaut so geht es wie gewünscht aber man bekommt direkt eine telegram Nachricht so wie das Licht angeht. ich bekomme so auch immer direkt 5 nachrichten.
                                  Bildschirmfoto 2020-01-15 um 21.35.19.png

                                  AsgothianA Offline
                                  AsgothianA Offline
                                  Asgothian
                                  Developer
                                  schrieb am zuletzt editiert von Asgothian
                                  #16

                                  @Hoffiheller das macht so wenig Sinn:

                                  • der trigger auf “größer oder gleich als vorher” in diesem Fall fast identisch zu “wurde aktualisiert” (true->true triggert, false->false triggert, false->true triggert, nur true->false triggert nicht.
                                  • der wenn Fall wird bei jedem trigger wenn mindestens ein Licht an ist gestartet.
                                  • Der sonst Fall tritt nur auf wenn beide Lichter aus sind und mindestens einer der Werte aktualisiert wurde.
                                  • Die Nachricht (Telegramm) wird geschickt wenn der trigger kommt, nicht wenn das Licht vor Ablauf der 60 Minuten ausgeschaltet wurde.
                                  • es erfolgt keine Nachricht wenn das Licht nach der Stunde ausgeschaltet wurde.

                                  Der Ausweg sieht so aus:
                                  8C823BAA-ADB0-4A86-93F3-F85CBFE2451C.jpeg

                                  Natürlich musst du die Objekt ids noch korrekt setzen.

                                  Nachtrag: ich hab im falls einen Fehler, da muss oder statt und stehen.

                                  A.

                                  ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                                  "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                                  1 Antwort Letzte Antwort
                                  0
                                  Antworten
                                  • In einem neuen Thema antworten
                                  Anmelden zum Antworten
                                  • Älteste zuerst
                                  • Neuste zuerst
                                  • Meiste Stimmen


                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  750

                                  Online

                                  32.5k

                                  Benutzer

                                  81.7k

                                  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