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. Bewegungsmelder mit Hue und Sonos

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

Bewegungsmelder mit Hue und Sonos

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
36 Beiträge 5 Kommentatoren 5.2k 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
    marphDE
    schrieb am zuletzt editiert von
    #1

    Hallo,

    ich nutze einen Aeotec Multi-Sensor 6 als Bewegungsmelder und möchte damit in meinem Bad das Licht und Sonos bei Bewegung

    unter bestimmten Bedingungen steuern, was bereits auch teilweise schon funktioniert.

    Was ich nun noch verbessern möchte ist, dass wenn das Licht bereits vorher manuell angeschalten wurde, auch eingeschalten bleibt.

    Bei Sonos möchte ich das gerne auch so umsetzen das wenn bereits vorher etwas lief, soll er auch nichts ändern.

    Der Bewegungsmelder kann ja per Parameter angepasst werden (Timeouts, Reports etc.) allerdings wäre es schöner wenn das Abschalten des Lichtes und Sonos mit einem Timer innerhalb des Scripts gelöst wäre, statt über irgendwelche Parameter in der Z-Wave Konfiguration. Soll heißen, aktuell wird abgeschaltet wenn der Haltewert von 5 Minuten in den Parametern wieder zurückgesetzt wird.

    Vielleicht kann mir da jemand ein wenig bei helfen.

    Liebe Grüße,

    Martin
    4060_bildschirmfoto_2018-01-16_um_23.54.26.png

    1 Antwort Letzte Antwort
    0
    • L Online
      L Online
      Linedancer
      schrieb am zuletzt editiert von
      #2

      Hallo Martin,

      ich löse da Thema so:
      1564_2018-01-17.png
      Der Datenpunkt "SV_OG_FLur_LichtManuell" wird vom Lichtschalter beim Einschalten auf true und beim ausschalten auf false gesetzt. Damit ist sichergestellt das der Bewegungsmelder nix macht, wenn das Licht von Hand eingeschaltet wurde.

      –

      Ciao, Gerhard

      1 Antwort Letzte Antwort
      0
      • M Offline
        M Offline
        marphDE
        schrieb am zuletzt editiert von
        #3

        Leider habe ich hier noch keine Schalter die ich abfragen könnte ob sie manuell betätigt wurden.

        Aber der Rest leuchtet mir denke ich ein. :D :lol:

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

          habe nun mal versucht das so umzubauen, dass das Script erstmal schaut ob der Helligkeitswert des Sensors unter einem bestimmten Wert liegt und ob Bewegung registriert wurde sowie den Status der Lampe (an/aus) vorher mit einzubeziehen (mit UND Verknüpfung).

          Dabei Sollte ja nur dann geschalten werden, wenn wirklich alle Drei Bedingungen erfüllt werden.

          Nun habe ich zusätzlich versucht das um einen Timer bzw. Timeout zu ergänzen, leider schaltet das Licht momentan überhaupt nicht ein.
          4060_bildschirmfoto_2018-01-17_um_12.40.23.png

          1 Antwort Letzte Antwort
          0
          • rantanplanR Offline
            rantanplanR Offline
            rantanplan
            schrieb am zuletzt editiert von
            #5

            Hallo marphDE

            Setze doch mal den Debug-Baustein ein.

            Sonst ist das ein fischen im Trüben.

            1x direkt über den "Stop timeout". Damit kannst Du überprüfen ob der Trigger überhaupt gestartet wird.

            Und jeweils direkt unter der "falls" und "sonst falls" Bedingung.

            Damit kannst Du sehen welche und ob überhaupt eine Bedingung erfüllt wird.

            Der Debug-Baustein ist ein unverzichtliches Werkzeug zur Fehlersuche!

            Dann die Datenpunkte überprüfen!

            Am Besten unter Objekte.

            Was für Werte kommen da rein zum Schalten.

            Mal die Leuchte ein und ausschalten und schauen was in den Datenpunkten geändert wird.

            Grüße

            Rantanplan

            CCU3 / MS Server 2019(VM) / Scripten mit Blockly

            1 Antwort Letzte Antwort
            0
            • M Offline
              M Offline
              marphDE
              schrieb am zuletzt editiert von
              #6

              so in etwa ?

              sorry aber das ist alles noch komplett neu für mich :roll:
              4060_bildschirmfoto_2018-01-17_um_15.59.10.png

              1 Antwort Letzte Antwort
              0
              • rantanplanR Offline
                rantanplanR Offline
                rantanplan
                schrieb am zuletzt editiert von
                #7

                @marphDE:

                so in etwa ?

                sorry aber das ist alles noch komplett neu für mich :roll: `
                Ja, die Anordnung ist OK.

                Aber ich würde unterschiedliche Texte reinschreiben.

                Sonst siehst Du im LOG nur die Ausgabe "test" und weist nicht welcher Baustein die Meldung gemacht hat.

                Rantanplan

                CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                1 Antwort Letzte Antwort
                0
                • M Offline
                  M Offline
                  marphDE
                  schrieb am zuletzt editiert von
                  #8

                  So, dass Timeout zum Abschalten kommt jetzt wie gewünscht vom Script aber dafür macht mir das Sonos ansteuern irgendwie einen Strich durch die Rechnung.

                  Gewünschtes Verhalten:

                  • Zwischen Morgens 4:53 und 22.00 Uhr soll er mir meinen Radiosender aus den Favoriten abspielen wenn auch der Bewegungsmelder (Burglar) einen Bewegung registriert.

                  • Sollte bereits manuell etwas auf der Sonos abgespielt werden unabhängig von der Tageszeit und dem Bewegungsmelder, dann soll auch nichts geädert werden, sprich Wiedergabe bleibt wie manuell vorher eingestellt und es wird auch nicht mit dem Radio aus den Favoriten überschrieben.

                  • Licht soll nur automatisch eingeschalten werden wenn Helligkeit einen bestimmten Wert unterschreitet.

                  • Licht soll nicht automatisch ausgehen wenn es bereits vorher manuell eigeschalten wurde (bereits an).

                  Ist Zustand:

                  • Licht geht an wenn Bewegung erkannt wurde.

                  • Licht geht automatisch aus obwohl vorher manuell eingeschalten wurde

                  • Radio geht in jedem Fall nach Timeout von 2 Min. aus auch wenn vorher manuell eingeschalten wurde.

                  Hat jemand eine Idee ?

                  <u>Hier mal ein Blockly Export davon:</u>

                  ! ````
                  <xml xmlns="http://www.w3.org/1999/xhtml"><block type="on" id="sa9ME8u[Sog/O{wblk+0" x="88" y="-112"><field name="OID">zwave.0.NODE2.ALARM.Burglar_1</field>
                  <field name="CONDITION">ne</field>

                  <statement name="STATEMENT"><block type="debug" id="It-rtad-L}76|HU?HhOv"><field name="Severity">debug</field>
                      <value name="TEXT"><shadow type="text" id="LuD|(_)aiB;4,;cSsIcB"><field name="TEXT">Bewegungsmelder ausgelöst.</field></shadow></value> 
                      <next><block type="timeouts_cleartimeout" id="E8={^^guCVz,,c8=N^DP"><field name="NAME">timeout</field>
                          <next><block type="controls_if" id="ALKGd?/:E}.?J:s4U@Iq"><mutation elseif="1"></mutation>
                              <value name="IF0"><block type="logic_operation" id="*cmZABUGJfj5DS.bz5o4"><field name="OP">AND</field>
                                  <value name="A"><block type="logic_compare" id="wE07ARewmnH_@G(qVTm1"><field name="OP">LT</field>
                                      <value name="A"><block type="get_value" id="KX31vP}#Eb0#4PX+x)x2"><field name="ATTR">val</field>
                                          <field name="OID">zwave.0.NODE2.SENSOR_MULTILEVEL.Luminance_1</field></block></value> 
                                      <value name="B"><block type="math_number" id="EH5N,(v*]wuynpRQB82m"><field name="NUM">18</field></block></value></block></value> 
                                  <value name="B"><block type="logic_operation" id="fsEycYCF*hg@6TK1,8P]"><field name="OP">AND</field>
                                      <value name="A"><block type="logic_compare" id="{ht+Oe:*#YWvf{g_K(U4"><field name="OP">GT</field>
                                          <value name="A"><block type="get_value" id="n+7srm%!h[^,]/n{23w]"><field name="ATTR">val</field>
                                              <field name="OID">zwave.0.NODE2.ALARM.Burglar_1</field></block></value> 
                                          <value name="B"><block type="math_number" id="]ASTeu42|_I^xj#*uwHR"><field name="NUM">0</field></block></value></block></value> 
                                      <value name="B"><block type="logic_compare" id="vEXg2?.OTD2NQi.WEZr8"><field name="OP">EQ</field>
                                          <value name="A"><block type="get_value" id="Rh=bEwTc3uuRnMJ@dT}{"><field name="ATTR">val</field>
                                              <field name="OID">hue.0.Philips_hue.Regal_Bad.on</field></block></value> 
                                          <value name="B"><block type="logic_boolean" id="Wrl%2rJs9Q{ftr((CWwL"><field name="BOOL">FALSE</field></block></value></block></value></block></value></block></value> 
                              <statement name="DO0"><block type="debug" id="[!/)_ocY_HSJ`|}G__^c"><field name="Severity">debug</field>
                                  <value name="TEXT"><shadow type="text" id="~}Re*u+%D[p|EH5!hl1J"><field name="TEXT">Bewegungsmelder-Bedingungen erfüllt...schalte Licht an</field></shadow></value> 
                                  <next><block type="control" id="Eb@zY(c@IH%j-_vsUlqj"><mutation delay_input="false"></mutation>
                                      <field name="OID">hue.0.Philips_hue.Regal_Bad.on</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE"><block type="logic_boolean" id="6jMWeNtG5vhP#vousf7?"><field name="BOOL">TRUE</field></block></value></block></next></block></statement> 
                              <value name="IF1"><block type="logic_compare" id="qWY9vl]}(n-sx,#S_jve"><field name="OP">EQ</field>
                                  <value name="A"><block type="get_value" id="Vc|AX2?A}FQ{5*t)w5y?"><field name="ATTR">val</field>
                                      <field name="OID">zwave.0.NODE2.ALARM.Burglar_1</field></block></value> 
                                  <value name="B"><block type="logic_boolean" id="`yLN)oX0eD7N](%PBK/C"><field name="BOOL">FALSE</field></block></value></block></value> 
                              <statement name="DO1"><block type="debug" id="5;70Q-7`iI=ceU}JH?Qv"><field name="Severity">debug</field>
                                  <value name="TEXT"><shadow type="text" id="Qhu{hgF+!Bys2`xX+T)B"><field name="TEXT">Bewegungsmelder-Bedingungen nicht erfüllt...schalte Licht aus</field></shadow></value> 
                                  <next><block type="timeouts_settimeout" id=";y8d9a8?^[Vtj;RKicl`"><field name="NAME">timeout</field>
                                      <field name="DELAY">2</field>
                                      <field name="UNIT">min</field>
                                      <statement name="STATEMENT"><block type="control" id="Sszb,~~:krW#4j7al4zN"><mutation delay_input="false"></mutation>
                                          <field name="OID">hue.0.Philips_hue.Regal_Bad.on</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE"><block type="logic_boolean" id="wYGM[U#z[s^iE,8]|;2%"><field name="BOOL">FALSE</field></block></value></block></statement></block></next></block></statement> 
                              <next><block type="timeouts_cleartimeout" id="u.WzqQ.3}Z68FtITg%*."><field name="NAME">timeout2</field>
                                  <next><block type="controls_if" id=":;db`PD,Uu)EK7WnbM=="><mutation else="1"></mutation>
                                      <value name="IF0"><block type="logic_operation" id="FnN_~C~A|g1DhkDfS/HN"><field name="OP">AND</field>
                                          <value name="A"><block type="logic_compare" id="RZ[qVk!B=0A?ClI:KnCe"><field name="OP">GT</field>
                                              <value name="A"><block type="get_value" id="e~JdQeY9m/f8TRL3u{@~"><field name="ATTR">val</field>
                                                  <field name="OID">zwave.0.NODE2.ALARM.Burglar_1</field></block></value> 
                                              <value name="B"><block type="math_number" id="_I^pz2w2{{}%iPUMi)H8"><field name="NUM">0</field></block></value></block></value> 
                                          <value name="B"><block type="logic_operation" id="96A|;LtC{8b`d=IT839m"><field name="OP">AND</field>
                                              <value name="A"><block type="time_compare" id="!C7y9@,KhTOhsmgqvK~;"><mutation end_time="true"></mutation>
                                                  <field name="OPTION">between</field>
                                                  <field name="START_TIME">4:35</field>
                                                  <field name="END_TIME">22:00</field></block></value> 
                                              <value name="B"><block type="logic_compare" id="+nv%qwET!z?)^j7Yz?nO"><field name="OP">NEQ</field>
                                                  <value name="A"><block type="get_value" id="vQXI9#G_:OR!-:i*4!D2"><field name="ATTR">val</field>
                                                      <field name="OID">sonos.0.root.10_0_0_61.state</field></block></value> 
                                                  <value name="B"><block type="text" id="%lXRXHc^,5qMj{l?iK/e"><field name="TEXT">play</field></block></value></block></value></block></value></block></value> 
                                      <statement name="DO0"><block type="control" id="|NXfwtq2q)t.m.1QeB1U"><mutation delay_input="false"></mutation>
                                          <field name="OID">sonos.0.root.10_0_0_61.volume</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE"><block type="math_number" id="WFR0#DMZup_T?i@~ci%p"><field name="NUM">12</field></block></value> 
                                          <next><block type="control" id="m1Z4ijnJ_.:OQTgEsI{S"><mutation delay_input="false"></mutation>
                                              <field name="OID">sonos.0.root.10_0_0_61.favorites_set</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE"><block type="text" id="wb!H1}L.McRPsWlCH466"><field name="TEXT">94.3 RS2</field></block></value> 
                                              <next><block type="control" id="M7=jamTO`f_Vy3asBWy_"><mutation delay_input="false"></mutation>
                                                  <field name="OID">sonos.0.root.10_0_0_61.state</field>
                                                  <field name="WITH_DELAY">FALSE</field>
                                                  <value name="VALUE"><block type="text" id="Cp/7yeWv1Aei%jeL-SQl"><field name="TEXT">play</field></block></value> 
                                                  <next><block type="control" id="0^SZ=tQeC/|]-Su_(|=k"><mutation delay_input="false"></mutation>
                                                      <field name="OID">sonos.0.root.10_0_0_61.play</field>
                                                      <field name="WITH_DELAY">FALSE</field>
                                                      <value name="VALUE"><block type="logic_boolean" id=":f1y3j};K,ER@r(@VEc#"><field name="BOOL">TRUE</field></block></value> 
                                                      <next><block type="control" id="]C+RB`OFy[Nq.:xeJFeJ"><mutation delay_input="false"></mutation>
                                                          <field name="OID">sonos.0.root.10_0_0_61.stop</field>
                                                          <field name="WITH_DELAY">FALSE</field>
                                                          <value name="VALUE"><block type="logic_boolean" id="WGj!w{y;A:*[^G+z?23+"><field name="BOOL">FALSE</field></block></value></block></next></block></next></block></next></block></next></block></statement> 
                                      <statement name="ELSE"><block type="timeouts_settimeout" id="o3g;-cpX4ZM;5Oq1e#/1"><field name="NAME">timeout2</field>
                                          <field name="DELAY">2</field>
                                          <field name="UNIT">min</field>
                                          <statement name="STATEMENT"><block type="control" id="8VX8b#!~Z9shewjZ#7_T"><mutation delay_input="false"></mutation>
                                              <field name="OID">sonos.0.root.10_0_0_61.favorites_set</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE"></value> 
                                              <next><block type="control" id="MgppBsV2+Na4|.vey`w+"><mutation delay_input="false"></mutation>
                                                  <field name="OID">sonos.0.root.10_0_0_61.state</field>
                                                  <field name="WITH_DELAY">FALSE</field>
                                                  <value name="VALUE"><block type="text" id="=1KxAJ2sIFix]^xZb=J7"><field name="TEXT">stop</field></block></value> 
                                                  <next><block type="control" id="#VA20cmt+?Olr!+@qz]P"><mutation delay_input="false"></mutation>
                                                      <field name="OID">sonos.0.root.10_0_0_61.play</field>
                                                      <field name="WITH_DELAY">FALSE</field>
                                                      <value name="VALUE"><block type="logic_boolean" id="D}ei;}f7Y?*cU)u!Yi75"><field name="BOOL">FALSE</field></block></value> 
                                                      <next><block type="control" id=",]qm.Y0v7L4sLtEs=[Pc"><mutation delay_input="false"></mutation>
                                                          <field name="OID">sonos.0.root.10_0_0_61.stop</field>
                                                          <field name="WITH_DELAY">FALSE</field>
                                                          <value name="VALUE"><block type="logic_boolean" id="vX}fod`eXr5pnSkfr_37"><field name="BOOL">TRUE</field></block></value></block></next></block></next></block></next></block></statement></block></statement></block></next></block></next></block></next></block></next></block></statement></block></xml> 
                  

                  ! ````

                  4060_bildschirmfoto_2018-01-17_um_18.14.39.png

                  1 Antwort Letzte Antwort
                  0
                  • rantanplanR Offline
                    rantanplanR Offline
                    rantanplan
                    schrieb am zuletzt editiert von
                    #9

                    @marphDE:

                    Habe den Text nun hoffentlich sinnvoll angepasst, aber bekomme im Log trotzdem keine Ausgabe.

                    Licht geht aber an aber mittlerweile auch nicht mehr aus. `
                    Na dann triggert der Trigger nicht.

                    Was ist den überhaupt ein "Burglar"?

                    Dann mal einige Schritte zurück und erst die Grundbedingung checken.

                    Mach mal ein neues Blockly.

                    Darin nur einen Trigger für den "Burglar". So wie der aktuelle.

                    In den Trigger nur eine Debug-Ausgabe mehr nicht.

                    Also erst einmal schaffen das der BM getriggert wird.

                    Kannst Du eventuell mal die Datenpunkte von dem "Burglar" liefern? (Screenshot)

                    Rantanplan

                    CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                    1 Antwort Letzte Antwort
                    0
                    • M Offline
                      M Offline
                      marphDE
                      schrieb am zuletzt editiert von
                      #10

                      Achso Licht geht übrigens aus.

                      Da ist irgendwo Scriptseitig eine Un-Logik in der Logik vorhanden. :lol:

                      Er schaltet ja auch fein brav ein aus geht auch nach dem im Script voreingestellten Timeout aus.

                      Allerdings berücksichtigt er dabei die manuellen Schaltungen (Sonos spielt bereits etwas ab und soll weder umgeschalten noch ausgeschalten werden, auch wenn keine Bewegung vorhanden ist und es nicht in der Zeit von 4:35 - 22.00 Uhr ist.

                      Lampe soll ja auch anbleiben sofern sie vor Bewegung an war (auch wenn unter angegebener Helligkeit).

                      Hier der Screenshot: Burglar springt hoch wenn Bewegung registriert wurde und nach eingestellter Abklingzeit geht er auf 0 wenn keine Bewegung mehr vorhanden ist.

                      4060_bildschirmfoto_2018-01-17_um_18.41.53.png

                      javascript.0	2018-01-17 19:05:28.388	info	script.js.Bad.Bewegungsmelder: setTimeout(ms=120000)
                      javascript.0	2018-01-17 19:05:28.388	info	script.js.Bad.Bewegungsmelder: Sonos Stop ! - Keine Bedingung wurde erfüllt
                      javascript.0	2018-01-17 19:05:28.388	info	script.js.Bad.Bewegungsmelder: getState(id=zwave.0.NODE2.ALARM.Burglar_1, timerId=0) => {"val":0,"ack":true,"ts":1516212328383,"q":0,"from":"system.adapter.zwave.0","lc":1516212328383}
                      javascript.0	2018-01-17 19:05:28.388	info	script.js.Bad.Bewegungsmelder: clearTimeout() => cleared
                      javascript.0	2018-01-17 19:05:28.388	info	script.js.Bad.Bewegungsmelder: setTimeout(ms=120000)
                      javascript.0	2018-01-17 19:05:28.388	info	script.js.Bad.Bewegungsmelder: Bewegungsmelder-Bedingungen nicht erfüllt...schalte Licht aus
                      javascript.0	2018-01-17 19:05:28.388	info	script.js.Bad.Bewegungsmelder: getState(id=zwave.0.NODE2.ALARM.Burglar_1, timerId=0) => {"val":0,"ack":true,"ts":1516212328383,"q":0,"from":"system.adapter.zwave.0","lc":1516212328383}
                      javascript.0	2018-01-17 19:05:28.388	info	script.js.Bad.Bewegungsmelder: getState(id=zwave.0.NODE2.ALARM.Burglar_1, timerId=0) => {"val":0,"ack":true,"ts":1516212328383,"q":0,"from":"system.adapter.zwave.0","lc":1516212328383}
                      javascript.0	2018-01-17 19:05:28.388	info	script.js.Bad.Bewegungsmelder: getState(id=zwave.0.NODE2.SENSOR_MULTILEVEL.Luminance_1, timerId=0) => {"val":0,"ack":true,"ts":1516211851840,"q":0,"from":"system.adapter.zwave.0","lc":1516203423068}
                      javascript.0	2018-01-17 19:05:28.387	info	script.js.Bad.Bewegungsmelder: Bewegungsmelder ausgelöst.
                      javascript.0	2018-01-17 19:05:03.794	info	script.js.Bad.Bewegungsmelder: setTimeout(ms=120000)
                      javascript.0	2018-01-17 19:05:03.794	info	script.js.Bad.Bewegungsmelder: Sonos Stop ! - Keine Bedingung wurde erfüllt
                      javascript.0	2018-01-17 19:05:03.794	info	script.js.Bad.Bewegungsmelder: getState(id=sonos.0.root.10_0_0_61.state, timerId=0) => {"val":"play","ack":true,"ts":1516212300333,"q":0,"from":"system.adapter.sonos.0","lc":1516212273204}
                      javascript.0	2018-01-17 19:05:03.794	info	script.js.Bad.Bewegungsmelder: getState(id=zwave.0.NODE2.ALARM.Burglar_1, timerId=0) => {"val":8,"ack":true,"ts":1516212303786,"q":0,"from":"system.adapter.zwave.0","lc":1516212303786}
                      javascript.0	2018-01-17 19:05:03.794	info	script.js.Bad.Bewegungsmelder: clearTimeout() => cleared
                      javascript.0	2018-01-17 19:05:03.794	info	script.js.Bad.Bewegungsmelder: getState(id=zwave.0.NODE2.ALARM.Burglar_1, timerId=0) => {"val":8,"ack":true,"ts":1516212303786,"q":0,"from":"system.adapter.zwave.0","lc":1516212303786}
                      javascript.0	2018-01-17 19:05:03.793	info	script.js.Bad.Bewegungsmelder: getState(id=hue.0.Philips_hue.Regal_Bad.on, timerId=0) => {"val":true,"ack":true,"ts":1516212277406,"q":0,"from":"system.adapter.hue.0","lc":1516212273193}
                      javascript.0	2018-01-17 19:05:03.793	info	script.js.Bad.Bewegungsmelder: getState(id=zwave.0.NODE2.ALARM.Burglar_1, timerId=0) => {"val":8,"ack":true,"ts":1516212303786,"q":0,"from":"system.adapter.zwave.0","lc":1516212303786}
                      javascript.0	2018-01-17 19:05:03.793	info	script.js.Bad.Bewegungsmelder: getState(id=zwave.0.NODE2.SENSOR_MULTILEVEL.Luminance_1, timerId=0) => {"val":0,"ack":true,"ts":1516211851840,"q":0,"from":"system.adapter.zwave.0","lc":1516203423068}
                      javascript.0	2018-01-17 19:05:03.793	info	script.js.Bad.Bewegungsmelder: clearTimeout() => cleared
                      javascript.0	2018-01-17 19:05:03.793	info	script.js.Bad.Bewegungsmelder: Bewegungsmelder ausgelöst.
                      
                      
                      1 Antwort Letzte Antwort
                      0
                      • BBTownB Offline
                        BBTownB Offline
                        BBTown
                        schrieb am zuletzt editiert von
                        #11

                        kannst Du bitte einmal erklären:

                        • woran erkennst du dass die SONOS bereits läuft?

                        • woran erkennst Du dass die Lampe bereits eingeschaltet ist?

                        • bei welchen Bedingungen sollen sowohl Licht als auch die SONOS wieder ausgehen?

                        • immer nach 2 Minuten sofern diese durch den Bewegungsmelder eingeschaltet wurden?

                        • sofern Lampe und/oder SONOS bereits bei "Bewegung erkannt" eingeschaltet waren, soll dann das Ausschalten manuell erfolgen?

                        ioBroker auf NUC (VM debian v13 (Trixie ), node v22.21.0 npm v10.9.4, js-controller v7.1.0 jsonl/jsonl / HomeMatic CCU-2 (Wired und Funk) / Philips HUE / echo.DOT / Broadlink RM pro / SONOS

                        1 Antwort Letzte Antwort
                        0
                        • M Offline
                          M Offline
                          marphDE
                          schrieb am zuletzt editiert von
                          #12

                          Hallo BBTown,

                          wenn ich den Status der Objekte des Sonos ansehe, steht doch da ob Play, Pause, Stop -> true oder false.

                          Soweit habe ich auch ohne Schalter ja sonst keine Möglichkeit das anders auszuwerten.

                          Ausgehen sollen Licht sowie Sonos nach dem Timeout nur dann, wenn keine Bewegung registriert wird und Lampe sowie Sonos nicht bereits vorher schon liefen (weil ich eben mal nicht bloß kurz in's Bad gehe sondern vielleicht auch mal länger ein Entspannungsbad nehmen möchte).

                          Immer dann nach im Script eingestellten Timeout wenn keine Bewegung für eine gewisse (wenn möglich variable Zeit) erfolgt ist.

                          Zudem soll der SONOS natürlich nur innerhalb der Zeit zwischen 4.35 und 22 Uhr immer angehen (bei Bewegung) wenn er nicht vorher sowieso schon etwas abspielt (dann soll er daran auch nix ändern).

                          Beim Licht soll dann auch noch Luminance(Lux) vom Sensor mit einbezogen sein um Tagsüber nicht unnötig das Licht einzuschalten.

                          1 Antwort Letzte Antwort
                          0
                          • BBTownB Offline
                            BBTownB Offline
                            BBTown
                            schrieb am zuletzt editiert von
                            #13

                            das wäre mein Ansatz, wobei ich nicht 100%ig sicher bin ob "Löschen falls läuft" für die Erneuerung der 2 Minuten bei erneuter Bewegung ausreicht?!

                            Da könnte ggf. @rantanplan unterstützen bzgl. zusätzlicher timeouts zu den "Verzögerungen"
                            1917_sonosundlicht.jpg

                            ioBroker auf NUC (VM debian v13 (Trixie ), node v22.21.0 npm v10.9.4, js-controller v7.1.0 jsonl/jsonl / HomeMatic CCU-2 (Wired und Funk) / Philips HUE / echo.DOT / Broadlink RM pro / SONOS

                            1 Antwort Letzte Antwort
                            0
                            • rantanplanR Offline
                              rantanplanR Offline
                              rantanplan
                              schrieb am zuletzt editiert von
                              #14

                              @BBTown:

                              das wäre mein Ansatz, wobei ich nicht 100%ig sicher bin ob "Löschen falls läuft" für die Erneuerung der 2 Minuten bei erneuter Bewegung ausreicht?! `
                              Ja, das geht. Die Zeit wird dann jeweils um 2 Min. verlängert.

                              Nach Ablauf der 2 Minuten werden die Befehle aber fast "gleichzeitig" abgefeuert.

                              Keine Ahnung ob SONOS sich dabei "verschluckt".

                              Rantanplan

                              CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                              1 Antwort Letzte Antwort
                              0
                              • M Offline
                                M Offline
                                marphDE
                                schrieb am zuletzt editiert von
                                #15

                                Danke, werde ich morgen mal probieren und dann berichten :D

                                1 Antwort Letzte Antwort
                                0
                                • BBTownB Offline
                                  BBTownB Offline
                                  BBTown
                                  schrieb am zuletzt editiert von
                                  #16

                                  @rantanplan:

                                  Nach Ablauf der 2 Minuten werden die Befehle aber fast "gleichzeitig" abgefeuert.

                                  Keine Ahnung ob SONOS sich dabei "verschluckt". ` Das ist bei mir (in Verbindung mit 7 SONOS Geräten) bisher völlig unkritisch.

                                  Wobei ich einen etwas anderen Weg gehe da ich über Alexa auch den Party-Modus steuere (alle SONOS in einer Gruppe spielen die gleiche Musik).

                                  Ich habe ein separates Script welches alle meine SONOS überwacht.

                                  Sofern bei einem SONOS die Lautstärke sich auf "> 1" ändert, wird über das Script für den/das SONOS Gerät folgendes gesetzt:

                                  mute = false

                                  play = true

                                  stop = false

                                  state = "play"

                                  Ändert sich die Lautstärke eines/mehrerer SONOS auf "< 2", dann wird im umgekehrten Fall folgendes je Gerät gesetzt:

                                  play = false

                                  stop = true

                                  state = "stop"

                                  Somit benötige ich im Script für die Lichtschaltung im Bad bsp. nur den Befehl "SONOS Lautstärke = 20" und beim Ausschalten "SONOS Lautstärke = 0" anzugeben alles andere wird automatisch durch das generische Script geschaltet. Das hält meine anderen Scripte sehr übersichtlich.

                                  Das Java-Script stammt von "pix" und ist auch in meinem http://forum.iobroker.net/viewtopic.php?f=37&t=7395 enthalten.

                                  ! ````
                                  /* Alexa_Sonos_schalten
                                  ! reagiert auf Lautstärkeänderungen
                                  Alexa Smartname zeigt auf .volume
                                  Sonos-Adapter Version 1.6.0 voraus!
                                  ! http://forum.iobroker.net/viewtopic.php?f=37&p=75526#p75526
                                  ! 15.07.2017 erstellt von pix nach Idee von BBTown
                                  16.07.2017 Quelle zugefügt
                                  */
                                  const logging = true;
                                  ! // sonos.0.root.XXX_XXX_XXX_XXX.volume
                                  var regex_vol = /^sonos.[0-9].root.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)_(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).volume$/;
                                  ! on({
                                  id: regex_vol,
                                  change: 'ne'
                                  }, function(data) {
                                  var pfad = getIdByName(data.channelName);
                                  if (logging) log(data.channelName + ' (' + pfad + '.' + data.name + ') Lautstärke auf ' + data.state.val + '% geändert');
                                  if (data.state.val >= 2) {
                                  setState(pfad + '.muted', false);
                                  setState(pfad + '.state', 'play');
                                  setState(pfad + '.play', true);
                                  setState(pfad + '.stop', false);
                                  }
                                  if (data.state.val < 2) {
                                  setState(pfad + '.state', 'stop');
                                  setState(pfad + '.play', false);
                                  setState(pfad + '.stop', true);
                                  }
                                  });

                                  ioBroker auf NUC (VM debian v13 (Trixie ), node v22.21.0 npm v10.9.4, js-controller v7.1.0 jsonl/jsonl / HomeMatic CCU-2 (Wired und Funk) / Philips HUE / echo.DOT / Broadlink RM pro / SONOS

                                  1 Antwort Letzte Antwort
                                  0
                                  • M Offline
                                    M Offline
                                    marphDE
                                    schrieb am zuletzt editiert von
                                    #17

                                    ich habe das Blockly von BBTown mal nachgebaut, funktioniert auch soweit, bis auf eine Ausnahme.

                                    Die Musik und das Licht gehen trotz Bewegung aus lassen sich wie es mir scheint auch vor Ablauf des Timeouts nicht wieder einschalten. Obwohl der Sensor schon etwas registriert.

                                    1 Antwort Letzte Antwort
                                    0
                                    • rantanplanR Offline
                                      rantanplanR Offline
                                      rantanplan
                                      schrieb am zuletzt editiert von
                                      #18

                                      Dann mach doch mal eine Screenshot, besser noch eine Export.

                                      So kann man nur raten.

                                      Rantanplan

                                      CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                      1 Antwort Letzte Antwort
                                      0
                                      • M Offline
                                        M Offline
                                        marphDE
                                        schrieb am zuletzt editiert von
                                        #19

                                        Ok, habe das Verhalten nochmal getestet er schaltet nach Timeout ab, allerdings selbst wenn ich vor dem Bewegungsmelder quer durch den Raum umherlaufe geht die Lampe und das Radio trotzdem nicht an.

                                        Erst nach einer Weile wenn ich den Raum verlasse und eine bissen warte bevor ich ihn betrete, geht es wieder.

                                        Komisch, eigentlich sollte er das Abschalten ja eigentlich außer Kraft setzen bzw. den Timeout verlängern so lange Bewegungen erfolgen.

                                        Achja der Sensor erkennt aber auch Bewegungen (kann ich in den Objekten sehen), also liegt es nicht daran das nix angeschaltet wird.

                                        Export:

                                        ! ````
                                        ! <xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="~_jTRd2uEjv6BtxPG%fx" x="-13" y="13"><mutation items="1"></mutation>
                                        <field name="CONDITION">ne</field>

                                        <value name="OID0"><shadow type="field_oid" id="g54nI7K}1QilT[uDuw|^"><field name="oid">zwave.0.NODE2.ALARM.Burglar_1</field></shadow></value> 
                                        <statement name="STATEMENT"><block type="controls_if" id="mR`+!yPdR6x#HZIUOGB]"><value name="IF0"><block type="logic_compare" id=",(1+%Q#FS=,;J[.8MUf)"><field name="OP">GT</field>
                                                <value name="A"><block type="get_value" id="}NMjHF,YZy#H?JmqV/{s"><field name="ATTR">val</field>
                                                    <field name="OID">zwave.0.NODE2.ALARM.Burglar_1</field></block></value> 
                                                <value name="B"><block type="math_number" id="EqNu{/|gvV#BjB6sq2!U"><field name="NUM">0</field></block></value></block></value> 
                                            <statement name="DO0"><block type="controls_if" id="r(n(?1ooC@}*dg.hb.^("><value name="IF0"><block type="logic_operation" id="8x/85[6ht1Wp?=C^Bbb]"><field name="OP">AND</field>
                                                    <value name="A"><block type="time_compare" id="FXx1B]c4%R8#[h:Q+qCt"><mutation end_time="false"></mutation>
                                                        <field name="OPTION">>=</field>
                                                        <field name="START_TIME">18:00</field></block></value> 
                                                    <value name="B"><block type="time_compare" id="W0L,nK%HQ+*:y]Pkw(E)"><mutation end_time="false"></mutation>
                                                        <field name="OPTION"><</field>
                                                        <field name="START_TIME">22:00</field></block></value></block></value> 
                                                <statement name="DO0"><block type="controls_if" id="|6yqMrq{ljIAzuAyMXT2"><value name="IF0"><block type="logic_compare" id=";:;uyP_6||mFe-),la/0"><field name="OP">NEQ</field>
                                                        <value name="A"><block type="get_value" id="tnX,zOR3cMUH:~@pn3LU"><field name="ATTR">val</field>
                                                            <field name="OID">sonos.0.root.10_0_0_61.state</field></block></value> 
                                                        <value name="B"><block type="text" id="DEb[(D8PC}S8E8Zjj!NV"><field name="TEXT">play</field></block></value></block></value> 
                                                    <statement name="DO0"><block type="control" id="XB/H3U!K90wtF[7|vbQ9"><mutation delay_input="false"></mutation>
                                                        <field name="OID">sonos.0.root.10_0_0_61.volume</field>
                                                        <field name="WITH_DELAY">FALSE</field>
                                                        <value name="VALUE"><block type="math_number" id="(mhD+dAVVQVFv%YJTSoD"><field name="NUM">12</field></block></value> 
                                                        <next><block type="control" id="nl98VkAw|z,C(emzqnj!"><mutation delay_input="false"></mutation>
                                                            <field name="OID">sonos.0.root.10_0_0_61.state</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE"><block type="text" id="+vXq}[4M]dA+)4i@3z%]"><field name="TEXT">play</field></block></value> 
                                                            <next><block type="control" id="OkL0pgQZ9`AJjQSPW#hH"><mutation delay_input="false"></mutation>
                                                                <field name="OID">sonos.0.root.10_0_0_61.favorites_set</field>
                                                                <field name="WITH_DELAY">FALSE</field>
                                                                <value name="VALUE"><block type="text" id="8|r]Y/R+ek~x#31fIu,P"><field name="TEXT">94.3 RS2</field></block></value> 
                                                                <next><block type="control" id="qQ;MkWLC:,z,R5!S0wa."><mutation delay_input="false"></mutation>
                                                                    <field name="OID">sonos.0.root.10_0_0_61.stop</field>
                                                                    <field name="WITH_DELAY">FALSE</field>
                                                                    <value name="VALUE"><block type="logic_boolean" id="aZojuBdcU[bwg:4e2qyF"><field name="BOOL">FALSE</field></block></value> 
                                                                    <next><block type="control" id="iq0Sb}MvKL^iu:eM{`/y"><mutation delay_input="false"></mutation>
                                                                        <field name="OID">sonos.0.root.10_0_0_61.play</field>
                                                                        <field name="WITH_DELAY">FALSE</field>
                                                                        <value name="VALUE"><block type="logic_boolean" id="[Z`0CFHd?tS?dPg!LQi8"><field name="BOOL">TRUE</field></block></value> 
                                                                        <next><block type="control" id="6buX@Sdq!ibXvl94Upi,"><mutation delay_input="true"></mutation>
                                                                            <field name="OID">sonos.0.root.10_0_0_61.state</field>
                                                                            <field name="WITH_DELAY">TRUE</field>
                                                                            <field name="DELAY_MS">5</field>
                                                                            <field name="UNIT">min</field>
                                                                            <field name="CLEAR_RUNNING">TRUE</field>
                                                                            <value name="VALUE"><block type="text" id="@WZWY+M@Gt;BG|p=1nzk"><field name="TEXT">stop</field></block></value> 
                                                                            <next><block type="control" id="v7b2,e:fQG!bAI1;?6;}"><mutation delay_input="true"></mutation>
                                                                                <field name="OID">sonos.0.root.10_0_0_61.stop</field>
                                                                                <field name="WITH_DELAY">TRUE</field>
                                                                                <field name="DELAY_MS">5</field>
                                                                                <field name="UNIT">min</field>
                                                                                <field name="CLEAR_RUNNING">TRUE</field>
                                                                                <value name="VALUE"><block type="logic_boolean" id="5W%zBmmorL.Yw(Rq0dT9"><field name="BOOL">TRUE</field></block></value> 
                                                                                <next><block type="control" id="r?~AGLc9![dhMQ#P!GUt"><mutation delay_input="true"></mutation>
                                                                                    <field name="OID">sonos.0.root.10_0_0_61.play</field>
                                                                                    <field name="WITH_DELAY">TRUE</field>
                                                                                    <field name="DELAY_MS">5</field>
                                                                                    <field name="UNIT">min</field>
                                                                                    <field name="CLEAR_RUNNING">TRUE</field>
                                                                                    <value name="VALUE"><block type="logic_boolean" id="z^?F.0o4/K-iK_Ey/;%k"><field name="BOOL">FALSE</field></block></value></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block></statement> 
                                                <next><block type="controls_if" id="g]X2ch:E`b5r~fWTf_uH"><value name="IF0"><block type="logic_compare" id="ka@,mcr|HqLDmoz)!M=="><field name="OP">LT</field>
                                                        <value name="A"><block type="get_value" id="T{:U-zon~czyj9n|e![a"><field name="ATTR">val</field>
                                                            <field name="OID">zwave.0.NODE2.SENSOR_MULTILEVEL.Luminance_1</field></block></value> 
                                                        <value name="B"><block type="math_number" id="cLpWZSzugm|}d5q|cV[J"><field name="NUM">8</field></block></value></block></value> 
                                                    <statement name="DO0"><block type="controls_if" id="ENf_66UQK0e%V~!(`j0v"><value name="IF0"><block type="logic_compare" id="}5w|SRh7[G;Ib}51C!}N"><field name="OP">EQ</field>
                                                            <value name="A"><block type="get_value" id="]npCfa)JM9l)15%ZPJw?"><field name="ATTR">val</field>
                                                                <field name="OID">hue.0.Philips_hue.Regal_Bad.on</field></block></value> 
                                                            <value name="B"><block type="logic_boolean" id="74TgnKyM,3/P`wo]9sh/"><field name="BOOL">FALSE</field></block></value></block></value> 
                                                        <statement name="DO0"><block type="control" id="G=qPrmHO5l+z^ZJE),L%"><mutation delay_input="false"></mutation>
                                                            <field name="OID">hue.0.Philips_hue.Regal_Bad.on</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE"><block type="logic_boolean" id=".#=F^vP7ok^u}8eq]a-#"><field name="BOOL">TRUE</field></block></value> 
                                                            <next><block type="control" id="[[!wWvXc~6!UX4WMU6N~"><mutation delay_input="true"></mutation>
                                                                <field name="OID">hue.0.Philips_hue.Regal_Bad.on</field>
                                                                <field name="WITH_DELAY">TRUE</field>
                                                                <field name="DELAY_MS">5</field>
                                                                <field name="UNIT">min</field>
                                                                <field name="CLEAR_RUNNING">TRUE</field>
                                                                <value name="VALUE"><block type="logic_boolean" id="h*ei|yucD)K}rUfzUvl1"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></statement></block></next></block></statement></block></statement></block></xml> 
                                        

                                        ! ````

                                        4060_bildschirmfoto_2018-01-19_um_19.32.41.png
                                        4060_bildschirmfoto_2018-01-19_um_19.33.05.png

                                        1 Antwort Letzte Antwort
                                        0
                                        • rantanplanR Offline
                                          rantanplanR Offline
                                          rantanplan
                                          schrieb am zuletzt editiert von
                                          #20

                                          @marphDE:

                                          Achja der Sensor erkennt aber auch Bewegungen (kann ich in den Objekten sehen), also liegt es nicht daran das nix angeschaltet wird. `
                                          Wahrscheinlich ist das so ein "komischer" BM der die Bewegungserkennung immer auf "true" hat.

                                          Oder schaltet der auch irgendwann wieder auf "false"?

                                          Wenn nicht, musst Du auf "aktualisiert" triggern.

                                          Das Script habe ich mir noch nicht angesehen.

                                          Grüße

                                          Rantanplan

                                          CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                          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

                                          591

                                          Online

                                          32.6k

                                          Benutzer

                                          82.0k

                                          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