NEWS
Statusprüfung ob Fenster offen
-
@Ralf
Du kannst es auch mal ohne die Prüfung welcher Echo angesprochen wurde probieren. Hier in diesem Blockly einfach mal in den Objekten auf den Button für die Fensteransage klicken.<xml xmlns="http://www.w3.org/1999/xhtml"> <block type="procedures_defcustomnoreturn" id="49kvg:%69IF}@lKJq@(J" collapsed="true" x="13" y="13"> <mutation statements="false"> <arg name="Name"></arg> <arg name="Initialisierung"></arg> <arg name="Beschreibung"></arg> <arg name="Type"></arg> <arg name="Rolle"></arg> <arg name="smartName"></arg> </mutation> <field name="NAME">Variablen anlegen</field> <field name="SCRIPT">Y3JlYXRlU3RhdGUoTmFtZSwgSW5pdGlhbGlzaWVydW5nLCB7DQogIG5hbWU6IEJlc2NocmVpYnVuZywNCiAgcmVhZDogdHJ1ZSwgDQogIHdyaXRlOiB0cnVlLCANCiAgdHlwZTogVHlwZSwgDQogIGRlZjogZmFsc2UsDQogIHJvbGU6IFJvbGxlLA0KICBzbWFydE5hbWU6IHNtYXJ0TmFtZQ0KICANCiAgDQogIA0KICAgICAgDQp9KTsNCg==</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_callcustomnoreturn" id="O45R/5Gw(j@)2M*_xdcB" x="13" y="63"> <mutation name="Variablen anlegen"> <arg name="Name"></arg> <arg name="Initialisierung"></arg> <arg name="Beschreibung"></arg> <arg name="Type"></arg> <arg name="Rolle"></arg> <arg name="smartName"></arg> </mutation> <value name="ARG0"> <block type="text" id="nSr7Hq~;DUU2#lB+Yj:}"> <field name="TEXT">Eigene_Datenpunkte.01Alexa2Ansagen.Ansagen.03Fensteransage</field> </block> </value> <value name="ARG1"> <block type="text" id="xlqa55O11o`@{+#@Yj;%"> <field name="TEXT">true</field> </block> </value> <value name="ARG2"> <block type="text" id="yEhqZqxh*}Ip8?yzOW7I"> <field name="TEXT">Fensteransage</field> </block> </value> <value name="ARG3"> <block type="text" id="sYAGk@@-Fz^fIDONX!/i"> <field name="TEXT">boolean</field> </block> </value> <value name="ARG4"> <block type="text" id="/t]#6;-K%9u+eD1jG09@"> <field name="TEXT">button</field> </block> </value> <value name="ARG5"> <block type="text" id="f?//#sV0P}x+|S.8nzy`"> <field name="TEXT">Fenster Ansage</field> </block> </value> <next> <block type="on_ext" id="Ac;^b|`@QSn~WL%:8Hxc"> <mutation items="1"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="hD}F{s%j}T;e:l|Y_t5O"> <field name="oid">javascript.0.Eigene_Datenpunkte.01Alexa2Ansagen.Ansagen.03Fensteransage</field> </shadow> </value> <statement name="STATEMENT"> <block type="timeouts_settimeout" id="yJ:a?7nA]vQl}h+o]sLp"> <field name="NAME">timeout</field> <field name="DELAY">1000</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="variables_set" id="5VFfHYTB!S7A^A*?SicA"> <field name="VAR">Ansage</field> <value name="VALUE"> <block type="text_join" id="-reB^tvXSWM:(3]y*~s9"> <mutation items="28"></mutation> <value name="ADD0"> <block type="text" id="j0I[|eJM@1.d0b?e+L@i"> <field name="TEXT"><speak><voice name="Alexa"></field> </block> </value> <value name="ADD1"> <block type="text" id="%B1fdN3/P-0nDW@Z9IRy"> <field name="TEXT">Okay, Hans und Vicki, könnt Ihr bitte nachsehen ? </field> </block> </value> <value name="ADD2"> <block type="text" id="Mg-11r+bSVB`_Z60kYvf"> <field name="TEXT"></voice><voice name="Hans"></field> </block> </value> <value name="ADD3"> <block type="text" id="|VjM^bW}3bR:1eZ+Bm-@"> <field name="TEXT">Okay, los gehts . </field> </block> </value> <value name="ADD4"> <block type="text" id="j_4t/AIMsG8`Umup#rPM"> <field name="TEXT">aktuell sind, </field> </block> </value> <value name="ADD5"> <block type="logic_ternary" id="_(9@3BJ:q/(pyD,K;+vI"> <value name="IF"> <block type="logic_compare" id="H0~i/K^a|^]X,P}|IjO("> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="hKOyDU?d3DxiL=xJO%?2"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0129539.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="nqg.:caMw|ngtH*ufnF5"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="THEN"> <block type="text" id="4U(_^~Pdv=V/-jh9@E]Q"> <field name="TEXT">im Hobbykeller, </field> </block> </value> <value name="ELSE"> <block type="text" id="#@T(yI1,Zoz#x1I5obYu"> <field name="TEXT"></field> </block> </value> </block> </value> <value name="ADD6"> <block type="text" id="N}-CzvJahH(/)/vDF!Z@"> <field name="TEXT"></voice><voice name="Vicki"></field> </block> </value> <value name="ADD7"> <block type="logic_ternary" id="}rNgt:IN3coO_lBrVGSU"> <value name="IF"> <block type="logic_operation" id="qXx0:_mlAF1myY?8B3ar" inline="false"> <field name="OP">OR</field> <value name="A"> <block type="logic_compare" id="T[|#7rjPOivB5/8Hl)3y"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="Df3-m__8{;}RTvFR^KW;"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.FEQ0023712.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="FZW(:0`8xeU_:!|_O}6P"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="*IqY#!6i20YFaHgK{;yN"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="zRjC2Hbv9?zLLgw%e7v="> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0128666.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="niL^)-JrUiOyoF;3OsIS"> <field name="NUM">0</field> </block> </value> </block> </value> </block> </value> <value name="THEN"> <block type="text" id="_7=1K0C~XVTG1,o`X./5"> <field name="TEXT">in der Küche, </field> </block> </value> <value name="ELSE"> <block type="text" id="U77tMrnXHC0@4q6AYyv|"> <field name="TEXT"></field> </block> </value> </block> </value> <value name="ADD8"> <block type="text" id="ijDxkX;Jl{CN0pa7^4,r"> <field name="TEXT"></voice><voice name="Hans"></field> </block> </value> <value name="ADD9"> <block type="logic_ternary" id="Z|]fwNAWC=?[6OKQZ,Li"> <value name="IF"> <block type="logic_compare" id="BL[Gz2X7Ts^n=W/8+L=L"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="Vh/8rxU]yD!3mT}0y[eC"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.LEQ0504976.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="LEjfr~5Tm;4%0R];R1}s"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="THEN"> <block type="text" id="E=A%czq-C0G),FL08w*X"> <field name="TEXT">im Flur, </field> </block> </value> <value name="ELSE"> <block type="text" id="N{sB70Z8rv77l@kH7v*n"> <field name="TEXT"></field> </block> </value> </block> </value> <value name="ADD10"> <block type="text" id=";x[VL1^a3_^QcTO81/iO"> <field name="TEXT"></voice><voice name="Vicki"></field> </block> </value> <value name="ADD11"> <block type="logic_ternary" id="vT.Z-4R9=nEqy4M94U_4"> <value name="IF"> <block type="logic_compare" id=":vve)ntJ7~l-ps?/FKZX"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="2?1Wn7POI2S`:xvT5S)o"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0364696.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="NEv0K@/R~DYh1j+s9%~+"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="THEN"> <block type="text" id="r.QEj21(A[z[d!?L_*ql"> <field name="TEXT">im Wohnzimmer, </field> </block> </value> <value name="ELSE"> <block type="text" id="zC?@~nP(U_zYBfU%E.DU"> <field name="TEXT"></field> </block> </value> </block> </value> <value name="ADD12"> <block type="text" id="F-F],icxo/G,J9T7jFU0"> <field name="TEXT"></voice><voice name="Hans"></field> </block> </value> <value name="ADD13"> <block type="logic_ternary" id="=aa[o0q-TRw5bR01d^bG"> <value name="IF"> <block type="logic_compare" id="2m)E-+Q~6jD[t4=f3l}7"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="zh-UVK%/ysK:+{EpCcJ]"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0129990.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="FCg5IF/qWiTJQg,}2E1z"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="THEN"> <block type="text" id="0Q8cZ%Yn%s[:y%bj.dYA"> <field name="TEXT">im Anleidezimmer, </field> </block> </value> <value name="ELSE"> <block type="text" id="gHcdNB=,iGBiJ2jC}JJk"> <field name="TEXT"></field> </block> </value> </block> </value> <value name="ADD14"> <block type="text" id="pQQBXYDeU,T!YcGboKsU"> <field name="TEXT"></voice><voice name="Vicki"></field> </block> </value> <value name="ADD15"> <block type="logic_ternary" id="cSuv-K,7Iw=v_uI*LN77"> <value name="IF"> <block type="logic_operation" id="uLgJzwG/`:4k-],vsjQ]" inline="false"> <field name="OP">OR</field> <value name="A"> <block type="logic_compare" id="R/1,m|*@qFu?OeG5D;}L"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="mj6=*=l:;uf60S-Fqg:X"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0129886.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="IT,0eGM[ieUTw3D|X/7b"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="o(~ujxXFAGIq:{^RD^cz"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="3uV[sySrE{n=K-FCZ?PX"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0127508.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="1RCF9]g%83T8a7ya;C(4"> <field name="NUM">0</field> </block> </value> </block> </value> </block> </value> <value name="THEN"> <block type="text" id="!1K,~%~=swgG2o]e5oeC"> <field name="TEXT">im Kinderzimmer, </field> </block> </value> <value name="ELSE"> <block type="text" id="zF^;cz03z2L#AwE`qT7="> <field name="TEXT"></field> </block> </value> </block> </value> <value name="ADD16"> <block type="text" id="yVUwJ3!_ziN7K=K:Os?H"> <field name="TEXT"></voice><voice name="Hans"></field> </block> </value> <value name="ADD17"> <block type="logic_ternary" id="G@(1v,GZ%*?XJ;7~:43D"> <value name="IF"> <block type="logic_compare" id="gRXP4VkAPkGh?LC%nZJE"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="EPN]rn9n,gz:ln|Wvj10"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0128993.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="_qeJo|tu#upwbo`S+:Lc"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="THEN"> <block type="text" id=":{bKwuvnZDiCXP@=v#R}"> <field name="TEXT">im Bad erste Etage, </field> </block> </value> <value name="ELSE"> <block type="text" id="z?^?T/CMrNhlYvpFQ#9*"> <field name="TEXT"></field> </block> </value> </block> </value> <value name="ADD18"> <block type="text" id="%!RH_i%Hc|At=W]_Z7^~"> <field name="TEXT"></voice><voice name="Vicki"></field> </block> </value> <value name="ADD19"> <block type="logic_ternary" id="[57d?V!h^2e!8FYm45mj"> <value name="IF"> <block type="logic_compare" id=",_K3RwCA#xr^nh:z69-o"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="5./ooVXikCPJLsp3qD=A"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0128327.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="tNt21b-11g6HR/0=ucf2"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="THEN"> <block type="text" id="3%KKs)q7_U)~mO8![1/h"> <field name="TEXT">im Dachgeschoss, </field> </block> </value> <value name="ELSE"> <block type="text" id="7|C,%7_YT,0qW%6nAdx)"> <field name="TEXT"></field> </block> </value> </block> </value> <value name="ADD20"> <block type="text" id="mWxAk07sr|c4sGrMFNkH"> <field name="TEXT"></voice><voice name="Hans"></field> </block> </value> <value name="ADD21"> <block type="logic_ternary" id="I3Jeu-5f09C0[px?_CNb"> <value name="IF"> <block type="logic_compare" id="w(.aDF_v}ryLKCiy@AK8"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id=":nE%Rx[j7#8Re}sOZ{yi"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.MEQ0286557.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="s`%^=oM:}w;_P1!yOx)v"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="THEN"> <block type="text" id="?,7h]LrJ:gGIy!jRlXVt"> <field name="TEXT">in der Garage, </field> </block> </value> <value name="ELSE"> <block type="text" id="T_Zn^_WtuC/jjX7ic?sJ"> <field name="TEXT"></field> </block> </value> </block> </value> <value name="ADD22"> <block type="text" id="YenifSkhxI#V(9O|0.4{"> <field name="TEXT"></voice><voice name="Hans"></field> </block> </value> <value name="ADD23"> <block type="logic_ternary" id="I!%AMPTK=]8Is%hhQFG=" inline="false"> <value name="IF"> <block type="logic_operation" id="dmHq]j_iI|3z7cJv:o/N" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id=":oW6i5l`q~4^~_38X9.-"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="HRwI[{qiBH]Uo#NTB.Un"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0129539.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="`:@!z4SMN#ivtk;v0`^Q"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="m=g,d6p]-Oemw_cKR}7=" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="%VQU!pEP80s1#Km4/BlK"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="]/e-^U;x|C[;Rhgw70=z"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.FEQ0023712.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="op^3x2!Q_Tl#v2H.)*0:"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="_R{-3jo++27JWmQk_Yq/" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="m?!_gs|GC-{GGpJAfAOy"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="QnW2q:[(AEU2{HDgr,Pi"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0128666.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="Qaj^}+Fb,v~gpD#n;9dX"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="q*D573[7Ow}[RlRn7z_K" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="/-?]uF;KBL*jg9#6dsSk"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id=":a5shg98@@3kf1[X@WzP"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.LEQ0504976.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id=",x7lRZbuC3ApY{c`D~kd"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="oI./#2(If{`%J2!b8)I`" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="#DvgehmNjxR+6wf~5;R}"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="]kC}VRmnU7,InqM[pdu*"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0364696.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="*T/i+LOpM`[/gklR@V/2"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="r53Ne=qfam:u}Es`gy#P" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="`!jeVll5a(}_?fJ3W6wa"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="j/fBeGk|bFxe~J4^C)s("> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0129990.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="*YLK3Sxe~8CS-[9u=v1D"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="LDzCu-oy_*UO/i_rv81i" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="4vyVc(lM.#kc~wfokK!f"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="T*%*_okR;itQk_sxykJ9"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0129886.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id=",KdUP~r%]gjd^aUQyDrG"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="+k*6C{cEG`//PRqAm!Ok" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="aCBt!j3l=bQ/t7z|5Knc"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id=")vb*X5KwV!r3n}tVcIA!"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0127508.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="f,EWG|7CLL8]t]qOuf)B"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="(bH/):X/A!5hjY8s!Xde" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="evQ5N`-4cM}AuLW8B;=%"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="C4s|@+)31:#]2j;n?v=0"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0128993.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="nVLYF6WKgLWwR0Cm?!95"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="A)LD:#Y/=G}(;6?;@g9u" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="W/x=c}wGJ^=xi;Q:5BP/"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="#HWUr`dEb*T;b)Y_7qB1"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.HEQ0128327.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="v{@AIrZVcQ7HnjKYy].K"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="/04sA:h)mR9)%JK=E%vB"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="PZl;TskwVeEpznlpN=`c"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.MEQ0286557.1.STATE</field> </block> </value> <value name="B"> <block type="math_number" id="0*MLo*:#N]5im[S/sJEf"> <field name="NUM">0</field> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> <value name="THEN"> <block type="text" id="q8aGg-mP}V`H@xsK58ap"> <field name="TEXT">alle Fenster oder Türen geschlossen.</voice><voice name="Vicki"> Stimmt, es sind alle Fenster oder Türen geschlossen.. </field> </block> </value> <value name="ELSE"> <block type="text" id="or4azbD3Q83#i4Si.u[K"> <field name="TEXT">geöffnete Fenster oder Türen</field> </block> </value> </block> </value> <value name="ADD24"> <block type="text" id="9vU-nxV?O)1#YfLXO21i"> <field name="TEXT"></voice><voice name="Alexa"><prosody volume="+6dB"></field> </block> </value> <value name="ADD25"> <block type="text" id="gzxbj0B1!~=aQo(gJ_Z3"> <field name="TEXT">Das wäre dann alles . </field> </block> </value> <value name="ADD26"> <block type="text" id="7G1Dbx1lYn(f{UBIY9:,"> <field name="TEXT"></prosody></field> </block> </value> <value name="ADD27"> <block type="text" id="es=J8PONm]wt9VU]sus5"> <field name="TEXT"></voice></speak></field> </block> </value> </block> </value> <next> <block type="control" id=")M^jLcZ!hCpj,X={-`nV"> <mutation delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.xxx.Commands.ssml</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="p)bNOdcZFVoq1e^M5V-."> <field name="VAR">Ansage</field> </block> </value> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </xml>also da, bei 03 Fensteransage

-
Hi, hier nochmal meine Lösung. Bei mir läuft das ganze nicht über einen cronjob sondern die Änderung
erfolgt sobald ein Fenster geöffnet wird. Ich lasse mir auch nicht jedes Fenster ausgeben sondern nur den Raum. Weiterhin kann ich auch über Alexa jederzeit abfragen wo noch Fenster auf sind , die Ausgabe erfolgt auch nur auf dem Alexa-gerät wo die Frage gestellt wurde. Zusätzlich erfolgt morgens eine Abfrage weil die Kinder immer gerne Vergessen die Fenster zu schließen.



Hier mein Script: Offene_Fenster.txt
-
@Ralf sagte in Statusprüfung ob Fenster offen:
@dslraser
sie sagt immer noch nur "ok"
und der Fehler im Log ist auch noch da.Hast Du das mittlerweile hin bekommen? Hatte das gleiche Problem, bei mir hat es geholfen dem Trigger ein Gewerk und Raum zuzuweisen, dann kam von Alexa erst das obligatorische Ok und kurz drauf die Fensteransage.
-
@dslraser
Hallo,
du hast mir Anfang März geholfen das Fensterskript zum laufen zu bringen. Das hat auch bis vor einigen Tagen funktioniert, jetzt sagt Alexa wieder nur "OK". In der Zwischenzeit hatte ich ein weiteres Skript installiert, welches mir über Alexa den Anrufernamen (Festnetz) sagte. Auch das funktioniert nicht mehr.
Es scheint also um ein generelles Problem zu gehen.
Ich weis, dass es hier wenig Hellseher gibt, aber vielleicht hast du einen Tipp, wo ich mit der Suche beginnen sollte ?
Danke Dir im Voraus. -
@dslraser
Hallo,
du hast mir Anfang März geholfen das Fensterskript zum laufen zu bringen. Das hat auch bis vor einigen Tagen funktioniert, jetzt sagt Alexa wieder nur "OK". In der Zwischenzeit hatte ich ein weiteres Skript installiert, welches mir über Alexa den Anrufernamen (Festnetz) sagte. Auch das funktioniert nicht mehr.
Es scheint also um ein generelles Problem zu gehen.
Ich weis, dass es hier wenig Hellseher gibt, aber vielleicht hast du einen Tipp, wo ich mit der Suche beginnen sollte ?
Danke Dir im Voraus.@Ralf
läuft den der Alexa2 Adapter (grün) ?
Ansonsten mal den iot Skill in der Amazon App deaktivieren und direkt wieder aktivieren. -
@Ralf
seit wann geht es denn nicht mehr ?
Irgendwelche Updates gemacht ?
Vielleicht auch ein temporäres Problem mit iot/cloud ? (gab es wohl in den letzten Tagen, habe ich hier im Forum jedenfalls gelesen)
Am Blockly liegt es nicht, das läuft unverändert bei mir. -
-
Hier noch mal eine kleine Zusammenfassung, ich hoffe es passt jetzt alles.
In meinem Fall habe ich Fensterkontakte und Fensterdrehgriffe gemischt im Haus.
Die "normalen" optischen Kontakte kennen nur auf und zu.
Die Drehgriffe kennen auf und zu und gekippt.
Ich habe das Script für mich so angepasst das ich den Status über Alexa oder über Text to Command abfragen kann. Dazu habe ich einen Datenpunkt erstellt (die Datenpunktstruktur ist passend zu meiner eigenen Datenstruktur, deshalb ist da eine Nummer mit drinn, aber das lässt sich ja individuell anpassen. Ein SmartName für Iot oder Cloud wird ebenfalls direkt mit erstellt. In meinem Fall heißt der Smartname Fensterstatus. Dieser erscheint dann auch so im Iot / Cloud, wenn das Blockly einmal gestartet wurde. Auch der Datenpunkt wird nach dem ersten Start erstellt.

In Text to Command kann man dann den neu erstellten Datenpunkt verwenden. Ich habe im Telegram Adapter dafür die Instanz eingestellt. Die Abfrage lässt sich dann in Telegram mit dem Wort bzw. der Eingabe Fensterstatus starten.

Für Alexa benutze ich den Datenpunkt in einer Routine. z.B. so

Ich habe zwei Varianten vom Script, einmal für die Abfrage, dieses hier:
Fensterabfrage.txt
Und die zweite Variante als Sofortmeldung, sobald sich am Status eines Fensters was ändert. Vielleicht geht das auch einfacher oder kürzer, aber es funktioniert.
In der zweiten Variante habe ich bei mir (nicht in der hier hochgeladenen) noch eine Abfrage in Abhängigkeit mit Anwesenheit. Dort würde ich nur eine Nachricht bekommen wenn ich nicht zu Hause bin (ähm Einbrecher oder so :white_frowning_face: )
Fenster Sofortmeldung.txt
Ich hoffe ich habe nichts vergessen.
Auf einen Screenshot vom Blockly verzichte ich an dieser Stelle, ist zu lang bzw. zu groß.@dslraser
Hey, hast Du mal nen kleinen Anschupser wie ich das zusätzlich in die VIS einbinden kann?
In ein Widget dass immer den aktuellen Status anzeigt....sprich ob Alles zu ist - oder aktuell das Fenster Wohnzimmer offen ist. So wie die Telegram Nachrichten.by,
David -
@dslraser
Hey, hast Du mal nen kleinen Anschupser wie ich das zusätzlich in die VIS einbinden kann?
In ein Widget dass immer den aktuellen Status anzeigt....sprich ob Alles zu ist - oder aktuell das Fenster Wohnzimmer offen ist. So wie die Telegram Nachrichten.by,
David@davimas
Du könntest z.B. das hier benutzen (die zweite Variante unten). Anstatt Telegram nimmst Du eigene Datenpunkte (die Du noch erstellen mußt) und schreibst das Ergebnis da rein, das sollte sich ja in VIS (ich nutze kein VIS) anzeigen lassen. -
Hallo Leute,
ich habe einige Xiaomi Fensterkontakte verbaut und per Skript, werde ich durch Pushover benachrichtigt, wenn sich der Status (öffnen/schließen) ändert. Dies funktioniert auch ohne Probleme.
Nun zu meiner Frage, gibt es eine Möglichkeit per Blockly Skript, eine ich nenne es mal Statusüberprüfung im Sinne von z.b. jeden Abend 24 Uhr alle Fenster und Türen überprüfen ob der Kontakt offen/geschlossen ist, und dieses Ergebnis dann per Pushover versenden.
Leider reichen meine Blockly Kenntnisse hierfür noch nicht aus.
Für Vorschläge wäre ich sehr dankbar.
@rocket85 Wie du eine automatische Übersicht von deinen geschlossenen und geöffneten Fenster als reinte Textliste oder formatierte HTML-Tabelle generieren kannst, erfährst du in diesem Artikel: https://www.machs-smart.de/offene-und-geschlossene-fenster-mit-blockly-als-liste-ausgeben/
Mit einem einfachen Blockly-Script und einem eigenen Datenpunkt kannst du dir die Gesamtzahl geöffneter Fenster oder Türen anzeigen lassen: https://www.machs-smart.de/iobroker-offene-fenster-zaehlen-blockly/