NEWS
Vorlage Telegram offene Fenster und mehr
-
Ich verwende in diesem Telegram Menü einige zusätzliche Abfragen die mir dann über Telegram gesendet werden. Die Abfrage geht ebenfalls mit Alexa, z.B. Alexa schicke mir den Fensterstatus (Steckdosenstatus/Lichtstatus/Batteriestatus usw...). Dann kommt die Ausgabe als Telegram. Bei den Batterien bekomme ich dann eine komplette Liste meiner Geräte mit der aktuellen Volt Anzeige. Bei den Fenstern kommt dann ein Telegram welche Fenster gekippt oder geöffnet sind. Bei den Steckdosen kommen die eingeschalteten Steckdosen, genau so beim Licht. Ich habe mir noch eine zusätzliche Routine gemacht, welche mir den kompletten Status all dieser Geräte nacheinander sendet, inklusive ein Bild von drei Kameras.
Hier die Beispiele als Blockly Export
Die benötigte Routine für die Alexa App wird genau wie hier beschrieben erstellt.
Das erstellen Der Datenpunkte funktioniert auch wie hier
(nicht vergessen, einmal iot oder cloud öffnen, je nach dem was ihr verwendet, und schauen ob das neue SmartGerät vom Blockly angelegt wurde, anschließend einmal neue Geräte in der Alexa App suchen lassen, oder über den Sprachbefehl: "Alexa, suche neue Geräte". Anschließend die neue Routine in der Alexa App erstellen)Diese Button werden in den Blocklys erstellt (bis auf die Kameras) Diese verwende ich in den Blocklys und für die Routinen.
##########Variante 2##########
Die zweite Möglichkeit ist das direkte versenden bei Änderung, da habe ich aber nur ein Beispiel für die Fenster.
Das heist, sobald ein Fenster geöffnet oder geschlossen wird kommt eine Telegram Meldung mit einer Liste der dann geöffneten Fenster. Das ganze geht über den Selektor und die Aufzählungen-functions. Ich verwende HMIP Fensterkontakte, diese geben 0,1 oder 2 aus (geschlossen geöffnet gekippt) Hier habe ich aber nur geschlossen oder offen im Blockly berücksichtigt.
Meine Aufzählung sieht so aus, hier ist auch die Schreibweise, ob Groß oder Kleinschreibung wichtig. Diese Variante habe ich mal mit der Hilfe von @paul53 erstellt, als der Selektor Baustein in Blockly dazu kam.Aufzählung = gesucht wird nach der Aufzählung Fenster (und zwar das Wort Fenster hinter enum.functions.), hier groß geschrieben. Das STATE vom Fenster ist bei mir (HMIP) ebenfalls groß geschrieben.
So sieht das Blockly dazu aus
-
@dslraser danke
-
Moin kannst du mir helfen? habe dein Blockly umgebaut, aber irgendwo hakt es...
(
<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="" id="3Eu!3bSQeipPK#4r!G0o">id</variable> <variable type="" id=",CKGwqCVMH?=oFfDM}">arry</variable> <variable type="" id="9,LX9Q^1Zm.XL]5L%Y">trenner</variable> <variable type="" id="8;Dav(G.=;Ty+lQ4~[UN">offen</variable> <variable type="" id="MGbjhMo,|OE]bTX6R79;">offeneFenster</variable> <variable type="" id="nr)=!dz]y4urXFQ{8{y-">fensterstatus</variable> </variables> <block type="procedures_defcustomreturn" id="!N6;}kSECsPgA~=}mQv" x="13" y="13"> <mutation statements="false"> <arg name="id" varid="3Eu!3bSQeipPK#4r!G0o"></arg> </mutation> <field name="NAME">getParentName</field> <field name="SCRIPT">aWYoZ2V0T2JqZWN0KGlkLnN1YnN0cmluZygwLCBpZC5sYXN0SW5kZXhPZignLicpKSkpIHJldHVybiBnZXRPYmplY3QoaWQuc3Vic3RyaW5nKDAsIGlkLmxhc3RJbmRleE9mKCcuJykpKS5jb21tb24ubmFtZTsNCmVsc2UgcmV0dXJuIG51bGw7</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_defcustomreturn" id="(a~5[lFS^b-QSlk(!i" x="13" y="63"> <mutation statements="false"> <arg name="arry" varid=",CKGwqCVMH?=oFfDM}"></arg> <arg name="trenner" varid="9,LX9Q^1Zm.XL]5L%Y"></arg> </mutation> <field name="NAME">arry, trenner</field> <field name="SCRIPT">cmV0dXJuIGFycnkuam9pbih0cmVubmVyKTs=</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_defcustomnoreturn" id="wtSo{g9rz+rm^Z4/]fZD" x="13" y="113"> <mutation statements="false"></mutation> <field name="NAME">Datenpunkt_anlegen</field> <field name="SCRIPT">Ly9EYXRlbnB1bmt0IEFuemFobCBGZW5zdGVyIG9mZmVuCmNyZWF0ZVN0YXRlKCJFaWdlbmVfRGF0ZW5wdW5rdGUuMDRUZWxlZ3JhbS5GZW5zdGVyc3RhdHVzLkFuemFobF9nZW9mZm5ldGVfRmVuc3RlciIsJzAnLCB7CiAgICBuYW1lOiAnQW56YWhsX2dlb2ZmbmV0ZV9GZW5zdGVyJywKICAgIHR5cGU6ICdudW1iZXInLAogICAgdW5pdDogJ0ZlbnN0ZXInLCAKICAgIHJlYWQ6ICB0cnVlLCAKICAgIHdyaXRlOiBmYWxzZSwKfSk7</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_callcustomnoreturn" id="WEVZ{MP8dA!,zMAtcqDu" x="13" y="163"> <mutation name="Datenpunkt_anlegen"></mutation> <next> <block type="on_ext" id="q8A38W=#;PI{7f/}3pqI"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="5Y$(^lu{[^5]ux3oE+("> <field name="oid">default</field> </shadow> <block type="selector" id="lhBGb7A6n[vUm1?Q#tC+"> <field name="TEXT">state.id=windowOpen</field> </block> </value> <statement name="STATEMENT"> <block type="variables_set" id="M^)J@MhBGJS!N;hY,^tc"> <field name="VAR" id="8;Dav(G.=;Ty+lQ4~[UN" variabletype="">offen</field> <value name="VALUE"> <block type="math_number" id="=2ow)6XfsM-n)E]yDzR"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="V76SnD(J:]StsJEtbVz1"> <field name="VAR" id="MGbjhMo,|OE]bTX6R79;" variabletype="">offeneFenster</field> <value name="VALUE"> <block type="lists_create_with" id="b8ioqn=SAEc1o-rN,2;w"> <mutation items="0"></mutation> </block> </value> <next> <block type="comment" id="x)cdqU;pSNia.p)MHeL~"> <field name="COMMENT">channelstate.id=.STATE</field> <next> <block type="controls_forEach" id="Eb!ly!|dTn,Zqy9edjG$"> <field name="VAR" id="nr)=!dz]y4urXFQ{8{y-" variabletype="">fensterstatus</field> <value name="LIST"> <block type="selector" id="W^U2V|c!N.-9APmp;}zj"> <field name="TEXT">[state.id=windowOpen](functions='Fenster')</field> </block> </value> <statement name="DO"> <block type="controls_if" id="tq_Th[d(pZtxt2T-LrO"> <value name="IF0"> <block type="logic_compare" id="FYP=~;)uQu!a5|]KMNd/"> <field name="OP">EQ</field> <value name="A"> <block type="get_value_var" id="j,y|JnaJz:sb,i(9oe^C"> <field name="ATTR">val</field> <value name="OID"> <shadow type="text" id="pmOdHJq595YI/$n-u^$"> <field name="TEXT"></field> </shadow> <block type="variables_get" id=";=A)49}3Eqx{}^5CS[z"> <field name="VAR" id="nr)=!dz]y4urXFQ{8{y-" variabletype="">fensterstatus</field> </block> </value> </block> </value> <value name="B"> <block type="logic_boolean" id="!JdXY6SD!IMYSJkjIR;H"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="lists_setIndex" id="F!KR3Rxr/RH5YL}J~$T" inline="false"> <mutation at="true"></mutation> <field name="MODE">SET</field> <field name="WHERE">FROM_START</field> <value name="LIST"> <block type="variables_get" id="H2NstO2,gntow{QM%=|x"> <field name="VAR" id="MGbjhMo,|OE]bTX6R79;" variabletype="">offeneFenster</field> </block> </value> <value name="AT"> <block type="math_arithmetic" id="TMNFe_GH3BtOrEKv0F"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id=")43ylUFXJ=jhc.9$m7Oo"> <field name="NUM">1</field> </shadow> <block type="lists_length" id="z-3zZ!%o$CO(mZ|w%1"> <value name="VALUE"> <block type="variables_get" id="S+LKJSv_LdS?FEs=^M.]"> <field name="VAR" id="MGbjhMo,|OE]bTX6R79;" variabletype="">offeneFenster</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="Z8e6TaXp%{0QY4q4f!Ys"> <field name="NUM">1</field> </shadow> </value> </block> </value> <value name="TO"> <block type="procedures_callcustomreturn" id="ToXniOfG/14/-A[2WP[s"> <mutation name="getParentName"> <arg name="id"></arg> </mutation> <value name="ARG0"> <block type="variables_get" id=":c,lS[6P:[gP#El9/bp+"> <field name="VAR" id="nr)=!dz]y4urXFQ{8{y-" variabletype="">fensterstatus</field> </block> </value> </block> </value> <next> <block type="math_change" id="bFhp9q/}?hTL~xKCD7Hg"> <field name="VAR" id="8;Dav(G.=;Ty+lQ4~[UN" variabletype="">offen</field> <value name="DELTA"> <shadow type="math_number" id="X|[O^LD;2L%%PxcGHG"> <field name="NUM">1</field> </shadow> </value> </block> </next> </block> </statement> </block> </statement> <next> <block type="update" id="J/eSU;M##k28ql1EZpFO"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Eigene_Datenpunkte.04Telegram.Fensterstatus.Anzahl_geoffnete_Fenster</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="rre@2HNzwhUI$Pcy@3Wb"> <field name="VAR" id="8;Dav(G.=;Ty+lQ4~[UN" variabletype="">offen</field> </block> </value> <next> <block type="comment" id="rKl;D1t@2R1Q5B_at,qe"> <field name="COMMENT">Telegram Block</field> <next> <block type="controls_if" id="k=c@dd%t(al[|eGKV2lq"> <mutation elseif="2"></mutation> <value name="IF0"> <block type="logic_compare" id="$Lr~g!sPrDD]U#xE5e8c"> <field name="OP">EQ</field> <value name="A"> <block type="lists_length" id="bKDrS3vksWj,gJD_M_Kf"> <value name="VALUE"> <block type="variables_get" id=".6oPn_hEeUJB?16^9a{"> <field name="VAR" id="MGbjhMo,|OE]bTX6R79;" variabletype="">offeneFenster</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="9VJhYUb/ECM?6Havyv$Q"> <field name="NUM">1</field> </block> </value> </block> </value> <statement name="DO0"> <block type="telegram" id="D8xCB2b:9I#Q!|WofLFh"> <field name="INSTANCE"></field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <value name="MESSAGE"> <shadow type="text" id="#Woh%x_kVf$RDE3.50nO"> <field name="TEXT">text</field> </shadow> <block type="text_join" id="%CH?lT]|q4-]#r:W_ib@"> <mutation items="6"></mutation> <value name="ADD0"> <block type="text" id="0JmYk15,VjTA5jDTGZyr"> <field name="TEXT">☝️ aktuell ist: </field> </block> </value> <value name="ADD1"> <block type="variables_get" id="({Awi[4sRPc:Ub,gd."> <field name="VAR" id="8;Dav(G.=;Ty+lQ4~[UN" variabletype="">offen</field> </block> </value> <value name="ADD2"> <block type="text" id="5m+yQjTJDs:#U:rpyvZ"> <field name="TEXT"> Fenster geöffnet ☝️</field> </block> </value> <value name="ADD3"> <block type="text_newline" id="%CsT:=)P~HPzY9fgrWkS"> <field name="Type">\n</field> </block> </value> <value name="ADD4"> <block type="text_newline" id="puqhDLJGe3===^fovay"> <field name="Type">\n</field> </block> </value> <value name="ADD5"> <block type="procedures_callcustomreturn" id="-sZVA9Z2QD=LjYtAE^QY" inline="false"> <mutation name="arry, trenner"> <arg name="arry"></arg> <arg name="trenner"></arg> </mutation> <value name="ARG0"> <block type="lists_sort" id="79ivE:8LLowj:VGR|cv" inline="true"> <field name="TYPE">TEXT</field> <field name="DIRECTION">1</field> <value name="LIST"> <block type="variables_get" id="~JA:S%RDqagjIPoV$@ss"> <field name="VAR" id="MGbjhMo,|OE]bTX6R79;" variabletype="">offeneFenster</field> </block> </value> </block> </value> <value name="ARG1"> <block type="text_newline" id="H|K0hoa6=#UlT=gIE1:b"> <field name="Type">\n</field> </block> </value> </block> </value> </block> </value> <value name="USERNAME"> <block type="text" id="pwh7XK+e$)YJB,;Q%^8"> <field name="TEXT">Christian</field> </block> </value> </block> </statement> <value name="IF1"> <block type="logic_compare" id="^r7vSJWGyr@A_e%Vy)eM"> <field name="OP">GT</field> <value name="A"> <block type="lists_length" id="q91QnyC0C,YCweq:bGvK"> <value name="VALUE"> <block type="variables_get" id="^VX@dVPVuEA]:M8zsSFi"> <field name="VAR" id="MGbjhMo,|OE]bTX6R79;" variabletype="">offeneFenster</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="|Gv6ALNA2zPwNZ/AGR/}"> <field name="NUM">1</field> </block> </value> </block> </value> <statement name="DO1"> <block type="telegram" id="a6N@ooKI;-.C4z;klL4u"> <field name="INSTANCE"></field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <value name="MESSAGE"> <shadow type="text" id="#Woh%x_kVf$RDE3.50nO"> <field name="TEXT">text</field> </shadow> <block type="text_join" id="MhdNjpC#a4uSQS*(=gh:" inline="false"> <mutation items="6"></mutation> <value name="ADD0"> <block type="text" id="[Y%DCO!6SPg_UsZQlbT"> <field name="TEXT">☝️ aktuell sind: </field> </block> </value> <value name="ADD1"> <block type="variables_get" id="xoAV1[0}d+ejdZoWPz"> <field name="VAR" id="8;Dav(G.=;Ty+lQ4~[UN" variabletype="">offen</field> </block> </value> <value name="ADD2"> <block type="text" id="6x]03ZP8/omCs:)EV"> <field name="TEXT"> Fenster geöffnet ☝️</field> </block> </value> <value name="ADD3"> <block type="text_newline" id="3hIEATq;%U?|b^nPOqR"> <field name="Type">\n</field> </block> </value> <value name="ADD4"> <block type="text_newline" id="yC+/W5y[sm53$:s_Zf"> <field name="Type">\n</field> </block> </value> <value name="ADD5"> <block type="procedures_callcustomreturn" id="2ClqUTBgmTE6/=;m|Pl@" inline="false"> <mutation name="arry, trenner"> <arg name="arry"></arg> <arg name="trenner"></arg> </mutation> <value name="ARG0"> <block type="lists_sort" id="9}LpshZUN{;#z(|[R/PJ" inline="true"> <field name="TYPE">TEXT</field> <field name="DIRECTION">1</field> <value name="LIST"> <block type="variables_get" id="aD0(9a[/wj_{uW3!-V5@"> <field name="VAR" id="MGbjhMo,|OE]bTX6R79;" variabletype="">offeneFenster</field> </block> </value> </block> </value> <value name="ARG1"> <block type="text_newline" id="lktMpcKF9acZw^@sBPM+"> <field name="Type">\n</field> </block> </value> </block> </value> </block> </value> <value name="USERNAME"> <block type="text" id="~4%jz;f4QfvecOMERz"> <field name="TEXT">Christian</field> </block> </value> </block> </statement> <value name="IF2"> <block type="logic_compare" id="xV,7Iiu2SeB,7Z@ubuC"> <field name="OP">EQ</field> <value name="A"> <block type="lists_length" id="BTD)uUCWQ;$poZ?oECc]"> <value name="VALUE"> <block type="variables_get" id="L3x/b?ZyRWYI^bjl:nlj"> <field name="VAR" id="MGbjhMo,|OE]bTX6R79;" variabletype="">offeneFenster</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="%6}|t(IYG+i,3yhzZyoz"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO2"> <block type="telegram" id="MRPV=Xqhfy)x]0x)vkxc"> <field name="INSTANCE"></field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <value name="MESSAGE"> <shadow type="text" id="#Woh%x_kVf$RDE3.50nO"> <field name="TEXT">text</field> </shadow> <block type="text" id=":#rPqk#wb+Si.uPfI+xg"> <field name="TEXT"> 🔒 alle Fenster im Haus sind geschlossen 🔒</field> </block> </value> <value name="USERNAME"> <block type="text" id="6Wifx}FP`TDI,]UWSGaV"> <field name="TEXT">Christian</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </xml>
-
@ckundel
ich bin gerade beschäftigt...wird später -
@dslraser alles gut! Wenn ich eine Antwort bekomme bin ich glücklich
-
@ckundel sagte in Vorlage Telegram offene Fenster und mehr:
@dslraser alles gut! Wenn ich eine Antwort bekomme bin ich glücklich
Ich mache noch einiges an meinen Rechnern neu....(ich komme aber noch auf Dich zurück)
-
@dslraser weißt du ungefähr wann?
-
@ckundel sagte in Vorlage Telegram offene Fenster und mehr:
@dslraser weißt du ungefähr wann?
ich schreibe die Blocklys gerade alle um. Es sind dann fast alles Variablen und nur noch wenige Sachen selbst einzugeben. In den nächsten
StundenTagen werde ich hier in dem Beitrag
alle Blocklys einstellen. Schau einfach immer mal da rein.