Hey Leute,
Heute möchte ich euch einfach Mal ein cooles und nützliches Projekt von mir vorstellen
Ich habe heute meine Xiaomi Sensoren, IFTTT, meine Sonoff POW (Infrarotheizung), den Telegram Adapter sowie die Temperatur Regulierung zum Strom sparen in einem smarten Script zusammengefasst.
Was macht das Script ?
Ganz einfach, wenn Ihr das Haus verlasst und über IFTTT festgestellt wird das ihr den GPS Bereich von eurem Haus verlasst, dann triggert IFTTT unser Script und als erstes wird die Heizung von, zum Beispiel aktuellen 24°C auf 20°C heruntergesetzt um Energie zu sparen, denn wenn man nicht zuhause ist, muss es auch nicht so warm sein. Das war es aber noch nicht, das Script prüft außerdem ob die Haus/Terassen und Treppenhaustür sowie die Fenster in Küche, Bad und Schlafzimmer geöffnet sind und falls dem so ist bekomme ich eine Warnung über Telegram geschickt das eben das entsprechende Fenster noch offen ist.
Und wenn man wieder in den GPS Bereich des Hauses zurückkommt, setzt er die Heizung schonmal wieder auf die Voreingestellt Wohlfühltemperatur
selbstverständlich kommt zu diesem Script noch ein passendes Video indem ich euch das alles präsentiere
Aber hier schonmal das Blockly Script zum herumspielen
<xml xmlns="http://www.w3.org/1999/xhtml">
<block type="on_ext" id="_ssJnMhul+gYmlgzjBdf" x="-362" y="-262">
<mutation items="1"></mutation>
<field name="CONDITION">any</field>
<field name="ACK_CONDITION"></field>
<value name="OID0">
<shadow type="field_oid" id="3*x8ktGby9subx#QYc_Y">
<field name="oid">cloud.0.services.ifttt</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="comment" id="IjdSJ_yV64]%wZZ[.xEd">
<field name="COMMENT">Heizung An</field>
<next>
<block type="controls_if" id="2zU7k17w0nolIrG]MxNC">
<value name="IF0">
<block type="logic_compare" id="Lqc[B@3ni,Sn,XUyKh6J">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="_1bHt9%)!Gr3,NLj`m5z">
<field name="ATTR">val</field>
<field name="OID">cloud.0.services.ifttt</field>
</block>
</value>
<value name="B">
<block type="text" id="R{)MG9*_A-qBEx!F#7H|">
<field name="TEXT">entered</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id="q9B`:Q}OO`2K.D_ibDT:">
<mutation delay_input="false"></mutation>
<field name="OID">sonoff.0.Heizung_Wunschtemperatatut</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="get_value" id="_a#{1+Q]CM!%Dg+V_~IP">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Heizung_AN_Temperatur</field>
</block>
</value>
<next>
<block type="telegram" id="Z@PA_.JuI+tbSM|2YZd7">
<field name="INSTANCE"></field>
<field name="LOG"></field>
<value name="MESSAGE">
<shadow type="text" id="2|HVE/C7:E4c(/O~go/i">
<field name="TEXT">Willkommen Zuhause, ich mache die Wohnung schonmal schön warm für dich :)</field>
</shadow>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="b,:%rNLg_+ooDFi?8@[2">
<field name="COMMENT">Heizung Aus</field>
<next>
<block type="controls_if" id="V6]e:v6u:?I_dnQ6L_VO">
<value name="IF0">
<block type="logic_compare" id="YL]^MiM0C_d90EjXd7qr">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="yM=9zWrslsViHeXAVGm6">
<field name="ATTR">val</field>
<field name="OID">cloud.0.services.ifttt</field>
</block>
</value>
<value name="B">
<block type="text" id="H=g~S*6(?G/uCr~jDdCp">
<field name="TEXT">exited</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id="vs.J|^}}{M%%SJ1bpk;V">
<mutation delay_input="false"></mutation>
<field name="OID">sonoff.0.Heizung_Wunschtemperatatut</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="get_value" id="@__xcq@B=K~:F[LP9)Il">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Heizung_AUS_Temperatur</field>
</block>
</value>
<next>
<block type="telegram" id="@;d+7yvf2*9iP:`Z}K67">
<field name="INSTANCE"></field>
<field name="LOG"></field>
<value name="MESSAGE">
<shadow type="text" id="te)o_w9CP1_=dWX{QIEE">
<field name="TEXT">Um dir etwas Strom einzusparen, stelle ich die Heizung während deiner Abwesenheit etwas herunter :) </field>
</shadow>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="eWa(J)f+S0B~saJj]t,5">
<field name="COMMENT">Haustür</field>
<next>
<block type="controls_if" id="Zf9uu_NH.9Z#9NIsB9Q~">
<value name="IF0">
<block type="logic_operation" id="y.kA:XD#OkXIhetlz,vx">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="Q:1%R;pl,/whO25%@F1P">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="{13tNn1i(-48W]OV{4}O">
<field name="ATTR">val</field>
<field name="OID">cloud.0.services.ifttt</field>
</block>
</value>
<value name="B">
<block type="text" id="QUi=4Kz1-o{/@-k=g6iU">
<field name="TEXT">exited</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="htuj:ZHz3G5~qGw,A]hA">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="R8B~oVj)rpJz-fc56*0S">
<field name="ATTR">val</field>
<field name="OID">mihome.0.devices.magnet_158d0001de8b50.state</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="4pZ+Dg@H@mbjBa`^j=#9">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="telegram" id="HDN1mqgU2hK./Em@Iq(w">
<field name="INSTANCE"></field>
<field name="LOG"></field>
<value name="MESSAGE">
<shadow type="text" id="@*f_rJ#=]i11UJ5NJ(MO">
<field name="TEXT">Vorsicht! Die Haustür ist noch offen!</field>
</shadow>
</value>
</block>
</statement>
<next>
<block type="comment" id="LaBLe?.2Hku4..jPC3^`">
<field name="COMMENT">Terassentür</field>
<next>
<block type="controls_if" id="c|^#cBkRM].TQ@kKX#`U">
<value name="IF0">
<block type="logic_operation" id="mU]ol8yRwuS}^N0=T@8#">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="lfrob1_7!FHQ6S+f*esB">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="P2ff^948?v+tQjImqUzG">
<field name="ATTR">val</field>
<field name="OID">cloud.0.services.ifttt</field>
</block>
</value>
<value name="B">
<block type="text" id=",q10Xw63~vtuFLtb7I`z">
<field name="TEXT">exited</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="FVvSQDI;g,I(-VYi]=Fr">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="-*;vEJIgau6!qqBH:CE-">
<field name="ATTR">val</field>
<field name="OID">mihome.0.devices.magnet_158d0001f2b6c5.state</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="h{rAt#Q).|~Rf2jAG4T1">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="telegram" id="[CU48Y3JKco.l#7?b0:X">
<field name="INSTANCE"></field>
<field name="LOG"></field>
<value name="MESSAGE">
<shadow type="text" id="_*XoT%@|!c?WCeLE]%;v">
<field name="TEXT">Vorsicht! Die Terassentür ist noch offen!</field>
</shadow>
</value>
</block>
</statement>
<next>
<block type="comment" id="1bG4M6osXWQF2%.|!2EV">
<field name="COMMENT">Treppenhaustür</field>
<next>
<block type="controls_if" id="z`8}x!iI6n}a?}5L.,CK">
<value name="IF0">
<block type="logic_operation" id="SHu^Qcv=fF}V~vM~Ht3L">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="q2n^6.7@=5uj`,xS9y|w">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="EZR=/fqgtuZwlD47r`FL">
<field name="ATTR">val</field>
<field name="OID">cloud.0.services.ifttt</field>
</block>
</value>
<value name="B">
<block type="text" id="@:Q:3S3!4N;ycJa/trHE">
<field name="TEXT">exited</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="wbK+5Lz3Xf!`z{Lptwa5">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="[q|/SwT*:X{xPPc4-LLf">
<field name="ATTR">val</field>
<field name="OID">mihome.0.devices.magnet_158d0001f2b6d9.state</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="(DROp[Wlx-2*UA}ko!|G">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="telegram" id="Iq7yHssn:795QWLJ:?P~">
<field name="INSTANCE"></field>
<field name="LOG"></field>
<value name="MESSAGE">
<shadow type="text" id="dB^0s6a/[oS)93aP}Q5c">
<field name="TEXT">Du hast die Treppenhaustür offen gelassen.</field>
</shadow>
</value>
</block>
</statement>
<next>
<block type="comment" id="cX+Ds,0sx.re~1[xbeDl">
<field name="COMMENT">Schlafzimmer Fenster</field>
<next>
<block type="controls_if" id="Y;*b1MpnMv^~tCd^H~Oh">
<value name="IF0">
<block type="logic_operation" id=";]?``L}WC`NW~`HXU[TM">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="!yp?7-!RfODjcH!,-1cn">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="d4+(wQ|%?,V8ui]HA/-X">
<field name="ATTR">val</field>
<field name="OID">cloud.0.services.ifttt</field>
</block>
</value>
<value name="B">
<block type="text" id="G){6X!|t(e%4D)zJOC}r">
<field name="TEXT">exited</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="pIMD+R_kr41!Ts+p+c;_">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="(kiqgc{0eq:Uvao)49X:">
<field name="ATTR">val</field>
<field name="OID">mihome.0.devices.magnet_158d0001fd48db.state</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="Zb]9KK0kZx1h0nC(s(*:">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="telegram" id="hGQpoy!;kPfZ|^=B/VZ=">
<field name="INSTANCE"></field>
<field name="LOG"></field>
<value name="MESSAGE">
<shadow type="text" id="rWj)JG~94f9fln{:5U#B">
<field name="TEXT">Du hast das Schlafzimmer Fenster offen gelassen.</field>
</shadow>
</value>
</block>
</statement>
<next>
<block type="comment" id=")3aW]aE(s]*I5XQg`0|J">
<field name="COMMENT">Badezimmer Fenster</field>
<next>
<block type="controls_if" id="H~:wW*1r!pu{T*eGV49%">
<value name="IF0">
<block type="logic_operation" id="Vg}HoHp]/P5?GV,5M@we">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="n%w}*A~USd=bV|86Ut21">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="U1zS=zbwUmMsBc:/B%V;">
<field name="ATTR">val</field>
<field name="OID">cloud.0.services.ifttt</field>
</block>
</value>
<value name="B">
<block type="text" id="S;k_j]/POW/@gBXZ~0hQ">
<field name="TEXT">exited</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="woY/?r1{ZBlJqtw01,ad">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="1vsYd0{M?9~XvhRySb90">
<field name="ATTR">val</field>
<field name="OID">mihome.0.devices.magnet_158d0001b704bd.state</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="smyAwFK^oG7xVz,tsjTW">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="telegram" id="hzE-K!GyO0vQ`j4tl2Ar">
<field name="INSTANCE"></field>
<field name="LOG"></field>
<value name="MESSAGE">
<shadow type="text" id="#lNLmdmK:8.l%d.~nN#,">
<field name="TEXT">Du hast das Badezimmer Fenster offen gelassen.</field>
</shadow>
</value>
</block>
</statement>
<next>
<block type="comment" id="RdzpCj7z2E6ipe*=A30x">
<field name="COMMENT">Küchen Fenster</field>
<next>
<block type="controls_if" id="L7S:nNjOGiw7rXuuM@CZ">
<value name="IF0">
<block type="logic_operation" id="6V)|?|WD.(V=/~7`jPRO">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="sMg(d?}=RYcl_Fbki[+=">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="pC=[6dlFyIMy5(((.eE~">
<field name="ATTR">val</field>
<field name="OID">cloud.0.services.ifttt</field>
</block>
</value>
<value name="B">
<block type="text" id="NqRA^D_mJoq?bw9Mr4!=">
<field name="TEXT">exited</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="gAm)s}0{!qz,~|_@4Z6Y">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="P|PdaaN{ohVq%sAR*H]p">
<field name="ATTR">val</field>
<field name="OID">mihome.0.devices.magnet_158d0001fd48f1.state</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="-B/:/fR`6fV.VBo?{_0)">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="telegram" id="L/Hh+w^WkPN8:a!b1Oz-">
<field name="INSTANCE"></field>
<field name="LOG"></field>
<value name="MESSAGE">
<shadow type="text" id="yF4-%Ru?#)@iU/8YJQ}n">
<field name="TEXT">Du hast das Küchen Fenster offen gelassen.</field>
</shadow>
</value>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</xml>
Alles anzeigen
Sorry nochmal für meine Ungenauigkeit beim erklären von IFTTT, das möchte ich gern hier mit einem Schrifttutorial wieder gut machen, ich erkläre es nun Schritt für Schritt...
01. bei IFTTT einen Account erstellen
02. dann oben Rechts auf deinen Namen Klicken, dann "New Applet"
03. dann klickst du auf das blaue "this" von "ifTHISthanthat"
04. nun gibst du "location" ein, klickst dann auf das einzige was dir da angezeigt wird
05. dann klickst du auf "you enter or exit an area"
06. dann gibst du deine Adresse ein und klickst auf "create trigger"
07. dann klickst du auf das nun blaue "that" von "ifthisthatTHAT"
08. nun gibst du in der Suche "web" ein und klickst auf das einzige was dann kommt, also "Webhooks"
09. dann auf "make a web request"
10. dann musst du bei der URL die ioBroker URL eingeben vom Cloud Adapter wie im Video gezeigt,
11. Method von "GET" auf POST" ändern
12. Content Type zu "Text/Plain"
13. unter "Body" musst du auf "Add Ingridient" klicken und dort "EnteredOrExited" auswählen,
14. dann das ganze mit "Create Action bestätigen
15. und Fertig
so 15 Punkte zum Glück