Metainformationen zur Seite
Plugin-Daten | |
---|---|
Autor | Gagi |
Logo | |
Status | STABLE |
Version | 2.3 |
Min. LB Version | 1.4 |
Release Download | https://github.com/Gagi2k/LoxBerry-Plugin-WifiScanner/archive/v2.3.zip |
Beschreibung | Scannt das Netzwerk nach Geräten und sendet den Status an den Miniserver. Zum Beispiel zur Anwesenheitserkennung. |
Sprachen | EN, DE |
Wifi (LAN) Scanner
Download
Alle releasese gibts hier: https://github.com/Gagi2k/LoxBerry-Plugin-WifiScanner/releases
Installation
Das Plugin wird wie alle anderen Plugins per ZIP-Datei im Loxberry installiert.
Funktion des Plugins
Das Plugin basiert auf dem Script hier aus dem Wiki.
Hauptsächlich dient das Plugin zur Anwesenheitserkennung von bestimmten Benutzern im WLAN. Dafür werden den Benutzern eine oder mehrere MAC-Adressen zugeordnet und das Plugin fragt die FritzBox periodisch ab ob die eingestellten MAC-Adressen aktuell im Netzwerk verfügbar sind. Für alle anderen Router oder als Fallback werden alle Geräte mittels aktivem Scan abgefragt.
Das Ergebnis wird per UDP oder MQTT an den Miniserver gesendet.
Konfigurationsoptionen
Zunächst kann der Scanner über die Schaltfläche "Scanner aktivieren" angeschalten werden.
Der Scanner scannt dann periodisch nach den eingestellten Benutzern, die im nächsten Schritt festgelegt werden.
Die ComboBox hinter der "Scanner aktivieren" Schaltfläche legt den Abfragezyklus fest.
Über den "Neuer Benutzer" Button, kann ein neuer Benutzer angelegt werden, der in den dann erscheinenen Feldern konfiguriert werden kann.
Jeder Benutzer muss mit einem eindeutigen Namen identifierbar sein. Die Software prüft die Eindeutigkeit nicht ab, aber nachdem der Name als Kennung zum Miniserver geschickt wird, treten hier spätestens Probleme auf.
Jeder Benutzer wird durch eine oder mehrere MAC-Adressen identifiziert. Mehrere MAC-Adressen können durch einen ; getrennt eingestellt werden.
Anstatt einer MAC-Adresse kann auch eine IP-Adresse verwendet werden, bzw. auch beides zusammen.
Die MAC Adressen für eure Geräte findet ihr am besten in der Netzwerkübersicht in eurer Fritzbox oder ihr benutzt eine Scanner Software wie LANScan.
Fritzbox-Anbindung
In der Section "Fritzboxanbindung" könnt ihr einstellen wie eure FritzBox zu erreichen ist. In den meisten Fällen muss hier nichts verändert werden.
Für die Abfrage an der FritzBox werden MAC-Adressen im Format 00:80:41:ae:fd:7e
benötigt. Über eine Abfrage bei der FritzBox wird der Online Status ermittelt.
Sollte das Gerät Offline sein, kann zusätzlich noch ein "Aktiver Scan" durchgeführt werden.
Alle Anderen Router
Für alle anderen Router wird der "Aktive Scan" verwendet. Hier werden mittelt ping oder arping Pakete versendet die vom Gerät beantwortet werden müssen um einen Benutzer als online zu markieren.
Dieser Modus kann auch als Fallback für die Fritzboxanbindung verwendet werden. In diesem Fall wird erst die FritzBox befragt und nur wenn das Gerät offline ist, nochmal aktiv der Status ermittelt.
Das aktive Scannen geschiet mittels IP-Adresse. Wurde eine IP-Adresse für einen Benutzer angegeben wird diese verwendet. Wurde nur eine MAC-Adresse angegeben, wird die MAC-Adresse in eine IP-Adresse umgewandelt.
Diese Umwandlung geschieht mittels ARP. Sollte die lokalle ARP-Tabelle nicht gefüllt sein oder die IP-Adressse hier nicht auftauchen, wird die IP-Adresse aktiv ermittelt.
Mittels des "Verwende ARP-Cache" Schalters kann die Verwendung der ARP-Tabelle umgangen werden. Dann wird die IP-Adresse immer aktiv ermittelt.
iPhones
iPhones reagieren nicht zeitnah auf normale "ping" Anfragen, da diese meistens im "Deep Sleep" Zustand sind. Um ein iPhone im Netzwerk zu erkennen, kann das "Ping Kommando" auf arping geändert werden.
Diese speziellen pings werden von iPhones zuverlässiger beantwortet.
Wifi Repeater
Im Normalfall bindet ein Wifi Repeater alle Geräte natlos ins Netzwerk ein. In manchen Fällen ändert sich allerdings die MAC-Adresse für diese Geräte zur Adresse des Repeaters oder zu einem anderen Schema.
In solch einem Fall würde die Abfrage mittels MAC-Adresse nicht richtig funktionieren. Der "Aktive Scan" funktioniert hier weiterhin, allerdings muss der "ARP-Cache" in diesem Fall ausgeschaltet werden, da die Zuordnung von MAC zu IP-Adresse nicht mehr eindeutig ist und jedes mal aktiv ermittelt werden muss.
Miniserver-Anbindung
Die Anbindung an den Miniserver geschieht entweder mittels UDP-Port oder über MQTT
UDP
Für die Anbindung über UDP muss in der "Miniserver-Anbindung" der UDP-Port gewählt werden mit dem die Daten an den Miniserver gesendet werden
Einrichtung in der Loxone Config Software
Zuerst muss ein neuer Virtueller UDP Eingang angelegt werden. Der UDP Empfangsport muss passend zum gewählten Port in der Plugin Konfiguration gewählt werden. Bei Senderadresse bitte nichts eingeben, ansonsten können die Daten nicht verarbeitet werden.
Hier ein Beispiel für den Standard Port:
Für jeden Benutzer wird nun ein neuer Virtueller UDP Eingang Befehl angelegt.
Die Befehlskennung ist: \i<BENUTZER>:\i\v
<BENUTZER> muss dabei durch den eingestellten Benutzernamen in der Plugin Konfiguration ersetzt werden. Hier ein Beispiel für den Benutzer "Dominik"
MQTT
Diese Option steht nur zur Verfügung wenn das MQTT Gateway Plugin installiert wurde.
Das entsprechende Topic wird automatisch als Subscription für das Gateway angelegt. Alle anderen Einstellungen müssen im MQTT Gateway erfolgen.
Scan on Demand
In den meisten Fällen wir der Intervall der Abfrage sehr konservativ gewählt. In solchen Fällen kann der Status aber nicht mehr für zeitkritische Fälle, wie zum Beispiel das Deaktivieren der Alarmanlage, verwendet werden.
Für diesen Zweck, kann die Abfrage auch mittels URL vom Miniserver gestartet werden.
http://<Loxberry-IP>/plugins/wifiscanner/scan.cgi
Roadmap
- Englische Übersetzung (1.1)
- Scannen nach IP-Adressen (2.0)
- Funktion unabhängig von einer FritzBox (2.0)
- Mehrere Modi um die Abfragehäufigkeit über Loxone anzupassen (2.0 über Miniserver)
- Update auf neue Loxberry Plugin API (2.0)
- Loxberry Update Mechanismus (2.0)