Smart Home: Schneewarnung mit FHEM und IFTTT
Für viele ist es wichtig zu wissen, ob es am nächsten Tag schneien könnte. Dank dem Starrt-Home System FHEM, dem Dienst IFTTT und Weather Underground kann man sich schon am Vortag warnen lassen, ob am nächsten Tag Schnee zu erwarten ist: Dann kann man sich den Wecker etwas früher stellen und kommt trotzdem noch entspannt zur Arbeit.
Weather Underground stellt eine praktische Wetter-Vorhersage direkt per IFTTT zur Verfügung, bei der man sich benachrichtigen lassen kann, ob es am nächsten Tag schneit (oder auch regnet). IFTTT lässt sich wiederum auf verschiedenste Weise mit FHEM verknüpfen: So kann man sich zum Beispiel eine Email senden lassen und diese auswerten (mehr zum Einrichten von Emails, IFTTT und FHEM hier) oder per “Webhook” direkt auf FHEM zugreifen.
Hierzu muss im Router eine Portweiterleitung eingerichtet werden und man braucht eine feste IP Adresse oder einen dynamischen DNS Dienst, außerdem sollte ein Benutzer und Passwort angelegt werden: Für die ersten Versuche ist daher in der Regel die Email-Variante einfacher. Möchte man trotzdem per IFTTT Webhook auf FHEM zugreifen, ist dies aber auch möglich: Damit kann man dann zum Beispiel mit diesem Beispiel-Link einen dummy “Schneewarnung” auf on setzen:
http://user:passwort@dyn-dns-dienst:8083/fhem?cmd.IFTTT=set%Schneewarnung%20on
IFTTT: Account anlegen und Weather Underground Applet definieren
Auf der Webseite ifttt.com erstellt man zunächst per “sign up” einen kostenlosen Account. Nach dem Anmelden über den Link “sign in” kann man mit dem ersten eigenen Applet starten: Dies erstellt man rechts auf seinen Benutzernamen und wählt “New Applet” aus. Mit einem Klick auf “THIS” wählt man die Startbedingung:
Dort sucht man dann nach “Weather Underground”:
…und wählt “Tomorrow’s forecast calls for” aus. Nach Anklicken kann man im Menü dann “snow” auswählen, um die aktuelle Schneewarnung für den nächsten Tag zu erhalten:
Im nächsten Schritt klickt man auf “+ that” und wählt entweder “Webhooks” oder “Email” aus:
Egal ob per Mail oder Webhook: Am Ende sollte man den Dummy Schneewarnung auf “on” setzen. Per Webhook, wie oben schon beschrieben, zum Beispiel so:
http://user:passwort@dyn-dns-dienst:8083/fhem?cmd.IFTTT=set%Schneewarnung%20on
Per Email sollte man als Subject “Schneewarnung” wählen und könnte dann so danach filtern:
define Schneefilter notify Email:Subject.* {\ my $subject = ReadingsVal("Email", "Subject", "");;\ my $from = ReadingsVal("Email", "From", "");;\ if($subject eq "Schneewarnung" && ($from eq "action\@ifttt.com")) {\ fhem("set Schneewarnung on");;\ }\ }
Mehr zum Einrichten des Mail-Filters und den IFTTT-Emails haben wir hier.
Den dummy “Schneewarnung” definieren wir vor dem Testen zunächst, indem wir diesen Code in das Text-Eingabefeld oben in FHEM eingeben:
define Schneewarnung dummy
Mit einem notify kann man jetzt den Wert abfragen: Wird der dummy durch die per IFTTT kommende Schneewarnung auf “on” gesetzt, reagiert der notify. Unser Beispielcode dafür sieht so aus:
Schneewarnung – Code für fhem.cfg
define act_on_Schneewarnung notify Schneewarnung {\ if ("$EVENT" eq "on" || "$EVENT" eq "An") {\ my $timestamp = time();;\ Log 1, "Schneewarnung morgen: $mday.$month.$year.";;\ fhem("set myMPD playfile schneewarnung-morgen.mp3;;");;\ }\ }
Damit wird, sobald der dummy auf “on” gesetzt wird, per MPD Player auf dem Raspberry Pi, auf dem in unserem Fall FHEM installiert ist, ein Sound abgespielt.
Code für FHEM Web-Interface
Wer den Code nicht über die fhem.cfg Datei eingeben möchte, kann auch zunächst nur “define act_on_Schneewarnung notify Schneewarnung on” in das Eingabefeld eingeben und klickt dann auf der Info-Seite zu dem neuen “notify” auf den Punkt “DEF”: Hier kann man dann diesen Code eingeben:
Schneewarnung { if ("$EVENT" eq "on" || "$EVENT" eq "An") { my $timestamp = time(); Log 1, "Schneewarnung morgen: $mday.$month.$year."; fhem("set myMPD playfile schneewarnung-morgen.mp3;"); } }
Das sollte dann so aussehen – mit einem Klick auf “modify” kann man den bearbeiteten notify dann speichern:
Sobald Weather Underground dann per IFTTT eine Schneewarnung herausgibt, wird (in diesem Fall per MPD Player auf dem Raspberry Pi, auf dem FHEM in unserem Test läuft) eine akustische Warnung ausgegeben. Passende per Google Translate erstellte MP3 Dateien haben wir hier zum Download:
Im Test kam die IFTTT-Message immer gegen 07:40 für den nächsten Tag. Wer die Warnung lieber zu einem anderen Zeitpunkt abhören möchte, kann dies zum Beispiel mit einem eigenen define lösen, der zu einer bestimmten Uhrzeit ausgelöst wird.
Unser Beispielcode dafür sieht so aus:
define act_on_Schneewarnung notify Schneewarnung {\ if ("$EVENT" eq "on" || "$EVENT" eq "An") {\ my $timestamp = time();;\ Log 1, "Schneewarnung fuer morgen erhalten: $mday.$month.$year um $hour:$min Uhr.";;\ fhem("set Schneewarnung_Uhrzeit $timestamp;;");;\ fhem("define Schneewarnung_Text1 at 08:30:00 { fhem(\"set myMPD playfile schneewarnung-morgen.mp3;;;; sleep 15;;;; delete Schneewarnung_Text1\");;;; }");;\ fhem("define Schneewarnung_Text2 at 19:30:00 { fhem(\"set myMPD playfile schneewarnung-morgen.mp3;;;; sleep 15;;;; delete Schneewarnung_Text2\");;;; }");;\ fhem("define Schneewarnung_Text3 at 07:29:00 { fhem(\"sleep 3600;;;; set myMPD playfile schneewarnung-heute.mp3;;;; sleep 15;;;; delete Schneewarnung_Text3\");;;; }");;\ }\ }
Wird der dummy “Schneewarnung” per IFTTT von der Wetter-Vorhersage von Weather Underground auf “on” gesetzt, erstellen wir drei neue devices: Schneewarnung_Text1, Schneewarnung_Text2 und Schneewarnung_Text3. Die ersten beiden warnen einmal am gleichen Tag um 08:30 und um 19:30 Uhr vor der Schneewarnung, das nächste warnt um 08:29 Uhr (07:29 Uhr + 3600 Sekunden) vor Schneeglätte am gleichen Tag.
- datenschutz (39x gelesen)
- windows-beschleunigen (38x gelesen)
- windows-schneller-starten-autostart-aufraeumen (33x gelesen)
- pc-einsteigerkurs (25x gelesen)
- pc-einsteigerkurs-1-2 (6x gelesen)
Mehr Tipps zu Smart Home: Schneewarnung mit FHEM u...
-
Philips hue + IFTTT: “Problem accessing your lights!” – Lösung!
Wer sein IFTTT Konto (If This Than That) zum Steuern der Philips hue Lampen nutzen möchte, bekommt mitunter nach einem Update der hue App die...
-
IFTTT: Amazons Alexa mit FHEM verknüpfen
IFTTT (If This Than That) ist ein Webdienst, der ganz einfach verschiedene andere Dienste miteinander verknüpfen kann - und mittlerweile geht das auch mit der...
-
FHEM: JeeLink / LaCrosse Sensor: Batterie wechseln
Wer bei einem LaCrosse Temperatursensor die Batterien tauscht, muss eine Sache beachten - andernfalls wird die Hardware-ID zurückgesetzt und der Sensor wird unter einem neuen...
-
Mit Microsoft Office den Arbeitsalltag optimieren
In der heutigen digitalen Ära ist es unerlässlich, über die richtigen Tools zu verfügen, um den Arbeitsalltag effizient und produktiv zu gestalten. Microsoft Office hat...
-
Valentinstag-Emojis + Icons zum Download!
Valentinstags-Icons Passende Icons und Clipart Bilder zum Valentinstag als kostenloser Download: 100 verschiedene Herzen und Blumen als PNG Bild. Einfach herunterladen und in Dokumente,...
-
Instagram: Story Download – Bilder und Videos sichern
Instagram hat bekommt Tag Unmengen Fotos und Videos der zahlreichen Nutzer. Anders als die öffentlichen Foto-Alben sind Bilder und Videos in einer Instagram Story aber...
- IFTTT und Raspberrymatic und Smart Life ohne Cloudmatic.
- Unsere Smart Home Themen
- Smart Home Angebote bei Amazon
- Tipps für einfache Smart Home Upgrades :)
- Raspberry Pi 3: Bald Neue Version für den Smart-Home PC!
- Amazon Echo: Mit Alexa das Smart Home steuern - Tipps-Sammlung!
- Mark Zuckerberg zeigt "Jarvis": Was kann Eure Smart-Home-Lösung?
Facebook Gründer Mark Zuckerberg hat seine AI "Jarvis" vorgestellt, benannt nach der AI a...
Smart Home: Schneewarnung mit FHEM und IFTTT