In diesem Artikel zeige ich dir, wie du eine Anwesenheitserkennung in openHAB 2 umsetzen kannst. Bei der hier gezeigten Methode überprüft dein openHAB Server mit Hilfe eines Add-Ons, ob dein Handy (oder ein beliebiges anderes Gerät) im WLAN mit einem Ping erreichbar ist. Das ganze lässt sich natürlich auch mit mehreren Geräten parallel einrichten, sodass die Anwesenheit eines ganzen Haushaltes verwaltet werden kann.
Inhalt
Eine andere, manchmal etwas zuverlässigere Methode zur Anwesenheitserkennung findest du in diesem Artikel, bei dem wir das ganze mit Hilfe der openHAB App und übermittelten Gerätedaten deines Handys umsetzen.
Network Binding installieren
Installiere dafür als erstes das „Network Binding“ aus dem Erweiterungs-Store in openHAB. Dieses findest du unter „Add-Ons“ > „Bindings“ und dann mit der Suche. Warte hier, bis auf dem Button wo vorher „Install“ stand, „Uninstall“ steht, nachdem du darauf geklickt hast.
Einstellungen im Router
Als nächstes musst du in die Web-Oberfläche deines Routers gehen. Hier kannst du die IP-Adresse des Gerätes sehen, das du gerne anzeigen lassen möchtest. Jetzt muss festgelegt werden, dass dem Gerät immer dieselbe IP-Adresse zugewiesen werden soll. Das hat den einfachen Grund, dass sonst nicht sichergestellt wäre, dass von openHAB immer das richtige Gerät überprüft wird, da sich die IP-Adressen auch ändern können. Ich zeige es hier Mal am Beispiel einer FRITZ!Box.
Hier kannst du unter „Heimnetz“ > „Netzwerk“ das passende Gerät auswählen und dann die Checkbox „Diesem Gerät immer die gleiche IPv4-Adresse zuweisen“ anklicken. Jetzt noch auf „Anwenden“ klicken und schon sind die Einstellungen auf der Seite des Routers fertig.
Geräte hinzufügen
Nachdem das Add-On dann installiert ist und du die Einstellungen in deinem Router vorgenommen hast, kannst du Geräte hinzufügen. Das heißt, dass du, in der Regel vermutlich dein Handy, mit der passenden IP-Adresse, hinzufügst. Vom vorherigen Schritt kennst du ja bereits die IP-Adresse, welche du hinzufügen möchtest. Jetzt kannst du also in der „Inbox“ nach neuen Geräten suchen und das passende auswählen. Falls es nicht angezeigt wird, kannst du es auch mit Hilfe der IP-Adresse ohne Probleme manuell hinzufügen.
Vergib jetzt einen Namen für das Thing und speichere es.
Item erstellen
Erstelle nun, entweder in der Benutzeroberfläche, oder manuell, wie ich es hier zeigen werde. Das Item muss von dem Typ „Switch“ sein. Ich habe auch eine Gruppe „Anwesenheit“ erstellt, um die Verwaltung von mehreren Geräten einfacher zu gestalten. Wie das geht kannst du auch in diesem Artikel nachlesen. Hier ist ein Beispiel, wie das Item, manuell erstellt, aussehen könnte:
Switch handy "Anwesenheitsstatus [MAP(anwesenheit.map):%s]" <motion> (gAnwesenheit)
Code-Sprache: PHP (php)
Channel verbinden
Gehe nun unter „Configuration“ > „Things“ uns wähle das eben erstellte Gerät aus. Verbinde hier nun das passende Item mit dem Channel „Online“. Dieser setzt dann den Schalter auf ON, wenn das Gerät online ist und auf OFF, wenn nicht.
Map erstellen
Um den Zustand besser visualisieren zu können, kannst du eine Map erstellen, mit der der Status des Schalters in einen Text daneben umgewandelt werden kann. Dann steht also neben dem Schalter etwas wie „Zuhause“ oder „Unterwegs“. Installiere erst das „Map Transformation“ Add-On in der Paper UI. Wenn du dies erledigt hast, kannst du dieses konfigurieren. Lege dafür eine Datei mit dem Namen „anwesenheit.map“ im Verzeichnis „/IP-ADRESSE-DES-OPENHAB-SERVERS/transform/“ an. Falls du nicht weißt wie das geht, kannst du es hier nachlesen. Schreibe jetzt folgenden Inhalt in die Datei:
ON=Zuhause
OFF=Unterwegs
NULL=Unbekannt
Code-Sprache: PHP (php)
Du kannst natürlich auch andere Bezeichnungen verwenden, jedoch sollte die linke Seite der Gleichheitszeichen gleich bleiben.
Einsatzmöglichkeiten
Nun kannst du die erstellten Items in verschiedenen Wegen einbinden. Denkbar wäre z.B., sie in der Sitemap darzustellen, um für alle Nutzer die Anwesenheit anderer Personen zu visualisieren. Eine andere Möglichkeit wäre, es in einer Regel zu verwenden, um z.B. die Heizung automatisch auszuschalten, wenn alle Bewohner das Haus verlassen haben.
Ich hoffe ich konnte dir mit diesem Beitrag helfen und würde mich freuen, wenn du dein Einsatzgebiet in den Kommentaren teilst ;-). Wenn du noch eine Frage hast, kannst du sie natürlich auch gerne in einem Kommentar stellen.