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. 30min Pause nach Skript Ausführung

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

30min Pause nach Skript Ausführung

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
7 Beiträge 5 Kommentatoren 889 Aufrufe
  • Ä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.
  • M Offline
    M Offline
    marfa84
    schrieb am zuletzt editiert von
    #1

    Moin Leute,

    da ich gerade nicht weiter komme, benötige ich leider erneut Eure Hilfe.

    Ich habe einen Bewegungsmelder im Flur und dieser soll bei einer Bewegung den ALEXA Spot mit dem Aktuellen Hausakku Zustand in % ansprechen.

    Dieses funktioniert auch soweit, jedoch bei <u>jeder erkannten Bewegung</u> (kann nervig werden alle 3-4min)

    Ich möchte daher eine Pause von 30min einfügen, wie könnte man das realisieren ?

    Beispiel:

    Bewegung = Skript wird ausgeführt und ALEXA wird angesprochen.

    Nach z.B. 10min erneute Bewegung = ALEXA wird <u>nicht</u> angesprochen.

    Ab 30min erneute Bewegung = ALEXA wird wieder angesprochen.

     <xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="c`tY=3A*f9R)GRP!v1(J" x="-1087" y="-1237"><mutation items="1"></mutation>
        <field name="CONDITION">true</field>
    
        <value name="OID0"><shadow type="field_oid" id="/_mPzc3/#;@#?,fl?V]E"><field name="oid">hm-rpc.1.000########011B.1.MOTION</field></shadow></value> 
        <statement name="STATEMENT"><block type="controls_if" id="F.`-8f|g+oj=O6Y2,pF!"><value name="IF0"><block type="time_compare_ex" id="83Q@?/7*xIE-+^a3awCp"><mutation end_time="true" actual_time="true"></mutation>
                <field name="USE_ACTUAL_TIME">TRUE</field>
                <field name="OPTION">between</field>
                <value name="START_TIME"><shadow type="text" id="uaeUg*:~ycr]({{Q0N9E"><field name="TEXT">09:00</field></shadow></value> 
                <value name="END_TIME"><shadow type="text" id="7XQ,ZZv:HH4q[!INGgyn"><field name="TEXT">19:00</field></shadow></value></block></value> 
            <statement name="DO0"><block type="variables_set" id="Y]p/4ILH|ZHtu0t;rzv5"><field name="VAR">Zwischenspeicher</field>
                <value name="VALUE"><block type="get_value" id="|`b|CAJPAkZuP5l_NNzT"><field name="ATTR">val</field>
                    <field name="OID">alexa2.0.Echo-Devices.########.Player.volume</field></block></value> 
                <next><block type="control" id="A]CspWv7CrQK~S]NIX!b"><mutation delay_input="true"></mutation>
                    <field name="OID">alexa2.0.Echo-Devices.########.Player.volume</field>
                    <field name="WITH_DELAY">TRUE</field>
                    <field name="DELAY_MS">100</field>
                    <field name="UNIT">ms</field>
                    <field name="CLEAR_RUNNING">FALSE</field>
                    <value name="VALUE"><block type="math_number" id="5,rHrGS]*s#w0G]E)=*{"><field name="NUM">45</field></block></value> 
                    <next><block type="controls_if" id="qWhnWk.9%-W7`Ll-9Oia"><value name="IF0"><block type="logic_compare" id="B_AOEYWh@k;p,;!;^e!C"><field name="OP">LT</field>
                            <value name="A"><block type="get_value" id="EasG|iShEZEa^Q=0c@[C"><field name="ATTR">val</field>
                                <field name="OID">modbus.0.holdingRegisters.210_Act__state of charge</field></block></value> 
                            <value name="B"><block type="text" id=":CF?qp1Hyh?m0HsxH?D;"><field name="TEXT">21</field></block></value></block></value> 
                        <statement name="DO0"><block type="control" id="%qbPCo,ZXCn:+ApoIo/c"><mutation delay_input="false"></mutation>
                            <field name="OID">alexa2.0.Echo-Devices.########.Commands.speak</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE"><block type="text_join" id="5LB_!O:!AA#M3NC92,2W"><mutation items="3"></mutation>
                                <value name="ADD0"><block type="text" id="JimV{=[+z2^)Fj}GhFM`"><field name="TEXT">Die Haus Batterie hat einen aktuellen Zustand von</field></block></value> 
                                <value name="ADD1"><block type="get_value" id="n(L`42cPPitV5H4;b4Mr"><field name="ATTR">val</field>
                                    <field name="OID">modbus.0.holdingRegisters.210_Act__state of charge</field></block></value> 
                                <value name="ADD2"><block type="text" id="7,VdIx+zmO)JXj-xcl/C"><field name="TEXT">Prozent, daher bitte die Energiekosten einsparen. Vielen Dank !</field></block></value></block></value> 
                            <next><block type="control" id="RyDcq48z@I1eSZxohpsy"><mutation delay_input="true"></mutation>
                                <field name="OID">alexa2.0.Echo-Devices.########.Player.volume</field>
                                <field name="WITH_DELAY">TRUE</field>
                                <field name="DELAY_MS">9</field>
                                <field name="UNIT">sec</field>
                                <field name="CLEAR_RUNNING">FALSE</field>
                                <value name="VALUE"><block type="variables_get" id="=r*S/[TMrNpcHR}Q=b[J"><field name="VAR">Zwischenspeicher</field></block></value></block></next></block></statement></block></next></block></next></block></statement></block></statement> 
        <next><block type="on_ext" id="Qs*-gVE#iT-S674{0/n4"><mutation items="1"></mutation>
            <field name="CONDITION">true</field>
    
            <value name="OID0"><shadow type="field_oid" id="_kIuG2JJn,JoC5:Dmn_z"><field name="oid">hm-rpc.1.00091709AC011B.1.MOTION</field></shadow></value> 
            <statement name="STATEMENT"><block type="controls_if" id="bCJJxquzJvv:!TZB!+DA"><value name="IF0"><block type="time_compare_ex" id="vg(q9.sl))?6gma}xu=b"><mutation end_time="true" actual_time="true"></mutation>
                    <field name="USE_ACTUAL_TIME">TRUE</field>
                    <field name="OPTION">between</field>
                    <value name="START_TIME"><shadow type="text" id=";c~}XVdia~~;o0k7,Ni3"><field name="TEXT">09:00</field></shadow></value> 
                    <value name="END_TIME"><shadow type="text" id=";CJH~iz_;NZ,xd1Rc)Nt"><field name="TEXT">19:00</field></shadow></value></block></value> 
                <statement name="DO0"><block type="variables_set" id=".GcC7YyJ3sdSCjV4frg["><field name="VAR">Zwischenspeicher</field>
                    <value name="VALUE"><block type="get_value" id="r)kMjVb..)+D-qiXfVa?"><field name="ATTR">val</field>
                        <field name="OID">alexa2.0.Echo-Devices.########.Player.volume</field></block></value> 
                    <next><block type="control" id="f(C]y)HwEU_[BK6l3Kls"><mutation delay_input="true"></mutation>
                        <field name="OID">alexa2.0.Echo-Devices.########.Player.volume</field>
                        <field name="WITH_DELAY">TRUE</field>
                        <field name="DELAY_MS">100</field>
                        <field name="UNIT">ms</field>
                        <field name="CLEAR_RUNNING">FALSE</field>
                        <value name="VALUE"><block type="math_number" id="3#rPD.QN49iX(5GP_U`6"><field name="NUM">45</field></block></value> 
                        <next><block type="controls_if" id="{Rgg7pTC+i-K,}{9JOgY"><value name="IF0"><block type="logic_operation" id="QLAW^bdfA2eQD/0og_Tb"><field name="OP">AND</field>
                                <value name="A"><block type="logic_compare" id="F,J%,x6B+]il`jNF^Nvu"><field name="OP">GT</field>
                                    <value name="A"><block type="get_value" id="u?+EhX1lo_1)zM@-q,!O"><field name="ATTR">val</field>
                                        <field name="OID">modbus.0.holdingRegisters.210_Act__state of charge</field></block></value> 
                                    <value name="B"><block type="text" id="m@E1rx8=?~?l:NkS+!jf"><field name="TEXT">21</field></block></value></block></value> 
                                <value name="B"><block type="logic_compare" id=";%vl~=#/.]Y?zm]b7Wm?"><field name="OP">LT</field>
                                    <value name="A"><block type="get_value" id="A%.w@^481giW24YlX058"><field name="ATTR">val</field>
                                        <field name="OID">modbus.0.holdingRegisters.210_Act__state of charge</field></block></value> 
                                    <value name="B"><block type="text" id="[hyZ_HMQWbtFF91vhr/w"><field name="TEXT">95</field></block></value></block></value></block></value> 
                            <statement name="DO0"><block type="control" id="#Zf=q3Ncr+yfr|d1}j{I"><mutation delay_input="false"></mutation>
                                <field name="OID">alexa2.0.Echo-Devices.########.Commands.speak</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE"><block type="text_join" id=".!XNL4M|8;kX;[?pRF=t"><mutation items="3"></mutation>
                                    <value name="ADD0"><block type="text" id="pWWQuCv;cI(kk=c8|z|_"><field name="TEXT">Die Haus Batterie hat einen aktuellen Zustand von</field></block></value> 
                                    <value name="ADD1"><block type="get_value" id="zH8F5+.F*bY8~]}Ra6s#"><field name="ATTR">val</field>
                                        <field name="OID">modbus.0.holdingRegisters.210_Act__state of charge</field></block></value> 
                                    <value name="ADD2"><block type="text" id="Jdd(-7@6GIeuI83t9m*X"><field name="TEXT">Prozent</field></block></value></block></value> 
                                <next><block type="control" id="}[9X?e~YkXYi?W@8Bl+C"><mutation delay_input="true"></mutation>
                                    <field name="OID">alexa2.0.Echo-Devices.########.Player.volume</field>
                                    <field name="WITH_DELAY">TRUE</field>
                                    <field name="DELAY_MS">9</field>
                                    <field name="UNIT">sec</field>
                                    <field name="CLEAR_RUNNING">FALSE</field>
                                    <value name="VALUE"><block type="variables_get" id="#!3b,/eg7kU-UhMfI*kK"><field name="VAR">Zwischenspeicher</field></block></value></block></next></block></statement></block></next></block></next></block></statement></block></statement> 
            <next><block type="on_ext" id="Xr/2ZeSXZL].BV]z*+ik"><mutation items="1"></mutation>
                <field name="CONDITION">true</field>
    
                <value name="OID0"><shadow type="field_oid" id="`?T{FGE0PpUSX%0F~a`Y"><field name="oid">hm-rpc.1.00091709AC011B.1.MOTION</field></shadow></value> 
                <statement name="STATEMENT"><block type="controls_if" id="9BvZ(-xRtf7rsyHyg09B"><value name="IF0"><block type="time_compare_ex" id="Gsx+l71fMpTcdDkU/,8["><mutation end_time="true" actual_time="true"></mutation>
                        <field name="USE_ACTUAL_TIME">TRUE</field>
                        <field name="OPTION">between</field>
                        <value name="START_TIME"><shadow type="text" id="P%nNPSPAyj~}N8{#nfXX"><field name="TEXT">09:00</field></shadow></value> 
                        <value name="END_TIME"><shadow type="text" id="U@_.#}B-4;16@y~A=OQt"><field name="TEXT">19:00</field></shadow></value></block></value> 
                    <statement name="DO0"><block type="variables_set" id="{Y;:f:6*SwMh@ei#b2ZF"><field name="VAR">Zwischenspeicher</field>
                        <value name="VALUE"><block type="get_value" id="k]SX7vD/E)pJ;4;wOJRQ"><field name="ATTR">val</field>
                            <field name="OID">alexa2.0.Echo-Devices.#########.Player.volume</field></block></value> 
                        <next><block type="control" id="@RP@bLUs-|2X9f,0n-g;"><mutation delay_input="true"></mutation>
                            <field name="OID">alexa2.0.Echo-Devices.#########.Player.volume</field>
                            <field name="WITH_DELAY">TRUE</field>
                            <field name="DELAY_MS">100</field>
                            <field name="UNIT">ms</field>
                            <field name="CLEAR_RUNNING">FALSE</field>
                            <value name="VALUE"><block type="math_number" id="9O*;ijB8-CpU^sn8zzO]"><field name="NUM">45</field></block></value> 
                            <next><block type="controls_if" id="%w`=[p6_t7[/_gqEX!b_"><value name="IF0"><block type="logic_compare" id="T)H*a.9f!eKH[b@]~r=u"><field name="OP">GT</field>
                                    <value name="A"><block type="get_value" id="xYHG^|_M?akBb}ichZG)"><field name="ATTR">val</field>
                                        <field name="OID">modbus.0.holdingRegisters.210_Act__state of charge</field></block></value> 
                                    <value name="B"><block type="text" id="p2Blpf}?C}}TW+*Gm0}L"><field name="TEXT">94</field></block></value></block></value> 
                                <statement name="DO0"><block type="control" id="JArR3|FNvP-fEV*]Cws]"><mutation delay_input="false"></mutation>
                                    <field name="OID">alexa2.0.Echo-Devices.########.Commands.speak</field>
                                    <field name="WITH_DELAY">FALSE</field>
                                    <value name="VALUE"><block type="text_join" id="H:eo]YUwCGH/%`#*wd;#"><mutation items="3"></mutation>
                                        <value name="ADD0"><block type="text" id="#iqoW`[~z_Rn-4HZYagy"><field name="TEXT">Die Haus Batterie hat einen aktuellen Zustand von</field></block></value> 
                                        <value name="ADD1"><block type="get_value" id="n@vpg9W*5B5|/^1ul./x"><field name="ATTR">val</field>
                                            <field name="OID">modbus.0.holdingRegisters.210_Act__state of charge</field></block></value> 
                                        <value name="ADD2"><block type="text" id="(]KkzqO{YpE(A4rb@fgs"><field name="TEXT">Prozent, daher bitte die Waschmaschine oder andere Verbraucher anstellen. Vielen Dank !</field></block></value></block></value> 
                                    <next><block type="control" id="T[pa5K:udiWMQy0cfTYu"><mutation delay_input="true"></mutation>
                                        <field name="OID">alexa2.0.Echo-Devices.########.Player.volume</field>
                                        <field name="WITH_DELAY">TRUE</field>
                                        <field name="DELAY_MS">9</field>
                                        <field name="UNIT">sec</field>
                                        <field name="CLEAR_RUNNING">FALSE</field>
                                        <value name="VALUE"><block type="variables_get" id="2pFZ=tI;%mQ5K(:`5WHy"><field name="VAR">Zwischenspeicher</field></block></value></block></next></block></statement></block></next></block></next></block></statement></block></statement></block></next></block></next></block></xml> 
    
    1 Antwort Letzte Antwort
    0
    • Digi-KaiD Offline
      Digi-KaiD Offline
      Digi-Kai
      schrieb am zuletzt editiert von
      #2

      nur so als Idee:

      Du könntest dir einen Datenpunkt anlegen, in dem die letzte Bewegung als Timestamp abgespeichert wird.

      Bei Auslösen des Bewegungsmelders sollte dann dein Script prüfen, ob zischen der aktuellen Zeit und dem Timestamp z.B. die Zeit von 10 min überschritten wurde.

      if (jetzt - timestamp > 10) {
      Aktion ausführen 
      }
      
      1 Antwort Letzte Antwort
      0
      • sissiwupS Offline
        sissiwupS Offline
        sissiwup
        schrieb am zuletzt editiert von
        #3

        Hi,

        auf der CCU würde ich so etwas über eine Sperr-Variable machen.

        Ansage nur, wenn Bewegung und frei.

        Bei Ansage: frei->gesperrt. In 30 Minuten wieder auf frei.

        Wichtig: Im Init/oder Nachskript die Variable auf frei setzen, sonst geht es schief falls du in der Sperrzeit neu startest.

        MfG

        Sissi

        –-----------------------------------------

        1 CCU3 1 CCU2-Gateway 1 LanGateway 1 Pi-Gateway 1 I7 für ioBroker/MySQL


        1 Antwort Letzte Antwort
        0
        • M Offline
          M Offline
          marfa84
          schrieb am zuletzt editiert von
          #4

          @sissiwup:

          Hi,

          auf der CCU würde ich so etwas über eine Sperr-Variable machen.

          Ansage nur, wenn Bewegung und frei.

          Bei Ansage: frei->gesperrt. In 30 Minuten wieder auf frei.

          Wichtig: Im Init/oder Nachskript die Variable auf frei setzen, sonst geht es schief falls du in der Sperrzeit neu startest. `

          Danke für die schnellen Antworten. :D

          Ich bin nun das Problem erstmal mit einer HM-Sperr-Variable (Akku Ansage= frei/gesperrt) und einem HM-Programm angegangen, konnte es aber bislang noch nicht umfangreich testen, weil meine Frau im Bett kränkelt und sonst der Hammer kreist :lol:

          Homematic Programm:
          12554_akku_ansage_programm.png

          ioBroker Skript:
          12554_akku_ansage.png

          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            marfa84
            schrieb am zuletzt editiert von
            #5

            Leider habe ich gerade festgestellt das es wie oben Beschrieben, nicht funktioniert. :!:

            Begründung:

            Da ich den Bewegungsmelder nicht nur für die o.g. Ansage verwende, ist das Gerät so eingestellt, das er einen Mindestsendeabstand von 4min eingestellt hat. Somit kann der HmIP-SMI Bewegungsmelder "nur" alle 4min neu auslösen um seinen Akku auf lange Sicht zu schonen. Wenn also einer nach 5min durch den Flur schlendert, wird das o.g. HM-Programm "Akku Ansage" bei Änderung immer neu Ausgelöst und die 30min werden somit nicht eingehalten. ;)

            @Digi-Kai:

            nur so als Idee:

            Du könntest dir einen Datenpunkt anlegen, in dem die letzte Bewegung als Timestamp abgespeichert wird.

            Bei Auslösen des Bewegungsmelders sollte dann dein Script prüfen, ob zischen der aktuellen Zeit und dem Timestamp z.B. die Zeit von 10 min überschritten wurde.

            if (jetzt - timestamp > 10) {
            Aktion ausführen 
            }
            ```` `  
            

            Digi-Kai könntest du mir bitte deinen Vorschlag etwas umfangreicher für Dummi´s erläutern, weil ich Anfänger bin, vielen Dank.

            Datenpunk anlegen = Gerät bei Homematic unter CuX Daemon anlegen, damit ich das beim ioBroker finde ?

            Timestamp = ?

            Dein Script prüfen = welches Script meinst du ?

            Wo soll ich deinen Code einfügen ?

            Ich würde mich sehr freuen, wenn du mir helfen könntest, vielen Dank !

            Liebe Grüße

            Martin

            1 Antwort Letzte Antwort
            0
            • R Offline
              R Offline
              radierer
              schrieb am zuletzt editiert von
              #6

              @marfa84:

              Begründung:

              Da ich den Bewegungsmelder nicht nur für die o.g. Ansage verwende, ist das Gerät so eingestellt, das er einen Mindestsendeabstand von 4min eingestellt hat. Somit kann der HmIP-SMI Bewegungsmelder "nur" alle 4min neu auslösen um seinen Akku auf lange Sicht zu schonen. Wenn also einer nach 5min durch den Flur schlendert, wird das o.g. HM-Programm "Akku Ansage" bei Änderung immer neu Ausgelöst und die 30min werden somit nicht eingehalten. ;) `

              Mach doch einfach in die "Wenn" Bedingung den Systemzustand als "nur prüfen" mit rein .. dann sollte es doch gehen.

              Also wenn Bewegung erkannt (bei Änderung ..) UND Systemzustand "frei" (nur prüfen), DANN …

              So sollten die 30 Min. eingehalten und die nächste Sperre erfolgt bei >= 30 Min.

              1 Antwort Letzte Antwort
              0
              • paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #7

                Prinzip:
                493_blockly_30min_sperre.jpg

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

                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

                697

                Online

                32.6k

                Benutzer

                82.1k

                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