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. Zeitsaugen als Blockly

NEWS

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

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    405

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

Zeitsaugen als Blockly

Geplant Angeheftet Gesperrt Verschoben Blockly
blocklyjavascript
11 Beiträge 4 Kommentatoren 802 Aufrufe 2 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.
  • H Online
    H Online
    helfi9999
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen,

    ich möchte gerne wenn wir beide nicht zuhause sind das der Roboter 1x saugt.
    Sollte einer zwischenzeitlich nach Hause kommen und dann wieder gehen soll er nicht nochmal saugen.

    Bekomme es nicht hin jedesmal wenn wir nicht anwesend sind fängt er an zu saugen.
    Kann mir einer vielleicht behilflich sein das richtig einzustellen??


    Zeitsaugen.png

    Intel NUC mit Iobroker

    mickymM G 2 Antworten Letzte Antwort
    0
    • H helfi9999

      Hallo zusammen,

      ich möchte gerne wenn wir beide nicht zuhause sind das der Roboter 1x saugt.
      Sollte einer zwischenzeitlich nach Hause kommen und dann wieder gehen soll er nicht nochmal saugen.

      Bekomme es nicht hin jedesmal wenn wir nicht anwesend sind fängt er an zu saugen.
      Kann mir einer vielleicht behilflich sein das richtig einzustellen??


      Zeitsaugen.png

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

      @helfi9999 Meines Erachtens ist die Logik halt nicht vollständig. Das Wiederholen für 1mal kann man sich in meinen Augen auch sparen, da ohne die Schleife das ja auch nur 1 mal abgearbeitet wird. Du musst halt noch eine Variable mit Zeitstempel einbauen, die zusätzlich zu Deinen Wochentagen und Uhrzeit abgefragt wird. Diesen setzt Du am Ende und frägst am Anfang ab - ob es der gleiche Tag war. Wenn also am gleichen Tag dieses Unterprogramm nochmal getriggert wird, blockierst Du es.

      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.

      CodierknechtC 1 Antwort Letzte Antwort
      0
      • mickymM mickym

        @helfi9999 Meines Erachtens ist die Logik halt nicht vollständig. Das Wiederholen für 1mal kann man sich in meinen Augen auch sparen, da ohne die Schleife das ja auch nur 1 mal abgearbeitet wird. Du musst halt noch eine Variable mit Zeitstempel einbauen, die zusätzlich zu Deinen Wochentagen und Uhrzeit abgefragt wird. Diesen setzt Du am Ende und frägst am Anfang ab - ob es der gleiche Tag war. Wenn also am gleichen Tag dieses Unterprogramm nochmal getriggert wird, blockierst Du es.

        CodierknechtC Offline
        CodierknechtC Offline
        Codierknecht
        Developer Most Active
        schrieb am zuletzt editiert von
        #3

        @mickym sagte in Zeitsaugen als Blockly:

        @helfi9999 Meines Erachtens ist die Logik halt nicht vollständig. Das Wiederholen für 1mal kann man sich in meinen Augen auch sparen, da ohne die Schleife das ja auch nur 1 mal abgearbeitet wird. Du musst halt noch eine Variable mit Zeitstempel einbauen, die zusätzlich zu Deinen Wochentagen und Uhrzeit abgefragt wird. Diesen setzt Du am Ende und frägst am Anfang ab - ob es der gleiche Tag war. Wenn also am gleichen Tag dieses Unterprogramm nochmal getriggert wird, blockierst Du es.

        Oder man nimmt eine globale Bool-Variable (oder noch besser: Einen eigenen DP) die beim Start des Saugvorgangs gesetzt und in der Nacht zurückgesetzt wird.

        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

        Proxmox 9.1.1 LXC|8 GB|Core i7-6700
        HmIP|ZigBee|Tasmota|Unifi
        Zabbix Certified Specialist
        Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

        mickymM 1 Antwort Letzte Antwort
        0
        • CodierknechtC Codierknecht

          @mickym sagte in Zeitsaugen als Blockly:

          @helfi9999 Meines Erachtens ist die Logik halt nicht vollständig. Das Wiederholen für 1mal kann man sich in meinen Augen auch sparen, da ohne die Schleife das ja auch nur 1 mal abgearbeitet wird. Du musst halt noch eine Variable mit Zeitstempel einbauen, die zusätzlich zu Deinen Wochentagen und Uhrzeit abgefragt wird. Diesen setzt Du am Ende und frägst am Anfang ab - ob es der gleiche Tag war. Wenn also am gleichen Tag dieses Unterprogramm nochmal getriggert wird, blockierst Du es.

          Oder man nimmt eine globale Bool-Variable (oder noch besser: Einen eigenen DP) die beim Start des Saugvorgangs gesetzt und in der Nacht zurückgesetzt wird.

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

          @codierknecht sagte in Zeitsaugen als Blockly:

          Oder man nimmt eine globale Bool-Variable (oder noch besser: Einen eigenen DP) die beim Start des Saugvorgangs gesetzt und in der Nacht zurückgesetzt wird.

          Ja dann braucht man aber dafür wieder einen eigenen Trigger UND ein Datenpunkt der zurücksetzt. :( ;) . Obwohl der Datenpunkt (auch ohne Zurücksetzen) sinnvoll ist, wenn wirklich mal der Strom ausfallen sollte - kommt darauf an, wie häufig das in Zukunft wird. ;)

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

          1 Antwort Letzte Antwort
          0
          • H helfi9999

            Hallo zusammen,

            ich möchte gerne wenn wir beide nicht zuhause sind das der Roboter 1x saugt.
            Sollte einer zwischenzeitlich nach Hause kommen und dann wieder gehen soll er nicht nochmal saugen.

            Bekomme es nicht hin jedesmal wenn wir nicht anwesend sind fängt er an zu saugen.
            Kann mir einer vielleicht behilflich sein das richtig einzustellen??


            Zeitsaugen.png

            G Offline
            G Offline
            guergen
            schrieb am zuletzt editiert von
            #5

            @helfi9999 Nimm als Trigger die Zeit. Wenn dann einer daheim sein sollte, soll das skript sich merken, dass der Staubsauger heute saugen sollte, es aber nicht ging, weil jmd da war.
            Dann den Anwesenden alle 10-15 Minuten abfragen; falls keiner mehr da ist, eiinfach den Sauger losschicken

            H 1 Antwort Letzte Antwort
            0
            • G guergen

              @helfi9999 Nimm als Trigger die Zeit. Wenn dann einer daheim sein sollte, soll das skript sich merken, dass der Staubsauger heute saugen sollte, es aber nicht ging, weil jmd da war.
              Dann den Anwesenden alle 10-15 Minuten abfragen; falls keiner mehr da ist, eiinfach den Sauger losschicken

              H Online
              H Online
              helfi9999
              schrieb am zuletzt editiert von helfi9999
              #6

              @guergen @mickym @Codierknecht hallo,
              er soll nur einmal saugen wenn niemand zuhause ist. Kommt jemand wieder und geht später nochmals weg soll er nicht nochmal saugen. Habe mich eventuell nicht richtig ausgedrückt.

              Intel NUC mit Iobroker

              G CodierknechtC 2 Antworten Letzte Antwort
              0
              • H helfi9999

                @guergen @mickym @Codierknecht hallo,
                er soll nur einmal saugen wenn niemand zuhause ist. Kommt jemand wieder und geht später nochmals weg soll er nicht nochmal saugen. Habe mich eventuell nicht richtig ausgedrückt.

                G Offline
                G Offline
                guergen
                schrieb am zuletzt editiert von guergen
                #7

                @helfi9999 Hab ich schon verstanden, ich mache das mit einem Reminder! Der Zeitpunkt wird bei mir genau festgelegt, z.B. Mittwoch 10 Uhr. Bin ich dann daheim, setze ich einen DP als Reminder und es wird alle 10 Minuten abgefragt, ob ich immer noch daheim bin. falls ja, bleibt der DP bestehen, falls nicht startet der Sauger und der DP wird gelöscht:
                Hier mein Beispiel für Sonntag

                0fb19428-6497-4be0-a372-23929a7d893c-grafik.png

                <block xmlns="https://developers.google.com/blockly/xml" type="schedule_create" id="G+-T./;TP1*|)*.0KQOQ" x="362" y="-1212">
                 <field name="NAME">Sonntag</field>
                 <value name="SCHEDULE">
                   <shadow xmlns="http://www.w3.org/1999/xhtml" type="field_cron" id="DlQzK7|YN^Ab,4JH^b+?">
                     <field name="CRON">* * * * *</field>
                   </shadow>
                   <block type="cron_builder" id="FGUQjG.6G:ube(A?EsTS">
                     <mutation xmlns="http://www.w3.org/1999/xhtml" seconds="false" as_line="false"></mutation>
                     <field name="LINE">FALSE</field>
                     <field name="WITH_SECONDS">FALSE</field>
                     <value name="DOW">
                       <shadow type="text" id="GBmhwa6=%{b+Me_7]s7g">
                         <field name="TEXT">0</field>
                       </shadow>
                     </value>
                     <value name="MONTHS">
                       <shadow type="text" id="jmeZA+`dffX#9~*m-%Sd">
                         <field name="TEXT">*</field>
                       </shadow>
                     </value>
                     <value name="DAYS">
                       <shadow type="text" id="8Jw8Cq??X^8~rvFD6%O3">
                         <field name="TEXT">*</field>
                       </shadow>
                     </value>
                     <value name="HOURS">
                       <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="T058NR!#8lpp,y9h1R6e">
                         <field name="TEXT">*</field>
                       </shadow>
                       <block type="lists_getIndex" id=".j^P}`OZG=~?7b5SSbR0">
                         <mutation statement="false" at="true"></mutation>
                         <field name="MODE">GET</field>
                         <field name="WHERE">FROM_START</field>
                         <value name="VALUE">
                           <block type="lists_split" id="u.e*_S{w7sdO8qLV]qE,">
                             <mutation mode="SPLIT"></mutation>
                             <field name="MODE">SPLIT</field>
                             <value name="INPUT">
                               <block type="get_value" id="0sttgc-X)jb6)6}FeO:D">
                                 <field name="ATTR">val</field>
                                 <field name="OID">0_userdata.0.ROBOROCK.Zeiten.Sonntag</field>
                               </block>
                             </value>
                             <value name="DELIM">
                               <shadow type="text" id="68m8D}hEIRfZ_Of)QCJI">
                                 <field name="TEXT">:</field>
                               </shadow>
                             </value>
                           </block>
                         </value>
                         <value name="AT">
                           <block type="math_number" id="QJ[{7^~r.r[n8ODadUCd">
                             <field name="NUM">1</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <value name="MINUTES">
                       <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="`cp6Qz%pyN7dD%n[4GJ:">
                         <field name="TEXT">*</field>
                       </shadow>
                       <block type="lists_getIndex" id="(TEF[qhu6XSX.*bI|6Y^">
                         <mutation statement="false" at="true"></mutation>
                         <field name="MODE">GET</field>
                         <field name="WHERE">FROM_START</field>
                         <value name="VALUE">
                           <block type="lists_split" id="PifG+K7K(;=b)UfU0;a3">
                             <mutation mode="SPLIT"></mutation>
                             <field name="MODE">SPLIT</field>
                             <value name="INPUT">
                               <block type="get_value" id="}2~MEI(PPhK:k1,8|E)x">
                                 <field name="ATTR">val</field>
                                 <field name="OID">0_userdata.0.ROBOROCK.Zeiten.Sonntag</field>
                               </block>
                             </value>
                             <value name="DELIM">
                               <shadow type="text" id="CF5NLsHqmc{FG3^.Q+l+">
                                 <field name="TEXT">:</field>
                               </shadow>
                             </value>
                           </block>
                         </value>
                         <value name="AT">
                           <block type="math_number" id="}TGS!VM:*W;^jwCUvl?5">
                             <field name="NUM">2</field>
                           </block>
                         </value>
                       </block>
                     </value>
                   </block>
                 </value>
                 <statement name="STATEMENT">
                   <block type="controls_if" id=":KA}U53%E`rvGfLlM]/i">
                     <mutation elseif="1"></mutation>
                     <value name="IF0">
                       <block type="logic_operation" id="645@@F28Ed^60EjcH5JG" inline="false">
                         <field name="OP">AND</field>
                         <value name="A">
                           <block type="logic_operation" id="L^wOi=0/Gf!eW2K$46c1" inline="false">
                             <field name="OP">AND</field>
                             <value name="A">
                               <block type="logic_compare" id="[c%~Llk!)_Er9!h5Hn6r">
                                 <field name="OP">EQ</field>
                                 <value name="A">
                                   <block type="get_value" id="W5~V6s:IHO9r2`}qKS4@">
                                     <field name="ATTR">val</field>
                                     <field name="OID">0_userdata.0.ROBOROCK.aktiv.Zeitplan_aktiv</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="logic_boolean" id="@In-72#Go2tHke[v?r{H">
                                     <field name="BOOL">TRUE</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <value name="B">
                               <block type="logic_compare" id="G13N!})-*Gf,!Z/AXO4|">
                                 <field name="OP">EQ</field>
                                 <value name="A">
                                   <block type="get_value" id="H2wc^SKQ-$MnQ^[J5]f:">
                                     <field name="ATTR">val</field>
                                     <field name="OID">0_userdata.0.ROBOROCK.aktiv.Sonntag</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="logic_boolean" id=")}g6{5Z^%-b4!6u:ci.T">
                                     <field name="BOOL">TRUE</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </value>
                         <value name="B">
                           <block type="logic_compare" id="Em{NtfK5xK%zp63*T{nG">
                             <field name="OP">EQ</field>
                             <value name="A">
                               <block type="get_value" id="7u_~L@thwyJ=nS9{lN?-">
                                 <field name="ATTR">val</field>
                                 <field name="OID">0_userdata.0.Anwesenheit.Jemand_da</field>
                               </block>
                             </value>
                             <value name="B">
                               <block type="logic_boolean" id="Z2JIT+CT):0LP*IP+o7c">
                                 <field name="BOOL">FALSE</field>
                               </block>
                             </value>
                           </block>
                         </value>
                       </block>
                     </value>
                     <statement name="DO0">
                       <block type="control" id="fdWN12A76u[-Mls2e1sA">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                         <field name="OID">mihome-vacuum.0.control.clean_home</field>
                         <field name="WITH_DELAY">FALSE</field>
                         <value name="VALUE">
                           <block type="logic_boolean" id="dL:rx)EtViakR:f3xP!+">
                             <field name="BOOL">TRUE</field>
                           </block>
                         </value>
                         <next>
                           <block type="control" id="#a@L)HU`K?)d$CCaO1~{">
                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                             <field name="OID">mihome-vacuum.0.control.fan_power</field>
                             <field name="WITH_DELAY">FALSE</field>
                             <value name="VALUE">
                               <block type="math_number" id="G*VY3)ha+tPf5@fGVr;l">
                                 <field name="NUM">102</field>
                               </block>
                             </value>
                             <next>
                               <block type="procedures_callnoreturn" id="PP7aa+8^h{x#exk-w*s8">
                                 <mutation name="Telegram">
                                   <arg name="Meldung"></arg>
                                 </mutation>
                                 <value name="ARG0">
                                   <block type="text_join" id="#f/1g9PN%+yWlS(gUl8a">
                                     <mutation items="4"></mutation>
                                     <value name="ADD0">
                                       <block type="text" id="4,hkFevqq^l8HEy#ds|]">
                                         <field name="TEXT">Saugi wird gestartet nach dem Wochenplan, Sonntag: </field>
                                       </block>
                                     </value>
                                     <value name="ADD1">
                                       <block type="lists_getIndex" id="@(!CM|u4-_.ELRx5r4Vy">
                                         <mutation statement="false" at="true"></mutation>
                                         <field name="MODE">GET</field>
                                         <field name="WHERE">FROM_START</field>
                                         <value name="VALUE">
                                           <block type="lists_split" id="Tmx3hwhH`hk+@Mf3dSNp">
                                             <mutation mode="SPLIT"></mutation>
                                             <field name="MODE">SPLIT</field>
                                             <value name="INPUT">
                                               <block type="get_value" id="qjX_W7j(Te2IO;bd7%^9">
                                                 <field name="ATTR">val</field>
                                                 <field name="OID">0_userdata.0.ROBOROCK.Zeiten.Sonntag</field>
                                               </block>
                                             </value>
                                             <value name="DELIM">
                                               <shadow type="text" id="+etB]tnW]FDe__tw]$SV">
                                                 <field name="TEXT">:</field>
                                               </shadow>
                                             </value>
                                           </block>
                                         </value>
                                         <value name="AT">
                                           <block type="math_number" id="ltLrfn,X/k1#MFx#TSTq">
                                             <field name="NUM">1</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <value name="ADD2">
                                       <block type="lists_getIndex" id="ae]t/:X(TvKKz;IK]|;O">
                                         <mutation statement="false" at="true"></mutation>
                                         <field name="MODE">GET</field>
                                         <field name="WHERE">FROM_START</field>
                                         <value name="VALUE">
                                           <block type="lists_split" id="k@``p,8r(Du{!SN+orpK">
                                             <mutation mode="SPLIT"></mutation>
                                             <field name="MODE">SPLIT</field>
                                             <value name="INPUT">
                                               <block type="get_value" id="(7=tu?zqs;5:hEr]5#(G">
                                                 <field name="ATTR">val</field>
                                                 <field name="OID">0_userdata.0.ROBOROCK.Zeiten.Sonntag</field>
                                               </block>
                                             </value>
                                             <value name="DELIM">
                                               <shadow type="text" id="/*N5no%|PZlGak@zp~M/">
                                                 <field name="TEXT">:</field>
                                               </shadow>
                                             </value>
                                           </block>
                                         </value>
                                         <value name="AT">
                                           <block type="math_number" id="sPRE@{omjF8BXUnDy?hb">
                                             <field name="NUM">2</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <value name="ADD3">
                                       <block type="text" id="~=[N@3XGv(og+fyjj`n|">
                                         <field name="TEXT"> Uhr.</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </statement>
                     <value name="IF1">
                       <block type="logic_operation" id="u]q|FT-`k$0WR9}y|k6l" inline="false">
                         <field name="OP">AND</field>
                         <value name="A">
                           <block type="logic_operation" id="|U$RB!M3n8r90qC%#Icy" inline="false">
                             <field name="OP">AND</field>
                             <value name="A">
                               <block type="logic_compare" id="Lz8LDn=_W4r7hw)+msH|">
                                 <field name="OP">EQ</field>
                                 <value name="A">
                                   <block type="get_value" id="ufAWIGyXE_bM*$im:AMy">
                                     <field name="ATTR">val</field>
                                     <field name="OID">0_userdata.0.ROBOROCK.aktiv.Zeitplan_aktiv</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="logic_boolean" id="8r7_c`^rY3cnO1^E=r1y">
                                     <field name="BOOL">TRUE</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <value name="B">
                               <block type="logic_compare" id="2_D/O,g92EFw!4ir0I-8">
                                 <field name="OP">EQ</field>
                                 <value name="A">
                                   <block type="get_value" id="AcE9RIyk8`xOe#_S0Vof">
                                     <field name="ATTR">val</field>
                                     <field name="OID">0_userdata.0.ROBOROCK.aktiv.Sonntag</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="logic_boolean" id="Q!oJ8YhjR]j6i_cuq,vG">
                                     <field name="BOOL">TRUE</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </value>
                         <value name="B">
                           <block type="logic_compare" id="jSk-#R?BB*FvA!F(3d#g">
                             <field name="OP">EQ</field>
                             <value name="A">
                               <block type="get_value" id="TJ#cZs_n4)HwVvf_JZR[">
                                 <field name="ATTR">val</field>
                                 <field name="OID">0_userdata.0.Anwesenheit.Jemand_da</field>
                               </block>
                             </value>
                             <value name="B">
                               <block type="logic_boolean" id="9v!3V,TryGL/4P1Ql6m-">
                                 <field name="BOOL">TRUE</field>
                               </block>
                             </value>
                           </block>
                         </value>
                       </block>
                     </value>
                     <statement name="DO1">
                       <block type="update" id="C?.0z-/fW9e+hCoUgvde">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                         <field name="OID">0_userdata.0.ROBOROCK.Saug-Reminder</field>
                         <field name="WITH_DELAY">FALSE</field>
                         <value name="VALUE">
                           <block type="logic_boolean" id="RAt(7W~fE9Y`Ix{-4sN1">
                             <field name="BOOL">TRUE</field>
                           </block>
                         </value>
                       </block>
                     </statement>
                   </block>
                 </statement>
                </block>
                


                71168d15-0f8c-4b18-9a77-1ace5dce23f4-grafik.png
                Zeitblock:

                <block xmlns="https://developers.google.com/blockly/xml" type="schedule" id="F1}1Hb/1%hm#0_JM/8lC" x="362" y="4844">
                 <field name="SCHEDULE">56 18 * * *</field>
                 <statement name="STATEMENT">
                   <block type="update" id="?1+m,VZCrly6,(#sM7v4">
                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                     <field name="OID">0_userdata.0.ROBOROCK.Saug-Reminder</field>
                     <field name="WITH_DELAY">FALSE</field>
                     <value name="VALUE">
                       <block type="logic_boolean" id="cNtO}4%tz+B87C,jJevP">
                         <field name="BOOL">FALSE</field>
                       </block>
                     </value>
                   </block>
                 </statement>
                </block>
                


                Letzter Teil:

                <block xmlns="https://developers.google.com/blockly/xml" type="on" id="tzCqV+l2`XYn0nr]N1bw" x="362" y="4951">
                 <field name="OID">0_userdata.0.ROBOROCK.Saug-Reminder</field>
                 <field name="CONDITION">ne</field>
                 <field name="ACK_CONDITION"></field>
                 <statement name="STATEMENT">
                   <block type="controls_if" id="GqaJ()-D6/pl.9Y_Mq2X">
                     <mutation else="1"></mutation>
                     <value name="IF0">
                       <block type="logic_compare" id="5p2]X8Oy|Bx5uVJDXj1A">
                         <field name="OP">EQ</field>
                         <value name="A">
                           <block type="on_source" id="EvL9+(kM3yn`9)_5]nc$">
                             <field name="ATTR">state.val</field>
                           </block>
                         </value>
                         <value name="B">
                           <block type="logic_boolean" id="VOt[*ZAaIvM8U^/78V`_">
                             <field name="BOOL">TRUE</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <statement name="DO0">
                       <block type="timeouts_setinterval" id="ExUI/h:2xQ{!SM.Zi@}2">
                         <field name="NAME">Intervall</field>
                         <field name="INTERVAL">10</field>
                         <field name="UNIT">min</field>
                         <statement name="STATEMENT">
                           <block type="controls_if" id="CbFVt*5OtVr(rJu|jEZ`">
                             <value name="IF0">
                               <block type="logic_compare" id="A4SQ_4$7IG%bK3)-`xSh">
                                 <field name="OP">EQ</field>
                                 <value name="A">
                                   <block type="get_value" id="X-$L2)ADz*[cW6t4y/uO">
                                     <field name="ATTR">val</field>
                                     <field name="OID">0_userdata.0.Anwesenheit.Jemand_da</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="logic_boolean" id="6yvgY;E|}H!GK@uZX/Qg">
                                     <field name="BOOL">FALSE</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <statement name="DO0">
                               <block type="control" id="c!V9eTpxwI.g.zv#/!9#">
                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                 <field name="OID">mihome-vacuum.0.control.clean_home</field>
                                 <field name="WITH_DELAY">FALSE</field>
                                 <value name="VALUE">
                                   <block type="logic_boolean" id="bBFVBR[vN[xuua3edhfP">
                                     <field name="BOOL">TRUE</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="control" id=":Nugd7EKH*daZi4d9Is1">
                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                     <field name="OID">mihome-vacuum.0.control.fan_power</field>
                                     <field name="WITH_DELAY">FALSE</field>
                                     <value name="VALUE">
                                       <block type="math_number" id="be!RICz`w,MM#Noh@yKH">
                                         <field name="NUM">102</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="procedures_callnoreturn" id="jX%XF0NXLa@ti,%M^piT">
                                         <mutation name="Telegram">
                                           <arg name="Meldung"></arg>
                                         </mutation>
                                         <value name="ARG0">
                                           <block type="text_join" id="^+kVRGfko9tZPE)bAt6w">
                                             <mutation items="1"></mutation>
                                             <value name="ADD0">
                                               <block type="text" id="9%ku6E3u7@`|Pm_-`XVT">
                                                 <field name="TEXT">Saugi wird jetzt gestartet nach dem Wochenplan, da keiner mehr Daheim ist</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="update" id="$+$gX#ud[lpcoID7;nn_">
                                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                             <field name="OID">0_userdata.0.ROBOROCK.Saug-Reminder</field>
                                             <field name="WITH_DELAY">FALSE</field>
                                             <value name="VALUE">
                                               <block type="logic_boolean" id="j}TnZ557jPl2*vVF_O2h">
                                                 <field name="BOOL">FALSE</field>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="timeouts_clearinterval" id="4!oVH3H2D{1fh:f_?qc9">
                                                 <field name="NAME">Intervall</field>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </statement>
                           </block>
                         </statement>
                       </block>
                     </statement>
                     <statement name="ELSE">
                       <block type="timeouts_clearinterval" id="wr,sSVYV;q|y8ayp~;bU">
                         <field name="NAME">Intervall</field>
                       </block>
                     </statement>
                   </block>
                 </statement>
                </block>
                

                1 Antwort Letzte Antwort
                0
                • H helfi9999

                  @guergen @mickym @Codierknecht hallo,
                  er soll nur einmal saugen wenn niemand zuhause ist. Kommt jemand wieder und geht später nochmals weg soll er nicht nochmal saugen. Habe mich eventuell nicht richtig ausgedrückt.

                  CodierknechtC Offline
                  CodierknechtC Offline
                  Codierknecht
                  Developer Most Active
                  schrieb am zuletzt editiert von
                  #8

                  @helfi9999 sagte in Zeitsaugen als Blockly:

                  @guergen @mickym @Codierknecht hallo,
                  er soll nur einmal saugen wenn niemand zuhause ist. Kommt jemand wieder und geht später nochmals weg soll er nicht nochmal saugen. Habe mich eventuell nicht richtig ausgedrückt.

                  Doch, hast Du. Ich befürchte, dass das als reine Beschreibung nicht verstanden wurde.
                  Daher hier als Blockly.
                  Der Trigger sitzt auf "anwesend". Irgendwie wirst Du ja prüfen können, ab Personen anwesend sind oder nicht.
                  Zusätzlich gibt es einen DP, der dem Sauger sagt ob er saugen soll oder nicht.
                  Wenn alle abwesend sind, läuft der Sauger los und merkt sich im DP, dass er nicht mehr saugen soll.
                  Nachts wird der DP wieder zurückgesetzt, damit er am neuen Tag auch wieder losläuft.
                  Ist nicht wirklich kompliziert.

                  ea493393-f9f0-46bb-a5ef-7990db684a32-grafik.png

                  "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                  Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                  HmIP|ZigBee|Tasmota|Unifi
                  Zabbix Certified Specialist
                  Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                  H 2 Antworten Letzte Antwort
                  0
                  • CodierknechtC Codierknecht

                    @helfi9999 sagte in Zeitsaugen als Blockly:

                    @guergen @mickym @Codierknecht hallo,
                    er soll nur einmal saugen wenn niemand zuhause ist. Kommt jemand wieder und geht später nochmals weg soll er nicht nochmal saugen. Habe mich eventuell nicht richtig ausgedrückt.

                    Doch, hast Du. Ich befürchte, dass das als reine Beschreibung nicht verstanden wurde.
                    Daher hier als Blockly.
                    Der Trigger sitzt auf "anwesend". Irgendwie wirst Du ja prüfen können, ab Personen anwesend sind oder nicht.
                    Zusätzlich gibt es einen DP, der dem Sauger sagt ob er saugen soll oder nicht.
                    Wenn alle abwesend sind, läuft der Sauger los und merkt sich im DP, dass er nicht mehr saugen soll.
                    Nachts wird der DP wieder zurückgesetzt, damit er am neuen Tag auch wieder losläuft.
                    Ist nicht wirklich kompliziert.

                    ea493393-f9f0-46bb-a5ef-7990db684a32-grafik.png

                    H Online
                    H Online
                    helfi9999
                    schrieb am zuletzt editiert von
                    #9

                    @codierknecht das sieht klasse aus. Eine Frage noch wie mache ich das mit 2 anwesenden Personen.

                    Intel NUC mit Iobroker

                    CodierknechtC 1 Antwort Letzte Antwort
                    0
                    • H helfi9999

                      @codierknecht das sieht klasse aus. Eine Frage noch wie mache ich das mit 2 anwesenden Personen.

                      CodierknechtC Offline
                      CodierknechtC Offline
                      Codierknecht
                      Developer Most Active
                      schrieb am zuletzt editiert von
                      #10

                      @helfi9999 sagte in Zeitsaugen als Blockly:

                      @codierknecht das sieht klasse aus. Eine Frage noch wie mache ich das mit 2 anwesenden Personen.

                      Ich würde einen eigenen DP (wie hier) anlegen, der das Gesamtergebnis repräsentiert.
                      Der wird per Script gefüllt: Entweder "true" (es ist jemand anwesend) oder "false" (niemand anwesend).

                      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                      HmIP|ZigBee|Tasmota|Unifi
                      Zabbix Certified Specialist
                      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                      1 Antwort Letzte Antwort
                      0
                      • CodierknechtC Codierknecht

                        @helfi9999 sagte in Zeitsaugen als Blockly:

                        @guergen @mickym @Codierknecht hallo,
                        er soll nur einmal saugen wenn niemand zuhause ist. Kommt jemand wieder und geht später nochmals weg soll er nicht nochmal saugen. Habe mich eventuell nicht richtig ausgedrückt.

                        Doch, hast Du. Ich befürchte, dass das als reine Beschreibung nicht verstanden wurde.
                        Daher hier als Blockly.
                        Der Trigger sitzt auf "anwesend". Irgendwie wirst Du ja prüfen können, ab Personen anwesend sind oder nicht.
                        Zusätzlich gibt es einen DP, der dem Sauger sagt ob er saugen soll oder nicht.
                        Wenn alle abwesend sind, läuft der Sauger los und merkt sich im DP, dass er nicht mehr saugen soll.
                        Nachts wird der DP wieder zurückgesetzt, damit er am neuen Tag auch wieder losläuft.
                        Ist nicht wirklich kompliziert.

                        ea493393-f9f0-46bb-a5ef-7990db684a32-grafik.png

                        H Online
                        H Online
                        helfi9999
                        schrieb am zuletzt editiert von
                        #11

                        @codierknecht vielen Dank für eure Hilfe hat alles geklappt wie es sollte.

                        Intel NUC mit Iobroker

                        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

                        479

                        Online

                        32.8k

                        Benutzer

                        82.9k

                        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