- Home
- Deutsch
- Skripten / Logik
- Blockly
- Präsenzmelder Musiksteuerung
Präsenzmelder Musiksteuerung
-
Hallo,
Ich möchte gerne bei Anwesenheitserkennung (HmIP Präsenzmelder) die Musik anschalten. Aber insgesamt bin ich mit dem Ergebnis unzufrieden. Die Musik schaltet sich aus, obwohl jemand noch drinnen ist. Bei der Lichtsteuerung die eine direktverknüfung mit der ccu ist, funktioniert es so wie es sein soll. Könnte mir bitte jemand helfen?
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="timeout" id="timeout">timeout</variable> <variable id="qF^Dv{8_res2E03z3U@Y">Lautstärke</variable> </variables> <block type="on_ext" id="bB3(]JBOEUE$XA7k2.Me" x="133" y="109"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="aW+DH(9p?{^E3c/I2X|}"> <field name="oid">hm-rpc.1.000C20C9962ED7.1.PRESENCE_DETECTION_STATE</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="4fhZ5}(yu$M]^b1.gbL]"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_multi_and" id="BM6aUtrbYHP#/RTPiEAu"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <value name="AND0"> <block type="on_source" id=".8@J5,cJVLJvDRew?o}C"> <field name="ATTR">state.val</field> </block> </value> <value name="AND1"> <block type="time_compare_ex" id="hlXzipw`(/+W=Ul?BFo-"> <mutation xmlns="http://www.w3.org/1999/xhtml" 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="8FI_n`F.I#g6$dlu|bJD"> <field name="TEXT">06:00</field> </shadow> </value> <value name="END_TIME"> <shadow type="text" id="bA-|(BaB?N8|~t9yLUBg"> <field name="TEXT">21:00</field> </shadow> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="`L-nWK@e:9uj|jWjouq,"> <field name="NAME">timeout</field> <next> <block type="variables_set" id="uEv]M:CwW|{L4Id(|7,u"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="VALUE"> <block type="math_number" id="/AKmeY={fGj?|@wu5lj%"> <field name="NUM">0</field> </block> </value> <next> <block type="http_get" id="2u@Cpn=,b08OqScUfH0:" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="5ufN;sq-aRubueD%?/:["> <field name="TEXT">http://</field> </shadow> <block type="text" id="6x4QoiG?XF+7M|Ab3VkR"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/leave/Wohnzimmer</field> </block> </value> <next> <block type="http_get" id="XeNnbs7s/GF?np]9{}S!" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="5ufN;sq-aRubueD%?/:["> <field name="TEXT">http://</field> </shadow> <block type="text" id="8+GUul1TuaN1U,L{lTB["> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/leave/Küche</field> </block> </value> <next> <block type="http_get" id="C;IBio1?Sn6$]%:Bjc^}"> <field name="TIMEOUT">20</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="O5KmXc9/8G^jl*cT4,3T"> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="{hI~.Q5.anFY{_dr(,OU"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="Beo`gB_BguS4kvua-46T"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/favourite</field> </block> </value> <value name="ADD1"> <block type="text" id="0{Aj_L_vJ=D6C1W@?W,{"> <field name="TEXT">/klassik movie</field> </block> </value> <value name="ADD2"> <block type="text" id="]UR3+;XkR6d*ambIM1B~"> <field name="TEXT">/de-de/</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="o$^,jOl.K/U-c@oi[f)6"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> </block> </value> <next> <block type="controls_repeat_ext" id="-_pA=Wi7:9!3aP,KY67H"> <value name="TIMES"> <shadow type="math_number" id="6ar6?`^OUL@no8Tw~x9V"> <field name="NUM">9</field> </shadow> </value> <statement name="DO"> <block type="variables_set" id="w.lPzP3b=?.Cn-.Np!A?"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="VALUE"> <block type="math_arithmetic" id=":FC/6IM8q}t-z*g%2^.j"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="w$n2??9k1FK8i*=Peet_"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="`!{L^1wQ,G}_.@2LH/s+"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> <value name="B"> <shadow type="math_number" id="`1O6QUZA-xcFx[n}]5R("> <field name="NUM">2</field> </shadow> </value> </block> </value> <next> <block type="http_get" id="OsNkE@QR2t%_$h$T]sPL" inline="true"> <field name="TIMEOUT">20</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="sD)M=sYD{1)J(|^|~?Y="> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="2:dYCeT?=yK#eBy$q{`N"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="8!;rzj$=r}{%C;:mjWs0"> <field name="TEXT">http://192.168.178.70:5005/</field> </block> </value> <value name="ADD1"> <block type="text" id="e`XiaG^k)C7EH,piJ+Gt"> <field name="TEXT">Kinderbadezimmer/</field> </block> </value> <value name="ADD2"> <block type="text" id="wO.5x+!_,yy^nV]-1KJs"> <field name="TEXT">volume/</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="*^TJ%+aX[7T*IuIx4^Zm"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> </block> </value> <next> <block type="timeouts_wait" id="1W(QO_yH8j?rgA.5@D7d"> <field name="DELAY">1</field> <field name="UNIT">sec</field> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <statement name="ELSE"> <block type="timeouts_settimeout" id="|ifb^rFIG2$IB2!mYDZm"> <field name="NAME">timeout</field> <field name="DELAY">20</field> <field name="UNIT">sec</field> <statement name="STATEMENT"> <block type="controls_repeat_ext" id="Vy[!J.iWQ?mb0Ju)2L10"> <value name="TIMES"> <shadow type="math_number" id="jn2byOr7qwjhkbUldnjm"> <field name="NUM">9</field> </shadow> </value> <statement name="DO"> <block type="variables_set" id="[/+BM]/yM8]I?BcklH~E"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="VALUE"> <block type="math_arithmetic" id="R;tj4u]:[(#F9~$BFe)]"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="w$n2??9k1FK8i*=Peet_"> <field name="NUM">1</field> </shadow> <block type="variables_get" id=".d3t?f_`]]K)^(rq`J[7"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> <value name="B"> <shadow type="math_number" id="QKIHeYxTsxjbPicGd=zp"> <field name="NUM">2</field> </shadow> </value> </block> </value> <next> <block type="http_get" id="81|lCT_ScHNg::.2t1Yc" inline="true"> <field name="TIMEOUT">20</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="sD)M=sYD{1)J(|^|~?Y="> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="|e;WG3BGcj*C(%/[;y6K"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="T`U6]5WwjA;X*`ak|AcJ"> <field name="TEXT">http://192.168.178.70:5005/</field> </block> </value> <value name="ADD1"> <block type="text" id="?np#.WEp=RFY}YM@#},m"> <field name="TEXT">Kinderbadezimmer/</field> </block> </value> <value name="ADD2"> <block type="text" id="+(K+rR,9L1+4S!sJj8|#"> <field name="TEXT">volume/</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="v3/L#or6tBCH0(O|hq.W"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> </block> </value> <next> <block type="timeouts_wait" id="Oe)k2O|{f)H]g*+kuR3r"> <field name="DELAY">1</field> <field name="UNIT">sec</field> </block> </next> </block> </next> </block> </statement> <next> <block type="http_get" id="O$pXp:_fom%Uc`3-c1UV" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="vA=x5Bj31f-KmJw=X($#"> <field name="TEXT">http://</field> </shadow> <block type="text" id="3S*=2y:{dv8x`eYa648y"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/pause</field> </block> </value> </block> </next> </block> </statement> </block> </statement> </block> </statement> </block> </xml>
-
@jwerlsdf sagte in Präsenzmelder Musiksteuerung:
Die Musik schaltet sich aus, obwohl jemand noch drinnen ist.
und was zeigt der DP deines Melders an
-
@crunchip
Ich habe jetzt das Verhalten beobachtet. Wenn jemand im Bad ist, schaltet der Datenpunkt auf true. Obwohl jemand noch drinnen ist ,schaltet drt Datenpunkt auf false und sofort (1 Sekunde vielleicht) auf true. Im Skript müsste eingebaut werden, dass, wenn der Datenpunkt auf false geht, nicht sofort die Musik ausgeschaltet wird, sondern erst ein timer läuft z.b. 30 Sekunden und dieser aber wieder abgebrochen wird, wenn der datenpunkt auf true geht. Weiterhin sollte der Stream nicht dadurch immer wieder neu gestartet werden. Muss icu dann mit einem weiteren Datenpunkt als Übergangslösung arbeiten oder wie kann ich das ganze umsetzen? -
@jwerlsdf sagte: Im Skript müsste eingebaut werden, dass, wenn der Datenpunkt auf false geht, nicht sofort die Musik ausgeschaltet wird, sondern erst ein timer läuft z.b. 30 Sekunden und dieser aber wieder abgebrochen wird, wenn der datenpunkt auf true geht.
So wie ich es sehe, ist es eingebaut.
-
@paul53
Funktioniert nur leider nicht in der Praxis. Geht der Datenpunkt des Präsenzmelders auf false, geht die Musik sofort aus. Geht der Datenpunkt direkt wieder auf true wie oben beschrieben, dann startet der stream neu. Ich dachte, so wie ich es gebaut habe, würde es passen, tut es aber leider nicht. -
@jwerlsdf sagte: Geht der Datenpunkt direkt wieder auf true wie oben beschrieben, dann startet der stream neu.
Das wird mit der Lösung nicht verhindert. Nach dem "stop timeout" muss eine zusätzliche Prüfung erfolgen.
EDIT: Versuche es mal so:
-
@paul53
Wie müsste das dann genau aussehen? -
@jwerlsdf sagte: Wie müsste das dann genau aussehen?
Siehe Bild oben.
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="=^O@aBlcN7-}h]h}I4YZ">Musik</variable> <variable type="timeout" id="timeout">timeout</variable> <variable id="qF^Dv{8_res2E03z3U@Y">Lautstärke</variable> </variables> <block type="on_ext" id="bB3(]JBOEUE$XA7k2.Me" x="137" y="143"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="aW+DH(9p?{^E3c/I2X|}"> <field name="oid">hm-rpc.1.000C20C9962ED7.1.PRESENCE_DETECTION_STATE</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="18fhUp`T@12Nnx+4/Q[{"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="time_compare_ex" id="hlXzipw`(/+W=Ul?BFo-"> <mutation xmlns="http://www.w3.org/1999/xhtml" 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="8FI_n`F.I#g6$dlu|bJD"> <field name="TEXT">06:00</field> </shadow> </value> <value name="END_TIME"> <shadow type="text" id="bA-|(BaB?N8|~t9yLUBg"> <field name="TEXT">21:00</field> </shadow> </value> </block> </value> <statement name="DO0"> <block type="controls_if" id="4fhZ5}(yu$M]^b1.gbL]"> <mutation else="1"></mutation> <value name="IF0"> <block type="on_source" id=".8@J5,cJVLJvDRew?o}C"> <field name="ATTR">state.val</field> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="`L-nWK@e:9uj|jWjouq,"> <field name="NAME">timeout</field> <next> <block type="controls_if" id="tL)7f~2y3jF1z65#Jlq2"> <value name="IF0"> <block type="logic_negate" id="yS8[/0A!pb{tG4~lynL]"> <value name="BOOL"> <block type="variables_get" id=".$xRLrV-c=mN::kwDHKt"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="6RL;GYL{Z:E!38]z|*@H"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> <value name="VALUE"> <block type="logic_boolean" id="u_nCh#.L(KfrYyIFU!,1"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="variables_set" id="4=9FP$/nE#UqT%E0+{7j"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="VALUE"> <block type="math_number" id=".Nt^l7)*:s[|211I[u?a"> <field name="NUM">0</field> </block> </value> <next> <block type="http_get" id="2u@Cpn=,b08OqScUfH0:" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="5ufN;sq-aRubueD%?/:["> <field name="TEXT">http://</field> </shadow> <block type="text" id="6x4QoiG?XF+7M|Ab3VkR"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/leave/Wohnzimmer</field> </block> </value> <next> <block type="http_get" id="XeNnbs7s/GF?np]9{}S!" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="5ufN;sq-aRubueD%?/:["> <field name="TEXT">http://</field> </shadow> <block type="text" id="8+GUul1TuaN1U,L{lTB["> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/leave/Küche</field> </block> </value> <next> <block type="http_get" id="C;IBio1?Sn6$]%:Bjc^}" inline="true"> <field name="TIMEOUT">20</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="O5KmXc9/8G^jl*cT4,3T"> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="{hI~.Q5.anFY{_dr(,OU" inline="true"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="Beo`gB_BguS4kvua-46T"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/favourite</field> </block> </value> <value name="ADD1"> <block type="text" id="0{Aj_L_vJ=D6C1W@?W,{"> <field name="TEXT">/klassik movie</field> </block> </value> <value name="ADD2"> <block type="text" id="]UR3+;XkR6d*ambIM1B~"> <field name="TEXT">/de-de/</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="o$^,jOl.K/U-c@oi[f)6"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> </block> </value> <next> <block type="controls_repeat_ext" id="-_pA=Wi7:9!3aP,KY67H"> <value name="TIMES"> <shadow type="math_number" id="6ar6?`^OUL@no8Tw~x9V"> <field name="NUM">9</field> </shadow> </value> <statement name="DO"> <block type="math_change" id="L6qT2/N1`Wr]/_#V1y7Y"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="DELTA"> <shadow type="math_number" id=";i:IQG}md=MS@P!4NAoW"> <field name="NUM">2</field> </shadow> </value> <next> <block type="http_get" id="OsNkE@QR2t%_$h$T]sPL" inline="true"> <field name="TIMEOUT">20</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="sD)M=sYD{1)J(|^|~?Y="> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="2:dYCeT?=yK#eBy$q{`N" inline="true"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="8!;rzj$=r}{%C;:mjWs0"> <field name="TEXT">http://192.168.178.70:5005/</field> </block> </value> <value name="ADD1"> <block type="text" id="e`XiaG^k)C7EH,piJ+Gt"> <field name="TEXT">Kinderbadezimmer/</field> </block> </value> <value name="ADD2"> <block type="text" id="wO.5x+!_,yy^nV]-1KJs"> <field name="TEXT">volume/</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="*^TJ%+aX[7T*IuIx4^Zm"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> </block> </value> <next> <block type="timeouts_wait" id="1W(QO_yH8j?rgA.5@D7d"> <field name="DELAY">1</field> <field name="UNIT">sec</field> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> <statement name="ELSE"> <block type="timeouts_settimeout" id="|ifb^rFIG2$IB2!mYDZm"> <field name="NAME">timeout</field> <field name="DELAY">20</field> <field name="UNIT">sec</field> <statement name="STATEMENT"> <block type="controls_repeat_ext" id="Vy[!J.iWQ?mb0Ju)2L10"> <value name="TIMES"> <shadow type="math_number" id="jn2byOr7qwjhkbUldnjm"> <field name="NUM">9</field> </shadow> </value> <statement name="DO"> <block type="math_change" id="Y*]q#Ot[F4%MJ/j|LG@`"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="DELTA"> <shadow type="math_number" id="saKgYna/_N0jCEw/~q$v"> <field name="NUM">-2</field> </shadow> </value> <next> <block type="http_get" id="81|lCT_ScHNg::.2t1Yc" inline="true"> <field name="TIMEOUT">20</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="sD)M=sYD{1)J(|^|~?Y="> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="|e;WG3BGcj*C(%/[;y6K" inline="true"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="T`U6]5WwjA;X*`ak|AcJ"> <field name="TEXT">http://192.168.178.70:5005/</field> </block> </value> <value name="ADD1"> <block type="text" id="?np#.WEp=RFY}YM@#},m"> <field name="TEXT">Kinderbadezimmer/</field> </block> </value> <value name="ADD2"> <block type="text" id="+(K+rR,9L1+4S!sJj8|#"> <field name="TEXT">volume/</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="v3/L#or6tBCH0(O|hq.W"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> </block> </value> <next> <block type="timeouts_wait" id="Oe)k2O|{f)H]g*+kuR3r"> <field name="DELAY">1</field> <field name="UNIT">sec</field> </block> </next> </block> </next> </block> </statement> <next> <block type="http_get" id="O$pXp:_fom%Uc`3-c1UV" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="vA=x5Bj31f-KmJw=X($#"> <field name="TEXT">http://</field> </shadow> <block type="text" id="3S*=2y:{dv8x`eYa648y"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/pause</field> </block> </value> <next> <block type="variables_set" id="D?I#q^X334h=By@|9/Ru"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> <value name="VALUE"> <block type="logic_boolean" id="lv~D%U^[bI5sWk6bD+T#"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </statement> <value name="IF1"> <block type="variables_get" id="E)5YJl=P;hBQEV}kQ}fz"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> </block> </value> <statement name="DO1"> <block type="variables_set" id="t6Kb~B*Zx#qZPL~h474G"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> <value name="VALUE"> <block type="logic_boolean" id="#!iMcRU^mM%,(HCjMX{T"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="http_get" id="v8dXPT9s^B0`0W9~I9.1" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="vA=x5Bj31f-KmJw=X($#"> <field name="TEXT">http://</field> </shadow> <block type="text" id="I[YfWZY[J2Qr}={iCo/n"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/pause</field> </block> </value> </block> </next> </block> </statement> </block> </statement> </block> </xml>
Alternativ:
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="=^O@aBlcN7-}h]h}I4YZ">Musik</variable> <variable type="timeout" id="timeout">timeout</variable> <variable id="qF^Dv{8_res2E03z3U@Y">Lautstärke</variable> </variables> <block type="on_ext" id="bB3(]JBOEUE$XA7k2.Me" x="137" y="143"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="aW+DH(9p?{^E3c/I2X|}"> <field name="oid">hm-rpc.1.000C20C9962ED7.1.PRESENCE_DETECTION_STATE</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="4fhZ5}(yu$M]^b1.gbL]"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="on_source" id=".8@J5,cJVLJvDRew?o}C"> <field name="ATTR">state.val</field> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="`L-nWK@e:9uj|jWjouq,"> <field name="NAME">timeout</field> <next> <block type="controls_if" id="tL)7f~2y3jF1z65#Jlq2"> <value name="IF0"> <block type="logic_multi_and" id=":^]9A$e{,,H!Y)?fQln0"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <value name="AND0"> <block type="time_compare_ex" id="hlXzipw`(/+W=Ul?BFo-"> <mutation xmlns="http://www.w3.org/1999/xhtml" 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="8FI_n`F.I#g6$dlu|bJD"> <field name="TEXT">06:00</field> </shadow> </value> <value name="END_TIME"> <shadow type="text" id="bA-|(BaB?N8|~t9yLUBg"> <field name="TEXT">21:00</field> </shadow> </value> </block> </value> <value name="AND1"> <block type="logic_negate" id="yS8[/0A!pb{tG4~lynL]"> <value name="BOOL"> <block type="variables_get" id=".$xRLrV-c=mN::kwDHKt"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="6RL;GYL{Z:E!38]z|*@H"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> <value name="VALUE"> <block type="logic_boolean" id="u_nCh#.L(KfrYyIFU!,1"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="variables_set" id="4=9FP$/nE#UqT%E0+{7j"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="VALUE"> <block type="math_number" id=".Nt^l7)*:s[|211I[u?a"> <field name="NUM">0</field> </block> </value> <next> <block type="http_get" id="2u@Cpn=,b08OqScUfH0:" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="5ufN;sq-aRubueD%?/:["> <field name="TEXT">http://</field> </shadow> <block type="text" id="6x4QoiG?XF+7M|Ab3VkR"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/leave/Wohnzimmer</field> </block> </value> <next> <block type="http_get" id="XeNnbs7s/GF?np]9{}S!" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="5ufN;sq-aRubueD%?/:["> <field name="TEXT">http://</field> </shadow> <block type="text" id="8+GUul1TuaN1U,L{lTB["> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/leave/Küche</field> </block> </value> <next> <block type="http_get" id="C;IBio1?Sn6$]%:Bjc^}" inline="true"> <field name="TIMEOUT">20</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="O5KmXc9/8G^jl*cT4,3T"> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="{hI~.Q5.anFY{_dr(,OU" inline="true"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="Beo`gB_BguS4kvua-46T"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/favourite</field> </block> </value> <value name="ADD1"> <block type="text" id="0{Aj_L_vJ=D6C1W@?W,{"> <field name="TEXT">/klassik movie</field> </block> </value> <value name="ADD2"> <block type="text" id="]UR3+;XkR6d*ambIM1B~"> <field name="TEXT">/de-de/</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="o$^,jOl.K/U-c@oi[f)6"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> </block> </value> <next> <block type="controls_repeat_ext" id="-_pA=Wi7:9!3aP,KY67H"> <value name="TIMES"> <shadow type="math_number" id="6ar6?`^OUL@no8Tw~x9V"> <field name="NUM">9</field> </shadow> </value> <statement name="DO"> <block type="math_change" id="L6qT2/N1`Wr]/_#V1y7Y"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="DELTA"> <shadow type="math_number" id=";i:IQG}md=MS@P!4NAoW"> <field name="NUM">2</field> </shadow> </value> <next> <block type="http_get" id="OsNkE@QR2t%_$h$T]sPL" inline="true"> <field name="TIMEOUT">20</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="sD)M=sYD{1)J(|^|~?Y="> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="2:dYCeT?=yK#eBy$q{`N" inline="true"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="8!;rzj$=r}{%C;:mjWs0"> <field name="TEXT">http://192.168.178.70:5005/</field> </block> </value> <value name="ADD1"> <block type="text" id="e`XiaG^k)C7EH,piJ+Gt"> <field name="TEXT">Kinderbadezimmer/</field> </block> </value> <value name="ADD2"> <block type="text" id="wO.5x+!_,yy^nV]-1KJs"> <field name="TEXT">volume/</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="*^TJ%+aX[7T*IuIx4^Zm"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> </block> </value> <next> <block type="timeouts_wait" id="1W(QO_yH8j?rgA.5@D7d"> <field name="DELAY">1</field> <field name="UNIT">sec</field> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> <value name="IF1"> <block type="variables_get" id="~(N289wLSXO(cGQU`A:j"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> </block> </value> <statement name="DO1"> <block type="timeouts_settimeout" id="|ifb^rFIG2$IB2!mYDZm"> <field name="NAME">timeout</field> <field name="DELAY">20</field> <field name="UNIT">sec</field> <statement name="STATEMENT"> <block type="controls_repeat_ext" id="Vy[!J.iWQ?mb0Ju)2L10"> <value name="TIMES"> <shadow type="math_number" id="jn2byOr7qwjhkbUldnjm"> <field name="NUM">9</field> </shadow> </value> <statement name="DO"> <block type="math_change" id="Y*]q#Ot[F4%MJ/j|LG@`"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="DELTA"> <shadow type="math_number" id="saKgYna/_N0jCEw/~q$v"> <field name="NUM">-2</field> </shadow> </value> <next> <block type="http_get" id="81|lCT_ScHNg::.2t1Yc" inline="true"> <field name="TIMEOUT">20</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="sD)M=sYD{1)J(|^|~?Y="> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="|e;WG3BGcj*C(%/[;y6K" inline="true"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="T`U6]5WwjA;X*`ak|AcJ"> <field name="TEXT">http://192.168.178.70:5005/</field> </block> </value> <value name="ADD1"> <block type="text" id="?np#.WEp=RFY}YM@#},m"> <field name="TEXT">Kinderbadezimmer/</field> </block> </value> <value name="ADD2"> <block type="text" id="+(K+rR,9L1+4S!sJj8|#"> <field name="TEXT">volume/</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="v3/L#or6tBCH0(O|hq.W"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> </block> </value> <next> <block type="timeouts_wait" id="Oe)k2O|{f)H]g*+kuR3r"> <field name="DELAY">1</field> <field name="UNIT">sec</field> </block> </next> </block> </next> </block> </statement> <next> <block type="http_get" id="O$pXp:_fom%Uc`3-c1UV" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="vA=x5Bj31f-KmJw=X($#"> <field name="TEXT">http://</field> </shadow> <block type="text" id="3S*=2y:{dv8x`eYa648y"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/pause</field> </block> </value> <next> <block type="variables_set" id="D?I#q^X334h=By@|9/Ru"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> <value name="VALUE"> <block type="logic_boolean" id="lv~D%U^[bI5sWk6bD+T#"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </statement> </block> </xml>
-
Variante 1: Gleiches Verhalten, wie ich es bei meiner Variante habe.
Variante 2: Wenn hier das zweite Mal eine Bewegung erkannt wird, schaltet der die Musik direkt mit voller Lautstärke (20) ein und schaltet dann schrittweise leise bis auf 0.Ich glaube ich schreibe noch einmal stichpunktartig meine Vorstellung auf:
- Es geht jemand ins Bad. Eine Bewegung wird erkannt.
- Der Datenpunkt des Präsenzmelder geht auf true.
- Die Musik wird eingeschaltet (schrittweise lauter)
- Wird keine Bewegung erkannt (Datenpunkt des Präsenzmelders schaltet auf false), soll nun ein countdown runtergezählt werden (30 Sekunden).
5.1 Wenn der Countdown bei 0 ist, soll Punkt 6 getriggert werden.
5.2 Wenn während des Countdowns eine Bewegung erkannt wird, fängt der countdown von vorne an, aber erst wenn der Datenpunkt des PRÄSENZMELDERS auf false geht. - Die Musik schaltet sich schrittweise leise, zum Schluss aus.
Ich vermute, dass ich noch eine Hilfsvariable/ Datenpunkt mit true/false einbauen muss?
Präsenzmelder true --> "Musik" --> true
Präsenzmelder false --> countdown 30.....0 --> "Musik" --> false
"Musik" --> false --> Musik ausschaltenOder habt ihr noch eine alternative Idee?
-
@jwerlsdf sagte: Wenn hier das zweite Mal eine Bewegung erkannt wird, schaltet der die Musik direkt mit voller Lautstärke (20) ein und schaltet dann schrittweise leise bis auf 0.
Das kann nicht sein: Wenn Bewegung erkannt wird und die Musik läuft noch nicht, wird die Lautstärke beginnend bei 2 sekündlich erhöht. Wenn die Musik bereits läuft, passiert nichts.
-
@paul53
Danke, du hast mich mit dem Bild auf den richtigen Fehler hingewiesen. Bei stop habe ich den timeout vergessen zu setzen.
Außerdem musste ich den Lautstärkeblock nach unten setzen und mit der lautstärke 0 den stream bereits starten. Darüber hinaus habe ich noch eine Pause eingebaut zwischen starte stream und lautstärke lauter. Jetzt funktioniert es auch, dass die Lautstärke kontinuierlich lauter wird. beim Thema leiser hatte ich das Problem nicht gehabt.
Ich werde jetzt das Skript noch ein bisschen testen.Hier noch einmal die überarbeitete version. Vielen Danke @paul53!!!!!!!
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="=^O@aBlcN7-}h]h}I4YZ">Musik</variable> <variable type="timeout" id="timeout">timeout</variable> <variable id="qF^Dv{8_res2E03z3U@Y">Lautstärke</variable> </variables> <block type="on_ext" id="bB3(]JBOEUE$XA7k2.Me" x="137" y="143"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="aW+DH(9p?{^E3c/I2X|}"> <field name="oid">hm-rpc.1.000C20C9962ED7.1.PRESENCE_DETECTION_STATE</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="4fhZ5}(yu$M]^b1.gbL]"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="on_source" id=".8@J5,cJVLJvDRew?o}C"> <field name="ATTR">state.val</field> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="`L-nWK@e:9uj|jWjouq,"> <field name="NAME">timeout</field> <next> <block type="controls_if" id="tL)7f~2y3jF1z65#Jlq2"> <value name="IF0"> <block type="logic_multi_and" id=":^]9A$e{,,H!Y)?fQln0"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <value name="AND0"> <block type="time_compare_ex" id="hlXzipw`(/+W=Ul?BFo-"> <mutation xmlns="http://www.w3.org/1999/xhtml" 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="8FI_n`F.I#g6$dlu|bJD"> <field name="TEXT">06:00</field> </shadow> </value> <value name="END_TIME"> <shadow type="text" id="bA-|(BaB?N8|~t9yLUBg"> <field name="TEXT">21:00</field> </shadow> </value> </block> </value> <value name="AND1"> <block type="logic_negate" id="yS8[/0A!pb{tG4~lynL]"> <value name="BOOL"> <block type="variables_get" id=".$xRLrV-c=mN::kwDHKt"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="6RL;GYL{Z:E!38]z|*@H"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> <value name="VALUE"> <block type="logic_boolean" id="u_nCh#.L(KfrYyIFU!,1"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="http_get" id="2u@Cpn=,b08OqScUfH0:" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="5ufN;sq-aRubueD%?/:["> <field name="TEXT">http://</field> </shadow> <block type="text" id="6x4QoiG?XF+7M|Ab3VkR"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/leave/Wohnzimmer</field> </block> </value> <next> <block type="http_get" id="XeNnbs7s/GF?np]9{}S!" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="5ufN;sq-aRubueD%?/:["> <field name="TEXT">http://</field> </shadow> <block type="text" id="8+GUul1TuaN1U,L{lTB["> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/leave/Kueche</field> </block> </value> <next> <block type="http_get" id="C;IBio1?Sn6$]%:Bjc^}" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="O5KmXc9/8G^jl*cT4,3T"> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="{hI~.Q5.anFY{_dr(,OU" inline="true"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="Beo`gB_BguS4kvua-46T"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/favourite</field> </block> </value> <value name="ADD1"> <block type="text" id="0{Aj_L_vJ=D6C1W@?W,{"> <field name="TEXT">/klassik movie</field> </block> </value> <value name="ADD2"> <block type="text" id="]UR3+;XkR6d*ambIM1B~"> <field name="TEXT">/de-de/</field> </block> </value> <value name="ADD3"> <block type="text" id="(7uF(MJlw,i~bDg$B3vV"> <field name="TEXT">0</field> </block> </value> </block> </value> <next> <block type="timeouts_wait" id="VL-FD*(/,mr5^)D^+^u]"> <field name="DELAY">4</field> <field name="UNIT">sec</field> <next> <block type="variables_set" id="4=9FP$/nE#UqT%E0+{7j"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="VALUE"> <block type="math_number" id=".Nt^l7)*:s[|211I[u?a"> <field name="NUM">0</field> </block> </value> <next> <block type="controls_repeat_ext" id="-_pA=Wi7:9!3aP,KY67H"> <value name="TIMES"> <shadow type="math_number" id="6ar6?`^OUL@no8Tw~x9V"> <field name="NUM">10</field> </shadow> </value> <statement name="DO"> <block type="math_change" id="L6qT2/N1`Wr]/_#V1y7Y"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="DELTA"> <shadow type="math_number" id=";i:IQG}md=MS@P!4NAoW"> <field name="NUM">2</field> </shadow> </value> <next> <block type="http_get" id="OsNkE@QR2t%_$h$T]sPL" inline="true"> <field name="TIMEOUT">20</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="sD)M=sYD{1)J(|^|~?Y="> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="2:dYCeT?=yK#eBy$q{`N" inline="true"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="8!;rzj$=r}{%C;:mjWs0"> <field name="TEXT">http://192.168.178.70:5005/</field> </block> </value> <value name="ADD1"> <block type="text" id="e`XiaG^k)C7EH,piJ+Gt"> <field name="TEXT">Kinderbadezimmer/</field> </block> </value> <value name="ADD2"> <block type="text" id="wO.5x+!_,yy^nV]-1KJs"> <field name="TEXT">volume/</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="*^TJ%+aX[7T*IuIx4^Zm"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> </block> </value> <next> <block type="timeouts_wait" id="1W(QO_yH8j?rgA.5@D7d"> <field name="DELAY">1</field> <field name="UNIT">sec</field> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> <value name="IF1"> <block type="variables_get" id="~(N289wLSXO(cGQU`A:j"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> </block> </value> <statement name="DO1"> <block type="timeouts_settimeout" id="|ifb^rFIG2$IB2!mYDZm"> <field name="NAME">timeout</field> <field name="DELAY">20</field> <field name="UNIT">sec</field> <statement name="STATEMENT"> <block type="controls_repeat_ext" id="Vy[!J.iWQ?mb0Ju)2L10"> <value name="TIMES"> <shadow type="math_number" id="jn2byOr7qwjhkbUldnjm"> <field name="NUM">10</field> </shadow> </value> <statement name="DO"> <block type="math_change" id="Y*]q#Ot[F4%MJ/j|LG@`"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> <value name="DELTA"> <shadow type="math_number" id="saKgYna/_N0jCEw/~q$v"> <field name="NUM">-2</field> </shadow> </value> <next> <block type="http_get" id="81|lCT_ScHNg::.2t1Yc" inline="true"> <field name="TIMEOUT">20</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="sD)M=sYD{1)J(|^|~?Y="> <field name="TEXT">http://</field> </shadow> <block type="text_join" id="|e;WG3BGcj*C(%/[;y6K" inline="true"> <mutation items="4"></mutation> <value name="ADD0"> <block type="text" id="T`U6]5WwjA;X*`ak|AcJ"> <field name="TEXT">http://192.168.178.70:5005/</field> </block> </value> <value name="ADD1"> <block type="text" id="?np#.WEp=RFY}YM@#},m"> <field name="TEXT">Kinderbadezimmer/</field> </block> </value> <value name="ADD2"> <block type="text" id="+(K+rR,9L1+4S!sJj8|#"> <field name="TEXT">volume/</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="v3/L#or6tBCH0(O|hq.W"> <field name="VAR" id="qF^Dv{8_res2E03z3U@Y">Lautstärke</field> </block> </value> </block> </value> <next> <block type="timeouts_wait" id="Oe)k2O|{f)H]g*+kuR3r"> <field name="DELAY">1</field> <field name="UNIT">sec</field> </block> </next> </block> </next> </block> </statement> <next> <block type="http_get" id="O$pXp:_fom%Uc`3-c1UV" inline="true"> <field name="TIMEOUT">10</field> <field name="UNIT">sec</field> <field name="TYPE">text</field> <value name="URL"> <shadow type="text" id="vA=x5Bj31f-KmJw=X($#"> <field name="TEXT">http://</field> </shadow> <block type="text" id="3S*=2y:{dv8x`eYa648y"> <field name="TEXT">http://192.168.178.70:5005/Kinderbadezimmer/pause</field> </block> </value> <next> <block type="variables_set" id="D?I#q^X334h=By@|9/Ru"> <field name="VAR" id="=^O@aBlcN7-}h]h}I4YZ">Musik</field> <value name="VALUE"> <block type="logic_boolean" id="lv~D%U^[bI5sWk6bD+T#"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </statement> </block> </xml>