PushNotifier

Aus FHEMWiki
Wechseln zu: Navigation, Suche
PushNotifier
Zweck / Funktion
Senden von Push-Nachrichten auf Tablets oder Smartphones
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Support (Forum) Unterstützende Dienste
Modulname 70_PushNotifier.pm
Ersteller xusader
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!


PushNotifier ist ein Dienst, mit dem es möglich ist, sogenannte "Push" Nachrichten auf ein Apple oder Android Gerät zu schicken [1]. Der Dienst sowie die Apps sind kostenlos. Um die Pushnachrichten zu empfangen muss die dazu passende App installiert werden. [2]

Installation

Es muss zwingend ein PushNotifier Account erstellt werden. Ist der Account angelegt, muss auf der Api Settings Seite eine Application angelegt werden. Die Application dient dazu, die Nachrichten FHEM zuzuweisen und sie leichter erkennbar zu machen. Auf dem Endgerät muss die Applikation "PushNotifier" installiert werden. Dies geschieht z.B. bei Apple-Geräten mit Hilfe des AppStores. Danach müssen (nach erfolgter Registrierung auf der Webseite) die einzelnen Geräte, auf denen Nachrichten gesendet werden sollen, registriert werden. Die Registrierung der Geräte erfolgt nach Anmelden in der App auf dem Endgerät automatisch.

Benötigt wird das Perlmodul Try::Tiny. Dieses mit "cpan -i Try::Tiny" nachinstallieren.

Einbinden des Dienstes in FHEM

Das Modul wird mit dem folgenden Befehl in fhem definiert:

define pushmsg PushNotifier <apiToken> <appname> <user> <password> <RegEx>

Beispiele:

  • für alle registrierten Geräte
define pushmsg PushNotifier <apiToken> <appname> <user> <password> .*
  • für eine Gerätegruppe
define pushmsg PushNotifier <apiToken> <appname> <user> <password> iPhone.*
  • für ein bestimmtes Gerät
define pushmsg PushNotifier <apiToken> <appname> <user> <password> iPhone5

Das <apiToken> und <appname> erhält man hier:'

<apiToken> wird angezeigt wenn man auf den Button "Enable" klickt (unter "API settings", Überschrft "PushNotifier API")

<appname> muss selbst definiert werden und darf nicht doppelt vorkommen.

  • Man klickt unter "API Applications" auf "+ Create Application"
  • Title und Description kann beliebig gewählt werden und hat keine Auswirkung auf die Funktion
  • Unter Package wird nun der <appname> gewählt. Es funktioniert nur folgende schreibweise "com.EinBeliebigerText.app". Der <appname> muss mit "com." beginnen und mit ".app" enden.

Hier noch eine andere Erklärung da es hier oft Probleme gibt: Er muss die folgende Form haben: "com.<appBezeichnung>.app", wobei <appBezeichnung> eine beliebige Bezeichnung sein kann, die aber noch nicht verwendet sein darf. (Anscheinend darf sie auch nicht von anderen Nutzern verwendet werden.) Beispiel: "com.fhem_xyz.app"

Die deviceIDs werden in den Internals des Moduls angezeigt.
Zum Testen empfielt sich das Modul: "für alle registrierten Geräte" siehe oben zu erstellen.

Senden einer Nachricht mit FHEM

Syntax:

set <PushNotifier_device> message <message>

Beispiel:

fhem("set pushmsg message Das Fenster wurde geschlossen!");

Mehrzeilige Nachricht:

fhem("set pushmsg message Das Fenster wurde geschlossen!_Zweite Zeile._Dritte Zeile.");

Nachricht, sobald FHEM neu geladen wurde, mit Hilfe eines "notify":

define notify_fhem_reload notify global:INITIALIZED set pushmsg message Ich wurde neu geladen!

Links