NEWS
[HowTo] mit IFTTT eine geofence Alternative für Android
-
Edit: die folgende Beschreibung ist veraltet. Anstatt des cloud-Adapters nimmt man den iot-Adapter. Im iot-Adapter findet man auch die korrekte Adresse, die man bei ifttt einträgt.
Mit der folgenden Anleitung kann man anhand vom GPS des Handys einen Bereich angeben, der beim Verlassen und Eintreten etwas triggered, z.B. eine Variable.
Das ganze läuft ohne lange Testphase ganz gut mit Android (7.1.1) und Handy OnePlus 3T. Zusätzlicher Akkuverbrauch muss ich mal beobachten.
Voraussetzung:
- cloud Adapter ab 1.0.2
- IFTTT App auf dem Handy
1.) IFTTT einrichten:
Man kann die Einstellungen vornehmen über die Internetseite (https://ifttt.com) oder über die Handy-App. Ich habe es über die Internetseite gemacht:
a) Das Prinzip ist das gleiche wie das Beispiel 2 unter https://github.com/ioBroker/ioBroker.cl … c/ifttt.md Bitte ergänzend anschauen.
Unter dem User Namen oben rechts -> New Applet
b) +Zeichen anklicken, choose service "location" eintragen und auswählen
c) "You enter an area" wählen und Adresse eingeben und Durchmesser des Bereichs anpassen, anschließend "create trigger".d) Dann +Zeichen wählen.
e) choose action service "web" eintragen und "Maker webhooks" auswählen
f) "make a web request" anklickeng) web request ausfüllen mit URL aus dem cloud Adapter (ganz unten unter "Use following link for IFTTT:"), Method: post, content type: text/plain, Body: z.B. "anwesend" (kann irgendein Wort sein, muss nur später im Script übereinstimmen), Create Action
h) Finishi) Schritte a) bis h) wiederholen mit dem Unterschied: unter c) "You exit an area" auswählen. Auch sollte man dann einen etwas anderen Durchmesser wählen als bei "Enter an area", sonst kann es hin- und her springen wenn man auf der Grenze steht. Und unter g) ein anderes Wort wählen, z.B. "abwesend".
j) im cloud Adapter muss auch unter "IFTTT key:" der Schlüssel eingetragen werden. Diesen bekommt man, wenn man unter ifttt.com unter search "web" einträgt und "Maker Webhooks" auswählt und auf Documentation klickt. Ganz oben steht der Key.
Soweit so gut. Nun würde also beim Eintreten des Bereichs immer das Wort "anwesend" unter Objekte cloud.0.services.ifttt geschrieben bzw. "abwesend" beim Verlassen des Bereichs.
2.) Script (Blockly) erstellen:
Blockly Export:<xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml"> <block type="create" id="qu7W2Y5SH-*+[8(LonoR" x="88" y="38"><field name="NAME">anwesend</field></block> <block type="on_ext" id="dbg(X)^b2OxZmo_S(0U*" x="87" y="163"><mutation items="1"></mutation> <field name="CONDITION">any</field> <value name="OID0"><shadow type="field_oid" id="3hN7xt0ku4N}6Gr7:8_q"><field name="oid">cloud.0.services.ifttt</field></shadow></value> <statement name="STATEMENT"><block type="controls_if" id="mD.f%F*8a0^UgmsIiT_Z"><mutation elseif="1"></mutation> <value name="IF0"><block type="logic_compare" id="M,T+P1^nQ`r}*v!n+pO("><field name="OP">EQ</field> <value name="A"><block type="get_value" id="X|T?jzNLp]YCJ^9#n:JJ"><field name="ATTR">val</field> <field name="OID">cloud.0.services.ifttt</field></block></value> <value name="B"><block type="text" id="@[^rX@`vScz#trZ:GymZ"><field name="TEXT">abwesend</field></block></value></block></value> <statement name="DO0"><block type="control" id="otX=gfMr9!^yJv{ypT4|"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.anwesend</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="{GV[yA.UL;F)iWnV(4:~"><field name="BOOL">FALSE</field></block></value></block></statement> <value name="IF1"><block type="logic_compare" id="Ny++x_(LNU/~2NI02uT4"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="B5E{E33tf-?wA|%XKK=B"><field name="ATTR">val</field> <field name="OID">cloud.0.services.ifttt</field></block></value> <value name="B"><block type="text" id="IuBo%n*7yI4|#@|%NG8h"><field name="TEXT">anwesend</field></block></value></block></value> <statement name="DO1"><block type="control" id="kpI@vP}XwBll,e+y!@++"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.anwesend</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="@Yo!J4e]3e19!]wC;ib{"><field name="BOOL">TRUE</field></block></value></block></statement></block></statement></block></xml>
-
Super!
Vllt sollte man den gesendeten Text doch etwas erweitern mit z.B. "Location: an/abwesend" damit man wenigstens die Chance hat noch andere IFTTT-Nachrichten auszuwerten
Aber das ist dann persönliche implementierung
-
Super!
Vllt sollte man den gesendeten Text doch etwas erweitern mit z.B. "Location: an/abwesend" damit man wenigstens die Chance hat noch andere IFTTT-Nachrichten auszuwerten
Aber das ist dann persönliche implementierung `
Danke.Habe ich aber noch nicht verstanden, was du meinst. Ich kann doch beliebig viele Wörter nehmen und auf andere Gegebenheiten triggern.
Ich habe z.B. zum Testen als trigger den Alexa Service "Say a specific phrase" mit Wort "test". Dann sagt man "Alexa trigger test" und es passiert dann das was man eingestellt hat.
-
Du hast vollkommen recht, Ich meine nur das die Idee textuell ein "Um was geht es" im Text voranzustellen flexibler ist.
Jetzt hast Du ein handy und es reicht "anwesend" und "abwesend". Wenn ein zweites dazu kommt brauchst Du schon "anwesendHandy2" oder so.
Ich denke nur das eine grobe Idee zur "Struktur der übergebene Texte" sinn macht, also etwas wie
"<thema>: <status>, <details>"
In der Anwendung dann z.B.:
"Location: anwesend, HandyIngo"
Dann kann man das parsen anhand der "trennzeichen" und dann im JavaScript verteilen.</details></status></thema>
-
Aah… jetzt habe ich verstanden. Hast natürlich vollkommen recht. Im Produktivsystem habe ich es auch mit meinem Namen versehen
-
Vielen Dank für das Tutorial. Nun weiß ich endlich, wie Webhooks funktionieren
Würde man bei mehreren Teilnehmern dann mehrere IFTTT-Accounts und Cloud-Instanzen verwenden? Oder
kann das Applet dann auch einfach mehrfach bei verschiedenen Benutzern den Eintritt/Austritt in die GPS-Zone melden?
In diesem Fall müsste man sich das Ergebnis ja einfach zwischenspeichern in globalen Variablen.
Für den Status anwesend (Alarm aus) finde ich es sehr gut da höhere Reichweite als IP-Scan. Alarm soll ja möglichst frühzeitig aus sein wenn
man nach Hause kommt.
Für den Status Abwesend (Alarm ein) bräuchte man m.E. jedoch noch
eine Ping-IP-gestützte-Variante. Es kann ja mal sein, dass GPS versehentlich deaktiviert wurde.
EDIT: Aber ich sehe ja, mit dem Radar-Adapter gibt es hier auch schon wieder etwas Fertiges. Prima
-
Vielen Dank für das Tutorial. Nun weiß ich endlich, wie Webhooks funktionieren
Würde man bei mehreren Teilnehmern dann mehrere IFTTT-Accounts und Cloud-Instanzen verwenden? Oder
kann das Applet dann auch einfach mehrfach bei verschiedenen Benutzern den Eintritt/Austritt in die GPS-Zone melden?
In diesem Fall müsste man sich das Ergebnis ja einfach zwischenspeichern in globalen Variablen. `
Habe ich noch nicht ausprobiert. Aber ich denke man könnte den gleichen ifttt account auch auf anderem Handy nutzen und es würde auch mit dem einen cloud adapter funktionieren. Der Person sollte man aber schon vertrauen, dort wird ja die ifttt-url eingetragen. Ich würde aber auch einen neuen ifttt-account anlegen, sonst tauchen ja auch alle ifttt anwendungen dort auf, auch wenn man die dann einzeln ausschalten kann, aber man könnte sie auch verändern. -
Der Person sollte man aber schon vertrauen, … `
Muss ich mir noch mal stark überlegen, wie vertrauenswürdig meine Frau ist :lol: :lol: :lol:
Ich werde es demnächst mal testen und mich dazu noch mal melden. Warte aktuell noch auf die G-Tags und dann werde
ich die komplette Steuerung mal aufsetzen.
-
Moin,
ich bin gerade auch einer IFTTT Anwesenheits-Erkennung dran, und bin daher auf Deinen Artikel gestoßen.
Auf meinem ersten Gerät läuft das alles auch schon problemlos, jetzt wollte ich ein zweites Gerät hinzufügen.
Dabei hatte ich es zuerst so vor, dass das zweite Geräte auch einen eigenen IFTTT Account.
Problem tritt aber dann bei der Kopplung mit dem KEY in ioBroker auf, da ich hier ja nur einen Key eingeben kann.
Dann dachte ich okay, ich löse das über den selben IFTTT Account, nur kann ich jetzt hier ja nicht
verschiedene Body-Parameter übergeben, um die Person eindeutig zu erkennen.
Wie löst ihr das mit mehreren Personen?
Grüße,
Matthias
-
Hallo zusammen,
vielen Dank für deine Anleitung, soweit habe ich auch alles verstanden und auch umgesetzt. Leider habe ich ein kleines Problem bei der IFTTT Url.
Da wird bei mir leider nur angezeigt : https://iobroker.net/ifttt/
Das kann ja dann nicht funktionieren. So wie ich es vestanden habe. auch aus YT- Vides sollte hier ja ein eindeutiger Link auf meinen User sein. IFTTT Key und APP- Key sind eingetragen. Hat das schonmal jemand gehabt?
Screenshot hängt an.
Schonmal vielen Dank!
6277_ifttt.png -
Key und APP- Key sind eingetragen. Hat das schonmal jemand gehabt? `
Hab genau das Gleiche hast du hier schon eine Lösung gefunden?
-
-
Hallo,
ich würde auch gern die Anwesenheitserkennung mit Location über IFTTT machen, nur müsste das ebenfalls bei zwei Personen erfolgen. Seid ihr da schon zu einer Lösung gekommen?
Beste Grüße,
Schlenz
-
Hallo,
ich würde auch gern die Anwesenheitserkennung mit Location über IFTTT machen, nur müsste das ebenfalls bei zwei Personen erfolgen. Seid ihr da schon zu einer Lösung gekommen?
Beste Grüße,
Schlenz ` ja, jeweils zwei Accounts machen.
ich habe einmal Pro und einmal Free Cloud, sowie zweimal ifttt.
![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201805 ... d3db4b.jpg">https://uploads.tapatalk-cdn.com/20180518/f67d3b8b9a254d5205ade404c4d3db4b.jpg</link_text>" /> -
Ah, Ok. Danke dir. Da bei uns life360 in Benutzung ist, werde ich es mal darüber probieren.
Beste Grüße, Schlenz
-
So, nun Infos zum Test mit Life 360 und der Anwesenheitserkennung über IFTTT:
die Schaltung entsprechender Scripte funktioniert problemlos für "letztes Familienmitglied verläßt" und "erstes Familienmitglied betritt" die Geozone. Nur mit der Darstellung der einzelnen Personen in VIS gibt es ein Problem. Mich habe ich über My Location dargestellt. Meine Frau über Live 360. Bei Life 360 über IFTTT kann man aber leider nur zwischen "Ich verlasse…" bzw. "komme an..." und "der letzte.." bzw. "der erste.." auswählen. Leider nicht jedes einzelne Familienmitglied.
Meine Frau ist bei IFTTT mit ihren Zugangsdaten für Life 360 eingeloggt. Ihre Visualisierung funktioniert sehr gut. Da wir aber den selben IFTTT Account nutzen, springt "my Location" nun natürlich von Handy zu Handy. Meine Frau könnte sich nun einfach bei IFTTT auf dem Handy ausloggen... dann wäre es kein Problem und würde mit jeweils nur einem Account und einem cloud-Adapter gehen. Doof nur, dass sie IFTTT Buttons auf dem Homescreen für ioBroker Schaltungen nutzt und diese dann leider weg wären.
Also zur reinen Anwesenheitssteuerung eignet sich Life 360 super. Zur Visualisierung der Anwesenheit von mehreren Personen leider nicht.
Ich werde jetzt wohl auch den zweiten Cloud-Adapter installieren.
Beste Grüße,
Schlenz
-
Key und APP- Key sind eingetragen. Hat das schonmal jemand gehabt? `
Hab genau das Gleiche hast du hier schon eine Lösung gefunden? `
Hinter das /ifttt/DEIN_APP_KEY und es hat bei mir funktioniert. `
@Mrfii: das würde ich gerne machen aber das Feld ist Read Only. Weisst du wie man das Feld beschreiben kann?
-
Hab genau das Gleiche hast du hier schon eine Lösung gefunden? `
Hinter das /ifttt/DEIN_APP_KEY und es hat bei mir funktioniert. `
@Mrfii: das würde ich gerne machen aber das Feld ist Read Only. Weisst du wie man das Feld beschreiben kann? `
Ich habe das selbe Probem!
Kann ich IFTTT nur in der Pro Version nutzen?!
-
Ihr tragt das nicht in iobroker unterm cloud-adapter und services und IFTTT ein. Ist normal, dass man das Feld "https://iobroker.net/ifttt/" nicht beschreiben kann.
Ihr müsst es direkt bei IFTTT machen. Hier unter Make a web request bei URL: https://iobroker.pro/ifttt/APP-Key.
Die APP-Key findet ihr wiederum bei iobroker beim cloud Adapter unter Einstellungen.
Ich weiß nicht, ob es nur mit cloud Pro geht.
Geht wohl auch weiterhin mit der nicht-Pro-Version wie oben dslraser geschrieben hat.
-
Vielen Dank. Verwirrend ist halt, dass bei vielen Videos dort mehr steht was den Eindruck erweckt, dass es sich um ein beschreibbares Feld handelt
Habe das nun im Web Request angepasst. Der kommt zwar noch immer nicht bei ioBroker an oder wird dort falsch verarbeitet aber das muss ich noch genauer untersuchen
Gruss Webdb