Pushnachrichten im Smart Home mit FHEM und Pushover

Loxone im Einsatz? Dann schau dir unseren LoxKurs an und profitiere von unserem Wissen!

Wir hatten bereits einige Artikel zum Versand von Pushnachrichten verfasst, die allerdings allesamt schon ein paar Tage auf dem Buckel haben. Zwischenzeitlich hat sich im Umfeld der FHEM-Entwicklung standesgemĂ€ĂŸ Einiges getan, sodass es an der Zeit war, das im Smart Home super wichtige Thema „Push Notification“ mal wieder auf den aktuellsten Stand zu bringen. In diesem Howto zeigen wir dir Einrichtung und Umsetzung, um mit FHEM und Pushover unterschiedliche Arten von Pushnachrichten zu versenden, die mittlerweile sogar interaktive Elemente besitzen. So ist es beispielsweise möglich, direkt aus einer Pushnachricht heraus einen FHEM-Befehl auszufĂŒhren. 

Im Smart Home gibt es zig Anwendungsbereiche fĂŒr Pushnachrichten. Da wĂ€ren z.B. solche, bei denen der (meist abwesende) Anwender zu einer Aktion aufgefordert wird, z.B. wenn die Temperatur fĂ€llt, der Energieverbrauch steigt oder eine Bewegung erkannt wird. Außerdem gibt es Pushnachrichten zur Information ĂŒber gewisse Ereignisse Smart Home, z.B. den wöchentlichen Stromverbrauch. Temperaturen erfasse ich im gesamten Smart Home nach wie vor mit den gĂŒnstigen Technoline Funk-Temperatur- und Luftfeuchtigkeitssensoren (Affiliate-Link) (siehe auch: FHEM mit JeeLink: Luftfeuchte und Temperatur zum Low-Cost-Tarif messen). EnergieverbrĂ€uche messe ich mit EnOcean-Funk-StromzĂ€hlern (Affiliate-Link) (siehe auch: Smart Metering mit FHEM und Loxone – den Stromverbrauch im Smart Home immer im Griff). Mein neuestes Projekt, das auch mit Pushnachrichten verbunden ist, sind Low-Price-LuftqualitĂ€tssensoren von REHAU (Affiliate-Link) (Blogpost folgt).

Gerade wenn es im Smart Home mehrere Pushbenachrichtigungen geben soll, ist eine einheitliche Einrichtung und einfache Anwendbarkeit wichtig. FĂŒr den Open Source Smart Home Server FHEM gibt es schon seit geraumer Zeit das Modul Pushover (siehe auch https://fhem.de/commandref_DE.html#Pushover), mit dessen Hilfe man als Anwender tolle Szenarien erstellen kann.

Pushover Account einrichten

ZunĂ€chst einmal muss ein kostenloser Pushover Account eingerichtet und die jeweilige App fĂŒr iOs oder Android installiert werden. Aktuell sind in der kostenlosen Variante von Pushover wohl 7.500 Pushnachrichten pro Application und Monat erlaubt – völlig ausreichend fĂŒr ein Smart Home. Zur Anmeldung geht es hier: https://pushover.net/signup.

Bei Pushover gibt es zwei wichtige „SchlĂŒssel“, die jeder Anwender erhĂ€lt. Einerseits handelt es sich dabei um den persönlichen User Key, der an den Account gebunden ist und andererseits um den Application Token, der fĂŒr jede Application (Anwendung) extra generiert wird. Was steckt dahinter? Bei Pushover ist es möglich, in einem Account verschiedene Anwendungen zu hinterlegen. So kann „FHEM“ z.B. eine dieser Anwendungen sein. Den UserKey findet man auf der Startseite (siehe Screenshot oben).

Wenn man Pushover erstmalig nutzt, muss im nĂ€chsten Schritt FHEM als Application angelegt werden, was ĂŒber „Create an Application/API Token“ bei „Your Applications“ am unteren Bildrand der Startseite funktioniert.

Hier reicht es aus, einen Namen, den Typ „Plugin“ und optional noch ein Icon zu vergeben. Über „Create Application“ wird der Token nachfolgend generiert.

Jetzt ist FHEM Teil der Application-Liste und ĂŒber einen Klick darauf wird der Token angezeigt.

Beide Werte (User Key und Token) benötigen wir gleich fĂŒr die Einrichtung in FHEM. Bis hier hat sich auch Nichts an der Einrichtung von Pushnachrichten ĂŒber Pushover und FHEM geĂ€ndert. Ein funktionierender Account bleibt weiterhin essentiell.

Pushover in FHEM konfigurieren

Laut fhemwiki wird bei Debian-Distributionen zunĂ€chst das PERL-Paket „libio-socket-ssl-perl“ benötigt. Falls dieses auf dem Server-System, z.B. dem Raspberry Pi (Affiliate-Link), noch nicht installiert ist, wird ĂŒber eine SSH-Verbindung auf den FHEM-Server (ĂŒber die Terminal App unter osX und ĂŒber Putty unter Windows) und unter Verwendung des nachfolgenden Befehls die Installation nachgeholt:

sudo apt-get install libio-socket-ssl-perl

Jetzt geht es darum, mit Hilfe des „Pushover“-Moduls FHEM-seitig Pushover zu initiieren. Von der Syntax her funktioniert das wie folgt:

define name Pushover token userkey

Im konkreten Fall wird also im FHEM Webinterface in der Kommandozeile der individuelle Befehl abgesetzt (ich habe meinen User Key und meinen Token etwas unkenntlich gemacht)

define Pushnachricht Pushover agxNxyxyxyxyxyxyxyxyxyxyVGTv uN3cxyxyxyxyxyxyxyxyxyRpkn

Anschließend sollte die neu angelegte Definition den Status „connected“ besitzen.

Um die grundsÀtzliche Funktion der Pushnachrichten zu testen, kann eine erste Testnachricht abgesendet werden.

set Pushnachricht Testnachricht

Die Testnachricht sollte jetzt ordnungsgemĂ€ĂŸ am Smartphone erscheinen.

Das Pushovermodul wird allerdings erst dann interessant, wenn Pushnachrichten einerseits individuell durch Smart-Home-Szenarien ausgelöst werden und andererseits sowohl Statuswerte aus FHEM heraus transportieren, als auch Interaktionselemente mitliefern. Daher betrachten wir das Pushover-Modul und dessen Syntax im nÀchsten Abschnitt etwas genauer.

Pushover-Modul individuell nutzen

Das Pushover-Modul bietet mittlerweile viel Raum fĂŒr Individualisierung. So kann z.B. der Titel der Message, die PrioritĂ€t, der Sound oder ein Action-Link, der in FHEM eine vorgefertigte Aktion auslöst, mit der Pushnachricht mitgesandt werden. Die gesamte „set“-Syntax fĂŒr das Pushover-Modul sieht wie folgt aus (Quelle: FHEM Commandref).

set <Pushover_device> msg <text> [<option1>=<value> <option2>="<value with space in it>" ...]

Wie zu sehen ist, können der Message zahlreiche Optionen mitgegebenen werden, von denen folgende zur VerfĂŒgung stehen:

  • message: Kann fĂŒr den Nachrichtentext verwendet werden. Der restliche msg-Text wird dann ignoriert.
  • device: Wie erörtert können bei Pushover mehrere Devices einzeln ĂŒber einen Account angetriggert werden. Es können auch mehrere GerĂ€te durch Komma getrennt werden.
  • title: Die Überschrift deiner Nachricht.
  • action: Hier kann ein FHEM-Befehl in Form einer URL mitgegeben werden.
  • url_title: Diese URL kann (wie aus HTML bekannt) benannt werden.
  • priority: Kann „-2“, „-1“, „1“ oder „2“ sein und regelt, ob eine lautlose, eine normale oder eine high priority Nachricht an dein Smartphone gepusht wird.
  • retry: Bei High-Prio-Nachrichten Pflicht (Integer); wiederholt die High-Prio-Nachricht.
  • expire: Bei High-Prio-Nachrichten Pflicht (Integer)
  • cancel_id: Schaltet das Wiederholen bei High-Prio-Nachrichten aus.
  • timestamp: Senden einen UNIX-Timestamp mit (Integer)
  • sound: Entscheidet, welcher Sound auf deinem Smartphone abgespielt wird. Die Liste aller zur VerfĂŒgung stehenden Sounds findest du hier: https://pushover.net/api#sounds

UnabhĂ€ngig von der gewĂ€hlten Option spielt der Ausdruck\n“ (ohne AnfĂŒhrungszeichen) eine bedeutende Rolle: Er regelt den Zeilenumbruch.

Die Syntax von Pushover ist relativ einfach anzuwenden. Am Besten, man experimentiert einfach mal ein bisschen damit. Zwei kurze Beispiele gefÀllig?

set Pushnachricht msg title="meintechblog.de" message="Meintechblog-Nachricht mit \nZeilenumbruch"

Dieser simple Ausdruck liefert folgendes Ergebnis, das in 80% der Notification-FĂ€lle fĂŒr einfache Hinweise im Smart Home ausreichend sein sollte.

Durch die Möglichkeit, Actions-Links zu versenden, werden Pushnachrichten zum interaktiven Element. Beispielsweise lÀsst sich so eine Pushnachricht versenden, dass die Temperatur Zuhause zu gering ist mit einem Link, durch den man sofort in FHEM einen Heizungsboost aktiviert. Beispiele dieser Art sind endlos. Ein exemplarisches Kommando in FHEM sieht dazu wie folgt aus.

set Pushnachricht msg title="meintechblog.de ftw" message="Meintechblog-Nachricht mit \nZeilenumbruch und Link." action="https://www.meintechblog.de/" url_title="Best Blog in Town" expire=3600

Seit dem FHEM Update auf Version 5.8 funktionieren URL-Kommandos an FHEM nur noch mit Csrf-Token, die den Zugriff besser absichern. Wir haben dazu bisher noch kein Howto geschrieben (folgt). Bis dahin sei auf das FHEM-Wiki verwiesen: https://wiki.fhem.de/wiki/CsrfToken-HowTo.

Ebenfalls super wichtig fĂŒr Pushnachrichten ist das Versenden von Systemwerten (z.B. Temperaturen). Eine beispielhaftes Kommando, das in diesem Fall die Temperatur des Device „Bad.Temp“ verschickt, sieht wie folgt aus.

{fhem("set Pushnachricht msg title='Badezimmer' message='Temperatur: ".ReadingsVal("Bad.Temp","temperature","")." °C'")}

Derartige Meldungen lassen sich dann z.B. einfach in ein DOIF-Programm einbauen, wie das nachfolgende, das bei einer Temperatur unter 19°C eine Pushmitteilung mit der tatsÀchlichen Temperatur versendet.

define pushblog_doif DOIF ([Bad.Temp:temperature] < 19) ({fhem("set Pushnachricht msg title='Badezimmer' message='Temperatur: ".ReadingsVal("Bad.Temp","temperature","")." °C'")})

Eine derartige Nachricht lĂ€sst sich natĂŒrlich ebenfalls um einen Action-Link erweitern, der z.B. einen Heizungsboost aktiviert.

define pushblog_doif DOIF ([Bad.LF:temperature] < 19) ({fhem("set Pushnachricht msg title='Badezimmer' message='Temperatur: ".ReadingsVal("Bad.Temp","temperature","")." °C' action='https://www.meintechblog.de/' url_title='Heizungsboost aktivieren!' expire=3600")})

Durch die Action-Links werden Pushnachrichten super interaktiv und bieten eine gute Möglichkeit, die Automatisierung des Smart Homes an einigen Stellen in die Hand des Nutzers zu legen, der dann situativ entscheidet, ob eine vorgeschlagene Aktion ausgefĂŒhrt wird.

Aus meinem tÀglichen Leben

FĂŒr mich persönlich sind Pushnachrichten in verschiedenen Szenarien wichtig. Gerade bei Abwesenheit informiert mich mein Smart Home ĂŒber verschiedene Ereignisse. Einmal wöchentlich (Montag, 9 Uhr) sendet mir der Server z.B. eine StromverbrauchsĂŒbersicht der vergangenen Woche. Den Stromverbrauch erfasse ich mit Eltako-Funk-StromzĂ€hlern (Affiliate-Link). Siehe dazu auch hier: Smart Metering mit FHEM und Loxone – den Stromverbrauch im Smart Home immer im Griff. Eine weitere Möglichkeit ist z.B. das Überwachen von Batteriestatus. Siehe dazu auch hier: FHEM: Rechtzeitige Benachrichtigung bei leeren Batterien. Doch auch bei Anwesenheit nutze ich Pushnachrichten, die mich z.B. ĂŒber die LuftqualitĂ€t in einzelnen RĂ€umen informieren, die ich z.B. mit einem REHAU-Raumluftsensor (Affiliate-Link) erfasse (Blogpost folgt).

Es gibt also zahlreiche AnwendungsfĂ€lle fĂŒr Pushnachrichten, auch wenn ein echtes Smart Home von der selbststĂ€ndigen Automatisierung lebt.

Loxone im Einsatz? Dann schau dir unseren LoxKurs an und profitiere von unserem Wissen!

Verpasse keine Inhalte mehr! Trage dich in den Newsletter ein und folge uns auf Facebook.

Was ist ein Affiliate-Link? Wenn du auf einen Affiliate-Link klickst und ĂŒber diesen Link einkaufst, bekomme ich vom betreffenden Online-Shop oder Anbieter eine Provision, was mich u.A. bei den laufenden Kosten den Blogs unterstĂŒtzt. FĂŒr dich verĂ€ndert sich der Preis nicht.

Christoph

berichtet seit Juni 2012 auf meintechblog.de ĂŒber seine Erfahrungen zu Smart Home und Hausautomation und beschĂ€ftigt sich außerdem mit Smart Grids. Mehr Infos

22 Gedanken zu „Pushnachrichten im Smart Home mit FHEM und Pushover“

  1. Hallo Christoph,

    und danke fĂŒr diese Aktualisierung. Das Thema hab ich auch noch auf meiner To-Do-Liste und kann es nun nochmal kurz angehen.

    Noch lieber wĂ€re mir allerdings eine Möglichkeit die Benachrichtigung ĂŒber einen Messenger (WhatsApp) zu lösen. Eine Extra App, welche „nur“ push Nachrichten weitergibt finde ich nicht so sexy und WhatsApp (oder auch andere Messenger) haben ja die meisten eh auf ihren GerĂ€ten.

    Daher meine Frage: wird es dazu auch noch was neues von euch geben?

    GrĂŒĂŸe, Stephan

    1. FrĂŒher habe ich dafĂŒr Pushbullet genutzt, mittlerweile bin ich da auf Telegram gewechselt, weil ich auch eine App nur fĂŒr Benachrichtigungen unnötig fand.

    2. Hm… Telegram ist leider auch keine echte Alternative fĂŒr mich. Letztlich habe ich dann wieder eine App nur fĂŒr den einen Zweck. Ich kenne niemanden, der telegram als Stamdard-Messenger nutzt und dann wĂ€re es bisschen Overkill.

    3. Hmm, nachdem du also via Whatsapp alle deine Kontakte aus deinem Telefonbuch geshared hast und Facebook auch deine ganzen privaten Whatsapp Kommunikation kennt willst du auch noch die Smarthome Informationen dort hin werfen ? Ganz ehrlich, ich wĂŒrde mir das ĂŒberlegen. Alle Eier in einen Korb legen war noch nie eine gute Idee.

      Abgesehen davon ist die zeitnahe Zustellung bei WhatsApp ein Lotteriespiel.

    4. @Martin: GrundsĂ€tzlich bemesse ich dem Thema Sicherheit und Datenschutz auch ein große Bedeutung zu aber ich denke du ĂŒbertreibst hier ein wenig! Eine Benachrichtigung ala „Die WĂ€sche ist fertig“ oder „Morgen wird die Biotonne abgeholt“ ist wohl kaum eine kritische Information. Da kann man eher diskutieren ob man nicht weit aus mehr preisgibt, wenn man sich beim nĂ€chsten anmeldepflichtigen Dienst (egal ob nun Pushover, Pushbullet oder Telegram) registriert.

      Das letzte Argument wĂ€re natĂŒrlich zu prĂŒfen, denn letztlich bringt es alles nur was, wenn man die Information in angemessener Zeit erhĂ€lt.

  2. Hallo, Christoph,
    bin mit pushbullet bisher sehr gut gefahren. Pushover klingt jedoch auch sehr interessant und habe mich mal dran gemacht.
    Allerdings möchte die Android App nach 7 Tagen zwingend fĂŒr knapp 5 Euro lizenziert werden. Habe ich was ĂŒbersehen oder ist das normal so?

    @Stephan: WhatsApp findest Du hier: https://www.meintechblog.de/2016/07/whatsapp-nachrichten-bilder-mit-fhem-versenden-und-antworten-auswerten/
    Wie man den Kommentaren entnehmen kann, ist man der WillkĂŒr von WhatsApp – Ă€h Facebook – willkĂŒrlich ausgeliefert. Ich verwende es nicht mehr.

    1. Danke fĂŒr deine Nachricht. Den Artikel kenne ich natĂŒrlich und auch auf Grund der ganzen Kommentare mit Sperre usw. habe ich es bisher nicht umgesetzt.
      Der Artikel ist aber auch schon fast 2 Jahre alt und evtl. hat sich ja seitdem was getan….

    2. Hallo Christoph,

      ja, Pushover will registriert werden und kostet nach einer Probezeit einen einmaligen Betrag. Ich hab das vor etwa 3 Jahren einmal bezahlt und seit dem lÀuft der Service problemlos.

  3. Hi Christoph,

    weil hier so viele jammern wegen „noch eine App“: das hat auch einen Vorteil den du in deinem Blog nicht expliziert erwĂ€hnt hast. Pushover kann mehrere Devices ansprechen. In meinem Fall sind das mein Smartphone, das meiner Frau und auch das meiner Tochter, und zwar jeweils einzeln oder aber auch in Gruppen.

    Wenn also jemand nicht zuhause / weit weg ist, kann man selbigen zum Beispiel vom Alarm „Fenster steht noch offen“ aussen vor lassen und den Push nur an diejenigen schicken die im Haus sind (vorraus gesetzt man hat ein Anwesenheits Monitoring). Ich nutz das z.B. dazu, dem letzten, der das Haus verlĂ€ĂŸt, noch zu sagen welche TĂŒren/Fenster noch offen sind.

    Auch gehen Messages wie „Die Waschmaschine ist fertig!“ direkt an die Dame des Hauses und nicht an mich (mich hat das einfach irgendwann genervt das ich auf Dienstreisen in Übersee stĂ€ndig Nachrichten von dem teil bekommen habe).

    Jeder von uns hat die App installiert, alle drei Devices sind unter meinem PushOver Account registeriert und schon kann man die drei mittels des device=….. flags gezielt einzeln ansprechen, und wenn man den Parameter weg lĂ€ĂŸt geht die Push Nachricht an alle drei devices (NĂŒtzlich bei Alarm Meldungen oder verpaßten Anrufen).

    Mit einem Messanger Dienst wie Whatsapp geht sowas zwar auch, aber bei weitem nicht so komfortabel.

    1. Wenn ich mir das alte Tutorial zu WhatsApp (um bei dem Beispiel zu bleiben) anschaue, lassen sich Benachrichtigungen auch dort ganz bequem auf einzelne Clients verteilen.

      Ich hoffe du verzeihst die kleine Stichelei aber ich hoffe du hast deinen FHEM-Server gut gesichert, wenn du dort die Anwesenheit ala Hausbewohner loggst. Das wÀre schon eine Information, die in den falschen HÀnden echten Schaden verursachen kann ;-)

  4. Ich fahre zweigleisig und nutze sowohl Pushover als auch yowsup (WhatsApp in FHEM). Da meine liebste keinen „unnĂŒtzen“ Kram auf ihrem Handy haben will, WhatsApp aber natĂŒrlich drauf hat mĂŒssen wir den Weg gehen. Problematisch bei WhatsApp ist halt, dass die Entwickler da stĂ€ndig basteln und das Plugin alle jubeljahre mal wieder nicht funktioniert.

  5. Sorry fĂŒr den Doppelpost, hab es vergessen. Wie ein paar Kommentare vorher schon angesprochen, es wĂ€re gut zu wissen wie man Pushover-Nachrichten auch auf mehrere Clients unterschiedlich verteilt.

  6. Hallo. Mit Pushover 3.0 soll man jetzt auch Bilder versenden können. Hat das jemand schon in FHEM realisiert und könnte hier die Befehlszeile schreiben?
    Folgendes hatte ich ohne Erfolg probiert: set Pushover msg title:“Text“ attachment:“/“

  7. Mal wieder ein toller Beitrag! Die neuen Funktionen von Pushover kannte ich noch gar nicht. Ich habe auch einen kleinen Beitrag zu den Codes. Ich finde es einfacher die readings auf diese Art abzugreifen und zB. in die Pushnachricht zu packen:

    Beispiel: [sensor:reading] das spart Zeilen und Getippse ;)

  8. Hi Christoph
    bin nicht so der Programmierer,pushover hatte bei mir eigentlich schon gut funktioniert,
    HaustĂŒr
    TerrassentĂŒr
    Temperatur
    usw…
    bis dann crsf token kam.
    habe es jetzt so gemacht wie oben beschrieben ,nach der Eingabe
    set Pushnachricht Testnachricht ,bekomme ich folgendes
    Unknown argument Testnachricht, choose one of msg glance
    was da los ?
    danke schon mal im voraus.

    Mit freundlichen GrĂŒĂŸen

    Olaf

    1. Hallo Olaf, wenn ich als Einsteiger das richtig verstanden habe, dann fehlt oben in der Anleitung das Wort „msg“. Sollte wohl heissen:
      „set Pushnachricht msg Testnachricht“

    2. Vielen Dank Bernd,

      werde es demnÀchst mal ausprobieren,bin gerade im Hochzeitsstress.
      Wird erst wieder etwas im September.
      Poste es dann aber.

      Gruß Olad

  9. Hallo,
    ich hoffe ich darf mich mal einmischen. Ich kann auf jeden Fall pushsafer empfehlen. Dies ist auch eine App bzw auch gadget zum versenden von Push Benachrichtugungen. Egal ob Android oder IOS, aber andere Sachen kann das gute Ding.
    Also ich kann es wirklich nur empfehlen, habe selbst biss jetzt nur gute Erfahrungen mit gemacht.

  10. Hallo zusammen,
    ich habe mal eine Frage. Es klappt alles bestens bis zur Testnachricht. Aber dann bin ich total auf geschmissen. Ich habe schon etliche BeitrĂ€ge gelesen, aber ich komme nicht weiter. Mit Hilfe von meinen Aqara Fenstersensoren, soll mir eine Nachricht geschickt werden wenn ein Fenster auf geht und mich erinnern das es nach 10 Minuten endlich schließen sollte. Vielen Dank fĂŒr den ein oder anderen Tipp.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert