Monitoring- und Auto-Recovery-Script für den Shelly Plug M Gen3.
- Überwachung mehrerer Geräte
- HTTP-basierte Erreichbarkeitsprüfung
- Telegram-Benachrichtigungen
- Power-Cycling bei Ausfall
- Watchdog
- Logging
- Ausfallschutz gegen Internetprobleme
- Recovery-Erkennung
- Shelly Plug M Gen3
- WLAN Verbindung
- Aktuelle Firmware
In Telegram:
@BotFatheröffnen/newbot- Bot erstellen
- Token kopieren
Beispiel:
123456789:AAxxxxxxxxxxxxxxxxxxxxDem Bot in Telegram schreiben:
/startOhne diesen Schritt verweigert Telegram Nachrichten.
Im Browser öffnen:
https://api.telegram.org/botBOT_TOKEN/getUpdatesDann dem Bot irgendeine Nachricht senden.
In der JSON-Antwort erscheint:
"chat":{
"id":123456789
}Diese ID im Script verwenden.
let BOT_TOKEN = "BOT_TOKEN";
let CHAT_ID = "123456789";let HOSTS = [
{
name: "Home Assistant",
ip: "192.168.178.50",
powercycle: false
},
{
name: "NAS",
ip: "192.168.178.20",
powercycle: true
}
];| Parameter | Beschreibung |
|---|---|
| CHECK_INTERVAL | Prüfintervall in Millisekunden |
| FAIL_LIMIT | Anzahl Fehler bis Alarm |
| POWEROFF_TIME | Dauer AUS beim PowerCycle |
| POWERCYCLE_COOLDOWN | Mindestabstand zwischen Reboots |
| ENABLE_AUTO_REBOOT | Shelly rebootet sich selbst |
let CHECK_INTERVAL = 60000;
let FAIL_LIMIT = 4;
let POWEROFF_TIME = 15000;Wenn aktiviert:
powercycle: trueführt der Shelly aus:
- Steckdose AUS
- warten
- Steckdose EIN
Nicht den Router über denselben Shelly versorgen, auf dem das Script läuft.
Sonst verliert der Shelly WLAN und Kontrolle.
Der Watchdog überwacht:
- Script-Hänger
- festgefahrene Loops
- blockierte Netzwerkaufrufe
Optional kann der Shelly automatisch rebooten:
let ENABLE_AUTO_REBOOT = true;Logs erscheinen unter:
- Shelly Webinterface
- Script Console
Beispiele:
2026-05-14 21:13:11 | NAS FAIL #1
2026-05-14 21:14:20 | PowerCycle: NASBedeutet meist:
- Bot nicht gestartet
- falsche Chat ID
Lösung:
/startan den Bot senden.
TLS/HTTPS Fehler.
Lösung:
- Firmware aktualisieren
DNS Problem.
DNS Server setzen:
8.8.8.8
1.1.1.1- feste IP für Shelly
- gutes WLAN Signal
- 2.4 GHz WLAN
- stabile Stromversorgung
Gut geeignet für:
- Home Assistant
- Synology NAS
- Fritzbox
- Unifi
- Docker Hosts
- Webserver
- Kameras
Shellys unterstützen keine ICMP Funktionen wie ping.
Das Script verwendet daher HTTP-Checks.
https-Seiten ohne gültiges Zertifikat (wie z.B. eine Standard Proxmox Installation) funktionieren nicht.
Workaround: einen LXC testen, der auf dem Proxmox Server unter http läuft und somit HTTP-Checks unterstützt
- Prüfen ob der gewählte host per http geprüft werden kann
- Testet ob eine Nachrticht an den Telegram Bot geschickt werden kann
- Ein REST sensor für Home Assistan
- In die configuration.yaml eintragen
- Dabei die IP-Adresse des Shellys eintragen auf dem das Skript läuft
- Home Assistant neu starten
- Der sensor stellt die Entität sensor.servermonstatus zur Verfügung
- Kann dann ins Dashboard eingebaut werden, für visuelle Prüfung ob das Dashboard läuft. Mit Anzeigebednijngung z.B. nur dann wenn Status <> 'running'
- Status: 'running' oder 'stopped' -!! Der Shelly darf nicht per Passwort geschützt sein, sonst funktioniert es nicht !!
- Sendet die Nachricht 'serverMon läuft nicht mehr. Bitte prüfen' an alle Clients wenn das skript gestoppt wird
- Eine Tilekachel für HA Dashboards, die nur angezeigt wird, wenn das Skript nicht läuft
Freie Verwendung auf eigene Gefahr.
Keine Garantie für Datenverlust, Netzwerkausfälle oder Fehlfunktionen.