Zum Hauptinhalt springen

Ping & Wake-on-LAN Smart-Home-Integration, kostenlos und Open Source

Ping & Wake-on-LAN-Integration für Gladys Assistant

Sieh, welche PCs, NAS, Fernseher oder Handys an sind, und wecke sie per Wake-on-LAN.

Sieh, welche PCs, NAS, Fernseher oder Handys in deinem Netzwerk an sind, und schalte sie aus Gladys heraus ein. Jeder überwachte Host wird ein Gladys-Gerät, das anzeigt, ob er antwortet (online / offline) und wie schnell (Latenz), mit einer Schaltfläche Aufwecken, wenn seine MAC-Adresse bekannt ist (Wake-on-LAN).

Typische Anwendungen: das NAS vor einer Sicherung einschalten und warten, bis es antwortet, auf dem Dashboard sehen, dass die Konsole der Kinder noch läuft, wissen, dass ein Handy zu Hause ist (Anwesenheit), benachrichtigt werden, wenn ein Server nicht mehr antwortet.

Ohne die Hardware entwickelt: Rückmeldungen sind willkommen. Die Integration ist durch automatische Tests abgedeckt, wurde aber noch nicht in einer echten Gladys-Installation mit einem echten Wake-on-LAN-Rechner ausprobiert. Erzähl uns im Gladys-Forum, wie sie bei dir läuft.

Was du bekommst​

  • Ein Gerät pro Host, mit diesen Funktionen:

    FunktionTyp in GladysZeigt
    OnlineAnwesenheitssensor (ja/nein)grün „Anwesenheit erkannt“, wenn er antwortet, sonst rot
    LatenzDauer, in Millisekundenmittlere Antwortzeit der letzten Prüfung (Verlaufsdiagramm)
    AufweckenTaster (nur mit MAC)Schieben sendet das Wake-on-LAN-Paket
  • Ein Dashboard-Widget Netzwerkgeräte: mehrere Hosts auf einen Blick, mit einer Schaltfläche Wecken für die ausgeschalteten.

  • Ein Szenen-Auslöser, Ein Gerät ist nicht aufgewacht, und zwei Szenen-Aktionen, Gerät aufwecken (Wake-on-LAN) (die warten kann, bis das Gerät antwortet) und Adresse prüfen.

Voraussetzungen​

  • Gladys Assistant 5.1.0 oder neuer.
  • Für die Prüfungen: Hosts, die von der Gladys-Maschine aus erreichbar sind, per IP-Adresse (am besten fest: reserviere sie in den DHCP-Einstellungen deines Routers) oder per DNS-Name. .local-Namen (mDNS) können in der Integration nicht aufgelöst werden.
  • Für Wake-on-LAN:
    • der Rechner ist im selben lokalen Netzwerk wie Gladys und am besten per Kabel angeschlossen (Wake-on-LAN über WLAN funktioniert selten);
    • Wake-on-LAN ist in seinem BIOS/UEFI und in seinem System aktiviert (Windows: Eigenschaften der Netzwerkkarte, Wake on Magic Packet; Schnellstart abzuschalten hilft oft; Linux: ethtool -s <interface> wol g; NAS: Energieeinstellungen);
    • seine MAC-Adresse (in der Geräteliste des Routers, oder per ipconfig /all, ip link).
  • Bei der Installation bittet Gladys dich, zwei Zugriffe zu erlauben: Wake-on-LAN-Zugriff (der Kern sendet die Magic Packets: der Container der Integration kann keine Broadcasts senden) und SSDP-Suche nach ssdp:all (die Netzwerksuche).

Konfiguration​

Einstellungen​

EinstellungStandardWirkung
Prüfintervall30 sWie oft jeder Host geprüft wird (15 s bis 5 min).
Offline nach1 MinuteZeit ohne jede Antwort, bevor ein Host als offline gilt. „Bei der ersten Prüfung ohne Antwort“ reagiert sofort.
Weck-Zeitlimit3 MinutenZeit, die ein geweckter Host zum Antworten hat, bevor Ein Gerät ist nicht aufgewacht auslöst.
Sprache der FunktionsnamenFranzösischNamen der Funktionen neuer Geräte (Online, Latenz, Aufwecken) und Sprache der Meldungen.

Einen Host hinzufügen​

Fülle unter Integrationen → Ping & Wake-on-LAN → Konfiguration das Formular Host hinzufügen oder ändern aus und starte es:

  • Name und IP-Adresse oder Hostname (Pflicht);
  • MAC-Adresse, um die Schaltfläche Aufwecken zu bekommen (jede Schreibweise: 64:e4:d5:b4:12:66, 64-E4-D5-B4-12-66…);
  • Broadcast-Adresse, nur wenn der Rechner das Standard-Wecken ignoriert (probiere die Broadcast-Adresse seines Netzwerks, z. B. 192.168.1.255);
  • Prüfmethode: Automatisch (Ping, dann TCP, wenn der Ping unbeantwortet bleibt), Nur Ping (ICMP) oder Nur TCP-Port;
  • TCP-Port: der Port, der probiert wird, wenn der Ping scheitert (z. B. 445 für einen Windows-PC, 62078 für ein iPhone). Ohne ihn probiert die automatische Methode einige übliche Ports;
  • Offline nach (dieser Host): ersetzt die Einstellung für diesen Host (Handys: 10 bis 30 Minuten).

Die Integration prüft den Host einmal und sagt dir, ob er antwortet. Öffne dann den Tab Entdecken und klicke auf Zu Gladys hinzufügen. Um einen Host zu ändern, starte das Formular erneut mit demselben Namen oder derselben Adresse: Das Gerät behält seinen Verlauf. Wurde die MAC-Adresse ergänzt, klicke im Tab Entdecken auf Aktualisieren, um die Schaltfläche zu bekommen. Host entfernen nimmt ihn aus der Liste (sein Gerät bleibt in Gladys, bis du es löschst).

Netzwerksuche​

Im Netzwerk suchen (und die Schaltfläche Scannen im Tab Entdecken) fragt Gladys nach den Geräten, die sich im Netzwerk ankündigen (UPnP/SSDP: Fernseher, NAS, Medienserver, Router, Drucker, Spielkonsolen, Windows-PCs mit aktivierter Netzwerkerkennung), und schlägt sie im Tab Entdecken vor, benannt nach ihrer UPnP-Beschreibung. Kennt die Gladys-Maschine ihre MAC-Adresse, kommt das Gerät mit der Schaltfläche Aufwecken. Handys und die meisten Rechner kündigen sich nicht an: Füge sie von Hand hinzu.

Geräte​

  • Online: 1, sobald der Host antwortet, 0, sobald er während der Zeit Offline nach nicht geantwortet hat. Ein noch nicht geprüfter Host hat keinen Wert.
  • Latenz: mittlere Antwortzeit der letzten Prüfung, in Millisekunden, erneut veröffentlicht, wenn sie sich um 20 % (mindestens 1 ms) ändert: Der Verlauf bleibt lesbar. Solange der Host offline ist, wird nichts veröffentlicht.
  • Aufwecken: sendet das Wake-on-LAN-Paket. Der Host wird dann alle 5 Sekunden geprüft; solange er stumm bleibt, wird alle 30 Sekunden erneut ein Paket gesendet, bis er antwortet oder das Weck-Zeitlimit abläuft.

So wird ein Host geprüft:

  • Ping (ICMP): drei Echo-Anfragen im Abstand von 0,2 s, 1 Sekunde Zeit zum Antworten.
  • TCP: eine Verbindung zu einem Port. Auch eine abgelehnte Verbindung beweist, dass der Host an ist: Nur Stille bedeutet offline. So werden Hosts erkannt, die Pings ignorieren (Windows-Firewall, manche Handys). Ohne Port probiert die automatische Methode 80, 443, 22, 445, 139, 3389, 5000, 8080, 8009 und 62078 gleichzeitig.

Gladys zeigt „Kein aktueller Wert“ für einen Wert, der älter als 48 Stunden ist: Ein unveränderter Zustand wird deshalb alle 12 Stunden erneut veröffentlicht.

Dashboard-Widget​

Dashboard bearbeiten → Widget hinzufügen → Netzwerkgeräte. Lass Angezeigte Geräte leer, um alle Hosts zu sehen (höchstens 10), oder wähle welche aus. Jede Zeile zeigt den Zustand eines Hosts: Online mit seiner Latenz, Offline oder Startet nach einem Wecken. Bis zu vier Schaltflächen Wecken erscheinen für die Hosts, die offline sind und eine MAC-Adresse haben.

Szenen-Auslöser​

Ein Gerät ist nicht aufgewacht löst aus, wenn ein von der Integration geweckter Host (Schaltfläche, Widget oder Szene) am Ende des Weck-Zeitlimits immer noch nicht antwortet. Der Filter Gerät ist optional. Variablen: Gerätename, Adresse, Gewartete Sekunden.

Vorsicht vor Schleifen: Eine Szene, die das Gerät bei diesem Auslöser erneut weckt, beginnt bei jedem Fehlschlag von vorn, alle paar Minuten, ohne Ende (ein vom Strom getrennter Rechner antwortet nie). Sende lieber eine Nachricht, oder hör nach einem einzigen weiteren Versuch mit einer eigenen Bedingung auf.

Für „das Gerät ist an / aus“ nimm den Kern-Auslöser Änderung von Gerätestatus auf der Funktion Online und hake Nur ausführen, wenn der Schwellenwert überschritten wird an: Der Zustand wird alle 12 Stunden erneut gesendet, und ohne das Häkchen würde die Szene jedes Mal neu starten.

Szenen-Aktionen​

  • Gerät aufwecken (Wake-on-LAN): Gerät (Pflicht) und Warten, bis es antwortet. Ohne Warten wird das Paket gesendet und die Szene läuft weiter. Mit Warten starten die nächsten Schritte, sobald das Gerät antwortet, oder nach 100 Sekunden (Gladys gibt einer Aktion höchstens 120 Sekunden). Ergebnisse: Antwortet (1 oder 0) und Startdauer in Sekunden. Ein Gerät, das schon an ist, wird nicht geweckt (Antwortet 1, Startdauer 0).
  • Adresse prüfen: eine IP-Adresse oder ein Hostname (Szenenvariablen erlaubt) und ein optionaler TCP-Port (dann wird nur dieser Port probiert). Ergebnisse: Antwortet (1 oder 0) und Latenz. Es wird kein Gerät angelegt.

Die Ergebnisse sind Zahlen (1/0), damit Nur fortsetzen, wenn sie vergleichen kann: Wähle das Ergebnis, =, und tippe 1.

Szenen-Beispiele​

  1. Nächtliche Sicherung auf dem NAS: Zeitabhängiger Auslöser um 2:00 Uhr → Gerät aufwecken NAS mit Warten, bis es antwortet → Nur fortsetzen, wenn: Antwortet = 1 → deine Sicherungsschritte (zum Beispiel HTTP-Anfrage senden an das NAS) → Nachricht senden mit dem Ergebnis Startdauer (aus der Variablenliste einfügen).
  2. Filmabend: in der Szene, die das Wohnzimmer vorbereitet → Gerät aufwecken Medien-PC (ohne Warten) → Warten 1 Minute → den Fernseher einschalten.
  3. Server-Überwachung: Änderung von Gerätestatus auf Online des Servers, Wert Keine Anwesenheit, Schwellenwert-Häkchen gesetzt → Nachricht senden „Der Server antwortet nicht mehr“. Eine zweite Szene auf Ein Gerät ist nicht aufgewacht → Nachricht senden mit den Variablen Gerätename und Gewartete Sekunden.

Fehlerbehebung​

  • Ein Host bleibt offline, obwohl er an ist: Er ignoriert Pings (Windows-Firewall, Handys). Wähle Prüfmethode → Nur TCP-Port mit einem Port, den er öffnet (445 für die Windows-Dateifreigabe, 3389 für Remotedesktop, 22 für SSH, 62078 für ein iPhone), oder behalte Automatisch mit diesem Port.
  • Ein Handy ist ständig offline und wieder online: Im WLAN-Ruhezustand antworten Handys minutenlang nicht. Gib dem Host Offline nach 10 bis 30 Minuten.
  • Die Konfiguration meldet, dass Ping (ICMP) nicht erlaubt ist: Das Docker deiner Gladys-Maschine lässt Container keine Pings senden (Docker älter als 20.10). Die Hosts werden dann nur per TCP geprüft: Gib jedem einen Port, oder aktualisiere Docker.
  • Aufwecken tut nichts: Prüfe die MAC-Adresse, ob Wake-on-LAN im BIOS/UEFI und im System aktiviert ist und ob der Rechner per Kabel angeschlossen ist. Probiere die Broadcast-Adresse seines Netzwerks. Ein Rechner, der vom Strom getrennt war, braucht oft einen normalen Start, bevor Wake-on-LAN wieder funktioniert.
  • Die Netzwerksuche findet nichts: Viele Geräte antworten nicht auf SSDP; füge sie von Hand hinzu. Meldet die Nachricht, dass die Suche nicht verfügbar ist, hat Gladys den SSDP-Zugriff verweigert.
  • „Kein aktueller Wert“ an einem Gerät: Die Integration ist vielleicht gestoppt; sieh dir ihre Protokolle im Tab Überwachung an.
  • Protokolle: auf der Seite der Integration in Gladys oder mit docker logs auf dem Host. Dort stehen nur der Start, ein Host, der offline geht oder zurückkommt, jedes Wake-on-LAN, und ein Problem einmal zu Beginn und einmal an seinem Ende. LOG_LEVEL=debug zeigt jede Prüfung.

Grenzen​

  • Nur IPv4-Adressen und DNS-Namen; .local-Namen (mDNS) werden nicht aufgelöst.
  • Wake-on-LAN erreicht das lokale Netzwerk der Gladys-Maschine: Einen Rechner in einem anderen Netzwerk (VPN, anderes VLAN) zu wecken, hängt von deinem Router ab, der Broadcasts meistens nicht weiterleitet.
  • Gladys sendet höchstens alle 2 Sekunden ein Magic Packet: Zehn Rechner auf einmal zu wecken, dauert 20 Sekunden.
  • Ein erfolgreiches Wecken heißt nur, dass das Paket gesendet wurde: Erst die nächsten Antworten beweisen, dass das Gerät an ist.
  • Höchstens 64 Hosts. Jede Prüfung sendet 3 Pings oder, per TCP, bis zu 10 Verbindungsversuche pro Host; nichts verlässt dein Netzwerk, es werden weder ein Konto noch ein Cloud-Dienst gebraucht.
  • Was die Integration speichert: die Liste der Hosts und ihre Optionen, in /data/hosts.json in ihrem Container.

Konfigurationseinstellungen​

Diese Einstellungen fragt Ping & Wake-on-LAN in seinem Konfigurationsbildschirm in Gladys ab.

EinstellungTypPflichtfeldBeschreibung
Deine HostssectionNeinFüge jeden zu überwachenden PC, jedes NAS, jeden Fernseher oder jedes Handy mit der Aktion „Host hinzufügen oder ändern“ unten hinzu und lege dann sein Gerät im Tab „Entdecken“ an. „Im Netzwerk suchen“ schlägt die Geräte vor, die sich ankündigen (UPnP), mit ihrer MAC-Adresse, wenn Gladys sie kennt.
PrüfintervallselectNeinWie oft jeder Host geprüft wird.
Offline nachselectNeinZeit ohne jede Antwort, bevor ein Host als offline gilt. Handys im WLAN-Ruhezustand antworten nicht immer: Gib ihnen 5 bis 10 Minuten (pro Host, in der Aktion unten).
Weck-ZeitlimitselectNeinZeit, die ein geweckter Host zum Antworten hat, bevor der Auslöser „Ein Gerät ist nicht aufgewacht“ auslöst. Bis dahin wird alle 30 Sekunden erneut ein Paket gesendet.
Sprache der FunktionsnamenselectNeinNamen der Funktionen neuer Geräte (Online, Latenz, Aufwecken) und Sprache der Meldungen.

So installierst du Ping & Wake-on-LAN in Gladys​

  1. Öffne in Gladys Integrationen: Ping & Wake-on-LAN erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
  2. Klicke auf Installieren. Gladys lädt das Docker-Image (ghcr.io/guim31/gladys-ping-wol:1.0.1) herunter, startet es in einer vom Kern isolierten Sandbox und erzeugt die Oberfläche der Integration (Geräte, Erkennung und Konfiguration).
  3. Öffne den Bildschirm Konfiguration der Integration, fülle die Einstellungen aus und speichere.
  4. Du kannst sie auch direkt über die URL ihres Repositorys installieren: https://github.com/guim31/gladys-ping-wol.

Ping & Wake-on-LAN benötigt Gladys >=5.1.0. Der Katalog in Gladys wird stündlich aktualisiert, eine neue Version ist also spätestens eine Stunde nach ihrer Veröffentlichung verfügbar.

Du nutzt Gladys noch nicht? Es ist kostenlos und Open Source: folge der Installationsanleitung, um loszulegen.

Über externe Integrationen​

Ping & Wake-on-LAN ist eine externe Integration: eine Community-Integration, die als Docker-Container verpackt und auf GitHub veröffentlicht wird. Gladys installiert sie mit einem Klick und führt sie in einer vom Kern isolierten Sandbox aus. Sie wird von guim31 veröffentlicht und gepflegt, nicht vom Gladys-Kernteam.

Abonniere den Newsletter von Gladys Assistant

Ein paar E-Mails im Monat zu neuen Releases und Neuigkeiten aus dem Projekt. Verschickt von Pierre-Gilles Leymarie, dem Gründer des Projekts. Jederzeit abbestellbar 🙂