- ioBroker Anwesenheitserkennung im Smarthome
- ioBroker Anwesenheitserkennung mit GeoFency
- ioBroker Anwesenheit mit FritzBox und TR064-Adapter
Bei uns im Smarthome lassen wir die ioBroker Anwesenheitserkennung mit GeoFency durchführen. Bis zum heutigen Tag ist diese sehr zuverlässig. Geofency ist eine iOS App für das iPhone. Im ioBroker steht ein Adapter zur Verfügung. Die Anwesenheitserkennung mit Geofency arbeitet mit einem geolokalen Bereich – anhand von Geodaten. Die Lokalisierung des exakten Standorts erfolgt über die GeoFency App.
Die Geofency App ist eine Anwendung für das iPhone, um Zeiten an diversen Standorten zu erfassen. Die An- und Abwesenheit eines Ortes werden automatisch von der App ein- respektive ausgecheckt. Durch die Webhook-Funktion ist die Steuerung des eigenen Smarthomes möglich. Diese Funktion werden wir auch in diesem Beispiel verwenden, um einen Request an den iot-Adapter von ioBroker zu senden und damit die An-/Abwesenheit bestimmen.
Table of Contents
Was brauchen wir für die ioBroker Anwesenheitserkennung mit GeoFency

- Geofency APP (nur iOS)
- Geofency Adapter (ioBroker)
- ioBroker iot-Adapter (Pro)
- JavaScript Adapter (ioBroker)
Lasst uns nun gemeinsam Schritt für Schritt die Geofency App und den GeoFency Adapter installieren und konfigurieren. Die Einstellungen klären wir im Detail anhand von Screenshots und Beschreibungen.
Aus Sicherheitsgründen habe ich mich für den Weg über die ioBroker Cloud entschieden. Eine Portfreigabe im Router, um die Geodaten in Empfang zu nehmen, stand zu keiner Zeit zur Debatte. Die Empfehlung liegt hier klar beim Cloud/iot-Adapter von ioBroker. Ich werde euch dennoch die direkte Variante zeigen, insofern es diesen Beitrag nicht von der Länge überreizt. Ansonsten werde ich einen weiteren Beitrag schreiben.
Installation und Konfiguration vom GeoFency Adapter
Zuerst installieren wir den ioBroker Geofency Adapter zur Präsenzerkennung. Dazu klicken wir im ioBroker auf Adapter und geben ins Suchfeld Geofency ein. Mit einem Klick auf das +-Symbol fügen wir eine Instanz hinzu.

Es öffnet sich die Konfigurationsseite des Adapters. Dort tragen wir die folgenden Informationen ein:

Der Ortsname für Zuhause kann frei ausgewählt werden. Server aktivieren muss nicht aktiviert sein, da die Verbindung nicht direkt, sondern über die Cloud hergestellt wird. Ebenso wenig Relevanz haben die SSL Einstellung, sowie der Benutzername und das Passwort.
iot-Adapter für Geofency Webhook konfigurieren
Im iot-Adapter konfigurieren wir die Services (Dienste), um die Daten des Webhooks in einem Datenpunkt speichern zu können. Zunächst gehe ich davon aus, dass ihr den iot-Adapter installiert sowie lauffähig eingerichtet habt. Nun können wir die Services konfigurieren, damit die Webhooks von der Geofency App an das Ziel kommen. Die Einstellungen im iot-Adapter von ioBroker sehen wie folgt aus.
Navigiert im ioBroker Admin auf Instanzen und geht in die Konfiguration des iot-Adapters (Schraubenschlüssel-Symbol). Dort klickst ihr auf den Reiter: Services und IFTTT.

Füge zu der Whitelist für Services einen Dienst hinzu und drücke den blau gewordenen Button mit dem Plus-Symbol. Merke dir gleich den Link für eigene Services, indem du ihn in eine Textdatei speicherst. Der Link muss für den Geofency Webhook angepasst werden, indem wir den zuvor eingetragenen Dienst zur URL hinzufügen.
Ich empfehle für weitere Benutzer je einen weiteren Dienst anzulegen, um die Anwesenheit getrennt zu erkennen. Bitte daran denken, dass die URL entsprechend angepasst wird.
Die Webhook URL sieht später so aus.
https://service.iobroker.in/v1/iotService?service=custom_geofency_jan&key=den-gebe-ich-nicht-bekannt&user=test%40test.org&data=<SOME_TEXT>
Geofency App installieren und konfigurieren
Als nächstes laden und installieren wir die Geofency iPhone App und konfigurieren sie wie folgt:
Wir legen einen neuen Ort über das Plus-Symbol an. Hier könnt ihr die Art selbst auswählen, in dem ihr die folgenden Optionen nutzt:

- Aktueller Ort
- Adresssuche
- Kontakte
- iBeacon
- Koordinaten
Nach der Erstellung des Orts klicken wir auf die drei Punkte rechts neben dem Ort, um in die Einstellungen zu kommen. Hier bearbeiten wir die Webhook-Einstellungen, sowie die URL und HTTP Methode.
Wir konfigurieren jetzt die Webhookeinstellungen, wie es auf den Bildern zu sehen ist. Die URL Einstellungen und die HTTP Methode werden angepasst, damit der Webhook funktioniert. In den URL Einstellungen hinterlegen wir die oben genannte URL des ioBroker iot-Adapters, sowie weitere optionale Einstellungen für Benachrichtigungen. Die HTTP Methode setzen wir auf POST (JSON enkodiert).
JavaScript für Datenweitergabe vom iot- zum Geofency-Adapter erstellen
Einen Automatismus gibt es nicht, um die Daten vom iot-Adapter zum Geofency-Adapter weiterzureichen. Ein kleines JavaScript hilft uns bei dieser Aufgabe. Es schaut, ob sich der Datenpunkt des iot-Dienstes aktualisiert und reicht die Daten an den Geofency Adapter weiter.
on({id: "iot.0.services.custom_geofency_jan", change: 'any'}, function(obj) { try { var data = JSON.parse(obj.state.val); } catch (err) { data = null; } if (! data) { log('ERROR: Geofency data invalid: ' + data, 'error'); return; } var user = 'jan'; sendTo('geofency.0', {'user': user, 'data': data}); });
Das Fazit der ioBroker Präsenzerkennung mit Geofency
Die ioBroker Anwesenheitserkennung mit Geofency läuft mittlerweile das dritte Jahr und ist sehr stabil. Die Präsenzsteuerung übernimmt zuverlässig die Lichsteuerung bei Abwesenheit, außerdem wird über Alexa benachrichtigt, wenn ich auf dem Weg vom Büro nach Hause bin. Die einstellbaren Nachrichten der Webhooks sind am Anfang sehr nützlich, wobei es vereinzelt auch Ausfälle geben kann.
Hallo.
Wir nutzen die oben genannte Konstellation mit App und ioBroker via iot auch schon seit ungefähr 3 Jahren und alles läuft eigentlich sehr zuverlässig. Die einzige Ausnahme ist manchmal die Nutzung im Auto und dann kommt es sehr drauf an, welches Iphone mit welchem Auto:
Iphone 13 in keinem Auto Probleme.
Iphone 12 in einem Auto Probleme, im anderen nie
Iphone Xr in allen Autos Probleme.
Wenn ich von Problemen spreche, dann ungefähr in 1/4 aller Fälle. Dabei registriert die App immer, ob man drinnen oder draußen ist, jedoch kommt der Webhook nicht unbedingt durch.
Leider habe ich bisher im Internet nur einmal gelesen, dass jemand das gleiche Problem hatte, es gab dazu aber keine Lösung.
Gruß Ramon
Hallo Ramon,
in dem Ausmaß habe ich die gescheiterten Webhooks nicht. Bei mir kommt das einmal im Monat vor. Bin 2-3 mal weg täglich – also 6 Webhooks.
Manchmal kommt es mir so vor, als wäre kein Internet mobil vorhanden…
Ich glaube dazu gibt es in der App sowas wie Logfiles.
Grüße, Jan
Ja, das mit dem mobilen Internet ist mir auch schon aufgefallen, als meine Kinder mal meinten mobile Daten auszuschalten (um ein bisschen Volumen zu sparen) und schon kam kein Webhook mehr an. Leider merkt die App es nicht, wenn keine Datenverbindung besteht und sendet somit die Webhooks später auch nicht nach.
Das wäre doch mal ein Feature-Request wert. Der Entwickler kommt aus DE. Ich habe damals Kontakt gehabt und umgehend Feedback erhalten.
Tolle Anleitung, und heute habe ich mich mal drangewagt. Ich habe auch in der Webhook Url mein Geofence_xxx eingetragen sowie ich den Dienst genannt habe. Was aber kommt bei dem key, wo bei Dir steht: „den-gebe-ich-nicht-bekannt“ rein?
Hi Andy,
das ist der Key von https://iobroker.pro.
Bei der Anmeldung bzw. Registrierung des Dienstes wird dir dieser bekannt gegeben.
Gruß, Jan