Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Fenster offen Ausgabe mit Alexa

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Fenster offen Ausgabe mit Alexa

    This topic has been deleted. Only users with topic management privileges can see it.
    • Sanweb
      Sanweb @dslraser last edited by

      @dslraser Hat super funktioniert, habe jedoch bei Deinem Beispiel den ersten Block "setzte offene_fenster_liste" entfernt, da es aus meiner Sicht keinen Sinn machte, eine Liste vor dem Trigger zu erstellen und wenn der Trigger eintritt, noch einmal eine Liste zu erstellen. Sollte es einen Sinn machen, würde ich um kurze Info/Belehrung bitten wollen, wobei die Entfernung in der Praxis zumindest bei mir keinen Nachteil zeigte ...

      dslraser 1 Reply Last reply Reply Quote 0
      • dslraser
        dslraser Forum Testing Most Active @Sanweb last edited by dslraser

        @Sanweb
        Ja, die außerhalb vom Trigger kann weg.

        1 Reply Last reply Reply Quote 0
        • buggybeast
          buggybeast @Sanweb last edited by

          @Sanweb sagte in Fenster offen Ausgabe mit Alexa:

          Man kann sie alle oder einzelene schließen, das Ergebniss ist stets, das alle Fenster angeblich alle geschlossen sind, obwohl sie offen sind

          Ist jetzt zwar gelöst, aber wurmt mich grad etwas, da ich einfach spontan keinen Fehler sehe 😉
          Ist Dein Objekt OpenClose 6 open auch ein Boolean? Oder hat der Sensor Zahlenwerte?

          Sanweb 1 Reply Last reply Reply Quote 0
          • Sanweb
            Sanweb @buggybeast last edited by Sanweb

            @buggybeast Der Sensor gibt wahr/falsch zurück, wobei Dein Script fand ich auch sehr schick, allein von der sprachlichen Syntax Widedergabe durch Alexa, fließend und nicht merklich stumpf aufgezählt ... 🙂 Wüd's gern auch zum laufen bringen wollen ... 🙂

            buggybeast 1 Reply Last reply Reply Quote 0
            • buggybeast
              buggybeast @Sanweb last edited by buggybeast

              @Sanweb Hi ich habe das mal getestet. Da ich kein Alexa habe, hab ich halt Debug Outputs eingebaut. Außerdem geben meine HmIP Fenstersensoren 0(geschlossen) und 1(offen) zurück. Das Skript hat bei mir jetzt sauber funktioniert. Ich glaube mein Fehler war, dass ich die Variable sprachausgabe zweimal erstellt habe, einmal als Variable im Skript und einmal als Parameter in der Funktion. Das hat es dann versaut 😁
              Wenn Du Lust hast, versuch es mal mit Alexa ...
              Bildschirmfoto 2020-08-16 um 11.57.56.png
              Hier mal die Logeinträge dazu:
              Bildschirmfoto 2020-08-16 um 12.03.38.png

              dslraser 1 Reply Last reply Reply Quote 0
              • dslraser
                dslraser Forum Testing Most Active @buggybeast last edited by dslraser

                @buggybeast

                Funktioniert so (nur drann denken, falls es zu viele Fenster/Türen sind, die Sprachausgabe durch Semikolons zu trennen --- 250 Zeichen Grenze bei der Sprachausgabe)

                Hier mal mit 4 Türen als "Test" (ohne Trennung, ist bei 4 Türen nicht nötig)

                <xml xmlns="https://developers.google.com/blockly/xml">
                 <variables>
                   <variable id="iL31k6[AbuD2k}Sf:(40">text</variable>
                   <variable id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</variable>
                 </variables>
                 <block type="comment" id="^uAkx?ibg2sC4VnX}y-u" x="-87" y="-38">
                   <field name="COMMENT">Türen</field>
                   <next>
                     <block type="on_ext" id="k*|=+=bhvqoY_SVu`o{i">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" items="4"></mutation>
                       <field name="CONDITION">ne</field>
                       <field name="ACK_CONDITION"></field>
                       <value name="OID0">
                         <shadow type="field_oid" id="60g#Cg`(+Lm;A16/E=Hg">
                           <field name="oid">alias.0.Tueren.Haustuer</field>
                         </shadow>
                       </value>
                       <value name="OID1">
                         <shadow type="field_oid" id="_+9yC(mZK$erT2Fmtk@~">
                           <field name="oid">alias.0.Tueren.Schlafzimmertuer</field>
                         </shadow>
                       </value>
                       <value name="OID2">
                         <shadow type="field_oid" id="fN3GFOxrL8)+X?}_;CAZ">
                           <field name="oid">alias.0.Tueren.Terrassentuer</field>
                         </shadow>
                       </value>
                       <value name="OID3">
                         <shadow type="field_oid" id="+dQO:eBG#Bk*wI_nYM.U">
                           <field name="oid">alias.0.Tueren.Wohnzimmertuer</field>
                         </shadow>
                       </value>
                       <statement name="STATEMENT">
                         <block type="variables_set" id="Z?Nq@wY%UazK4OM4L[;p">
                           <field name="VAR" id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</field>
                           <value name="VALUE">
                             <block type="text" id="B53x97^iK!g{U`|~Eq3d">
                               <field name="TEXT"></field>
                             </block>
                           </value>
                           <next>
                             <block type="controls_if" id="KdE`F[E0(A-@m#oLQ{{B">
                               <value name="IF0">
                                 <block type="logic_compare" id="p{0@H#y?PkJ[.Dw4h!PY">
                                   <field name="OP">EQ</field>
                                   <value name="A">
                                     <block type="get_value" id="OIDdQ-{n||FQXw~9-oFo">
                                       <field name="ATTR">val</field>
                                       <field name="OID">alias.0.Tueren.Haustuer</field>
                                     </block>
                                   </value>
                                   <value name="B">
                                     <block type="math_number" id="D%5VaFpzkeH!-3everAR">
                                       <field name="NUM">1</field>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                               <statement name="DO0">
                                 <block type="procedures_callnoreturn" id="9r])q*$~[GIbjPM/C{G.">
                                   <mutation name="satz_ergaenzen">
                                     <arg name="text"></arg>
                                   </mutation>
                                   <value name="ARG0">
                                     <block type="text" id="97]Wvri4i7g3qS)|3CZ6">
                                       <field name="TEXT">Haustür</field>
                                     </block>
                                   </value>
                                 </block>
                               </statement>
                               <next>
                                 <block type="controls_if" id="uyaZ!rT(%e%Orp6zAf5q">
                                   <value name="IF0">
                                     <block type="logic_compare" id="?AKbcD*N.F{WOL$UYXMa">
                                       <field name="OP">EQ</field>
                                       <value name="A">
                                         <block type="get_value" id="*9_*zpt#CybHRvnFN?+Q">
                                           <field name="ATTR">val</field>
                                           <field name="OID">alias.0.Tueren.Schlafzimmertuer</field>
                                         </block>
                                       </value>
                                       <value name="B">
                                         <block type="math_number" id="8`h(b75~~anCH0Eg(`e?">
                                           <field name="NUM">1</field>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <statement name="DO0">
                                     <block type="procedures_callnoreturn" id="BMmmZwL3gX^%eVq)tTxt">
                                       <mutation name="satz_ergaenzen">
                                         <arg name="text"></arg>
                                       </mutation>
                                       <value name="ARG0">
                                         <block type="text" id="x4!!F4Z^c|}pH:h)h)Wl">
                                           <field name="TEXT">Schlafzimmertür</field>
                                         </block>
                                       </value>
                                     </block>
                                   </statement>
                                   <next>
                                     <block type="controls_if" id="dVB66xCHii)wTxdJ,}o#">
                                       <value name="IF0">
                                         <block type="logic_compare" id="*o]ka:.H1SME]RGRo3bU">
                                           <field name="OP">EQ</field>
                                           <value name="A">
                                             <block type="get_value" id="W_y}uwW6FliwHC:MSlB}">
                                               <field name="ATTR">val</field>
                                               <field name="OID">alias.0.Tueren.Terrassentuer</field>
                                             </block>
                                           </value>
                                           <value name="B">
                                             <block type="math_number" id=")[Xuq_bU^4A0W_mMDs@7">
                                               <field name="NUM">1</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <statement name="DO0">
                                         <block type="procedures_callnoreturn" id="7l:=c!:wb,(r,%5Y(ZZ{">
                                           <mutation name="satz_ergaenzen">
                                             <arg name="text"></arg>
                                           </mutation>
                                           <value name="ARG0">
                                             <block type="text" id="zQ}3~RM_5=Xo88{XE7#L">
                                               <field name="TEXT">Terrassentür</field>
                                             </block>
                                           </value>
                                         </block>
                                       </statement>
                                       <next>
                                         <block type="controls_if" id="CsduYmfyv^:r^z4E!7Qr">
                                           <value name="IF0">
                                             <block type="logic_compare" id="!A/E}7/8T+bTbS=IeQXq">
                                               <field name="OP">EQ</field>
                                               <value name="A">
                                                 <block type="get_value" id="d)B,*]a-{lw2Mklj_TOk">
                                                   <field name="ATTR">val</field>
                                                   <field name="OID">alias.0.Tueren.Wohnzimmertuer</field>
                                                 </block>
                                               </value>
                                               <value name="B">
                                                 <block type="math_number" id="7LQOe,RQAz7UylSh=Yz;">
                                                   <field name="NUM">1</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <statement name="DO0">
                                             <block type="procedures_callnoreturn" id="#M_=T)1nZL^0D,571-8D">
                                               <mutation name="satz_ergaenzen">
                                                 <arg name="text"></arg>
                                               </mutation>
                                               <value name="ARG0">
                                                 <block type="text" id="*ax%2,;*$o*KvmH^.T;_">
                                                   <field name="TEXT">Wohnzimmertür</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </statement>
                                           <next>
                                             <block type="controls_if" id="H`I/op=(Q/P/SntZX%//">
                                               <mutation else="1"></mutation>
                                               <value name="IF0">
                                                 <block type="logic_compare" id="7nh=9h?sZ87{XZ.Bh9Yv">
                                                   <field name="OP">NEQ</field>
                                                   <value name="A">
                                                     <block type="variables_get" id="p59,kJ22T{VTF[O[3xA[">
                                                       <field name="VAR" id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</field>
                                                     </block>
                                                   </value>
                                                   <value name="B">
                                                     <block type="text" id="`!AzoI6Wa2ex}2??RPjl">
                                                       <field name="TEXT"></field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <statement name="DO0">
                                                 <block type="variables_set" id="hEov}R`)BlUC?731IRV1">
                                                   <field name="VAR" id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</field>
                                                   <value name="VALUE">
                                                     <block type="text_join" id="8DFBM*dFyOm=V;mXPu=p">
                                                       <mutation items="3"></mutation>
                                                       <value name="ADD0">
                                                         <block type="text" id="tKT$ej4L),hM,cBr!*CA">
                                                           <field name="TEXT">Die </field>
                                                         </block>
                                                       </value>
                                                       <value name="ADD1">
                                                         <block type="variables_get" id="yG*P?+e:Hds)SsK2VKut">
                                                           <field name="VAR" id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</field>
                                                         </block>
                                                       </value>
                                                       <value name="ADD2">
                                                         <block type="text" id="9_x|OuyVi!{-#CF8|?(}">
                                                           <field name="TEXT"> ist noch offen</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="control_ex" id="BPc4P*k#H3KsZXA%(f}n">
                                                       <field name="TYPE">false</field>
                                                       <field name="CLEAR_RUNNING">FALSE</field>
                                                       <value name="OID">
                                                         <shadow type="field_oid" id="B+SmXbIE/X?`1-bTS4*3">
                                                           <field name="oid">alexa2.0.Echo-Devices.XXXCommands.speak-volume</field>
                                                         </shadow>
                                                       </value>
                                                       <value name="VALUE">
                                                         <shadow type="logic_boolean" id="au_InF-,SWD8(L!wn@tV">
                                                           <field name="BOOL">TRUE</field>
                                                         </shadow>
                                                         <block type="math_number" id=")@?~_euJv.x}$bPDB#sL">
                                                           <field name="NUM">80</field>
                                                         </block>
                                                       </value>
                                                       <value name="DELAY_MS">
                                                         <shadow type="math_number" id="DXup=-Al=5`U+SiEQFTz">
                                                           <field name="NUM">0</field>
                                                         </shadow>
                                                       </value>
                                                       <next>
                                                         <block type="control_ex" id="whE*BYJz-l:d;5;{59=%">
                                                           <field name="TYPE">false</field>
                                                           <field name="CLEAR_RUNNING">TRUE</field>
                                                           <value name="OID">
                                                             <shadow type="field_oid" id="|BAp`le2(D5wi$/9qc{w">
                                                               <field name="oid">alexa2.0.Echo-Devices.XXX.Commands.speak</field>
                                                             </shadow>
                                                           </value>
                                                           <value name="VALUE">
                                                             <shadow type="logic_boolean" id="Gk!oJXId4-2~@^|$F-zJ">
                                                               <field name="BOOL">TRUE</field>
                                                             </shadow>
                                                             <block type="variables_get" id="iih7x0|4KG2IuBxfzU^O">
                                                               <field name="VAR" id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</field>
                                                             </block>
                                                           </value>
                                                           <value name="DELAY_MS">
                                                             <shadow type="math_number" id="w{Q:Wm`%;uYKa]T!qw({">
                                                               <field name="NUM">500</field>
                                                             </shadow>
                                                           </value>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </statement>
                                               <statement name="ELSE">
                                                 <block type="variables_set" id="+tIUBNrYijBT|*~(4c4Z">
                                                   <field name="VAR" id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</field>
                                                   <value name="VALUE">
                                                     <block type="text" id="Y;[4fKRX]lGOI6=w?8Zm">
                                                       <field name="TEXT">Alle Türen sind geschlossen. </field>
                                                     </block>
                                                   </value>
                                                   <next>
                                                     <block type="control_ex" id="[y;9@YOJ2xV^s2d2/,GZ">
                                                       <field name="TYPE">false</field>
                                                       <field name="CLEAR_RUNNING">FALSE</field>
                                                       <value name="OID">
                                                         <shadow type="field_oid" id="[6h0Q#o)`*nq8sf/Pd{e">
                                                           <field name="oid">alexa2.0.Echo-Devices.XXX.Commands.speak-volume</field>
                                                         </shadow>
                                                       </value>
                                                       <value name="VALUE">
                                                         <shadow type="logic_boolean">
                                                           <field name="BOOL">TRUE</field>
                                                         </shadow>
                                                         <block type="math_number" id="TOOEknsZgBb)m)3A!pag">
                                                           <field name="NUM">80</field>
                                                         </block>
                                                       </value>
                                                       <value name="DELAY_MS">
                                                         <shadow type="math_number" id="z[dfO.8n@[I}+xu:xLdI">
                                                           <field name="NUM">0</field>
                                                         </shadow>
                                                       </value>
                                                       <next>
                                                         <block type="control_ex" id="rGWjne/{+dL47W6itVRV">
                                                           <field name="TYPE">false</field>
                                                           <field name="CLEAR_RUNNING">TRUE</field>
                                                           <value name="OID">
                                                             <shadow type="field_oid" id="GSH^gCAUOl*^N5;HSRWw">
                                                               <field name="oid">alexa2.0.Echo-Devices.XXX.Commands.speak</field>
                                                             </shadow>
                                                           </value>
                                                           <value name="VALUE">
                                                             <shadow type="logic_boolean">
                                                               <field name="BOOL">TRUE</field>
                                                             </shadow>
                                                             <block type="variables_get" id="O?4XK:9xJHS.L[mmkvs9">
                                                               <field name="VAR" id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</field>
                                                             </block>
                                                           </value>
                                                           <value name="DELAY_MS">
                                                             <shadow type="math_number" id="bpnVNEj={)HgkY)Aa|z^">
                                                               <field name="NUM">500</field>
                                                             </shadow>
                                                           </value>
                                                         </block>
                                                       </next>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </statement>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </next>
                         </block>
                       </statement>
                     </block>
                   </next>
                 </block>
                 <block type="procedures_defnoreturn" id="29;x}Q_5d|%K+Ol;BU$t" x="437" y="62">
                   <mutation>
                     <arg name="text" varid="iL31k6[AbuD2k}Sf:(40"></arg>
                   </mutation>
                   <field name="NAME">satz_ergaenzen</field>
                   <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                   <statement name="STACK">
                     <block type="controls_if" id="iw2eZtC}5pyN1hqocW=H">
                       <mutation else="1"></mutation>
                       <value name="IF0">
                         <block type="logic_compare" id="4}MU0XP[9=s^Dr0czRBK">
                           <field name="OP">EQ</field>
                           <value name="A">
                             <block type="variables_get" id="Cp{+4j$oLmLC1PPEy3CB">
                               <field name="VAR" id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</field>
                             </block>
                           </value>
                           <value name="B">
                             <block type="text" id="1Tq7G+fqlUQA]yf7z_:W">
                               <field name="TEXT"></field>
                             </block>
                           </value>
                         </block>
                       </value>
                       <statement name="DO0">
                         <block type="variables_set" id="z6y:W[Yt*/*TqHq#Ggfh">
                           <field name="VAR" id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</field>
                           <value name="VALUE">
                             <block type="variables_get" id="$kc;AKx[Ii}DV)SIj7bp">
                               <field name="VAR" id="iL31k6[AbuD2k}Sf:(40">text</field>
                             </block>
                           </value>
                         </block>
                       </statement>
                       <statement name="ELSE">
                         <block type="variables_set" id="-iI0Z+6^2)_K(KRrn8{x">
                           <field name="VAR" id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</field>
                           <value name="VALUE">
                             <block type="text_join" id="{~M(xdg-jQ]rNVmTRZB_">
                               <mutation items="3"></mutation>
                               <value name="ADD0">
                                 <block type="variables_get" id="T!M6*bM`EF!yj-1JmteZ">
                                   <field name="VAR" id="~V9s`d(vhp`_vI7,H7Cm">sprachausgabe</field>
                                 </block>
                               </value>
                               <value name="ADD1">
                                 <block type="text" id="r:76}VfM7R!0WFoRyl3Z">
                                   <field name="TEXT"> und die</field>
                                 </block>
                               </value>
                               <value name="ADD2">
                                 <block type="variables_get" id="/Y4x7B?UX%oGFUIg_f:!">
                                   <field name="VAR" id="iL31k6[AbuD2k}Sf:(40">text</field>
                                 </block>
                               </value>
                             </block>
                           </value>
                         </block>
                       </statement>
                     </block>
                   </statement>
                 </block>
                </xml>
                

                EDIT:
                @Sanweb

                Triggern tue ich das ganze über eine Alexa Routine "Alexa, welche Fenster sind noch offen" ...

                Als Trigger zum Auslösen der Ansage ginge ja auch ein eigener Button. (Trigger auf wurde aktualisiert stellen)

                Sanweb 1 Reply Last reply Reply Quote 0
                • Sanweb
                  Sanweb @dslraser last edited by Sanweb

                  @buggybeast
                  Hab es ausprobiert und es funktioniert insoweit, wie Alexa Lust hat ... 😁 ... Mal sagt sie es komplett richtig, danach sagt sie nur mal ein Zimmer an, dann zwei Zimmer und mal gar nichts. Habe mal Deine Debug Ausgabe mit drin gelassen und da habe ich gesehen, das alle Worte zusammengefasst in einem Wort bei mir wieder gegeben werden und nicht wie bei Dir schön getrennt. Bei Einbau von Leerzeichen hat sich die Debug Ausgabe auch nicht verändert. Denke das die Ausetzer kommen wegen dem zu langen Wort?

                  @dslraser said in Fenster offen Ausgabe mit Alexa:

                  Als Trigger zum Auslösen der Ansage ginge ja auch ein eigener Button. (Trigger auf wurde aktualisiert stellen)

                  Nu ja, wenn ich mir für jeden Trigger einen Button an die Wand klatsche, dann brauch ich diese bald nicht mehr zu tapezieren, sondern muss mir dann überlegen, wie ich die ganzen Buttons beschrifte oder triggere ... 😁

                  dslraser 1 Reply Last reply Reply Quote 0
                  • dslraser
                    dslraser Forum Testing Most Active @Sanweb last edited by dslraser

                    @Sanweb sagte in Fenster offen Ausgabe mit Alexa:

                    Nu ja, wenn ich mir für jeden Trigger einen Button an die Wand klatsche, dann brauch ich diese bald nicht mehr zu tapezieren, sondern muss mir dann überlegen, wie ich die ganzen Buttons beschrifte oder triggere ...

                    ???
                    einen eigenen Button als Datenpunkt für die Routine habe ich gemeint !

                    1 Reply Last reply Reply Quote 0
                    • E
                      eviltrooper @buggybeast last edited by

                      @buggybeast
                      Hallo, ich muss das mal wieder hoch holen.
                      ich nutze das Script auch..

                      als Trigger oben habe ich den Kontakt der Tür.. also ich will es hören wenn ich die Haustür auf mache..

                      Das Falls Objekt steht bei mir aber auf "geändert", wenn ich es auf wahr ändere sollte es doch richtig sein oder?

                      aber irgendwie hat das nicht funktioniert... (ist ein Homematic Fenster kontakt)

                      bei "geändert" sagt sie es wenn ich die Tür auf mache und einmal wenn ich sie schliesse.. das Nervt etwas 🙂

                      S 1 Reply Last reply Reply Quote 0
                      • S
                        Smallfeuer @eviltrooper last edited by

                        @eviltrooper sagte in Fenster offen Ausgabe mit Alexa:

                        r auf mache und einmal wenn ich sie schliesse.. das Nervt etwas

                        Du fragst doch danach mit falls Sensor = 1 ab, ob wirklich wahr. Dann dürfte die Tür beim schließen nichts auslösen, es sein denn dein "falls" beinhaltet nicht das ganze Script. Kannst ja mal dein Blockly reinstellen.

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        496
                        Online

                        31.9k
                        Users

                        80.1k
                        Topics

                        1.3m
                        Posts

                        8
                        37
                        3273
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo