PushNotifier: Unterschied zwischen den Versionen

Aus FHEMWiki
Keine Bearbeitungszusammenfassung
K (Ergänzung im Bereich <appname>)
 
(16 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
'''PushNotifier''' ist ein Dienst, mit dem es möglich ist, sogenannte "Push" Nachrichten auf ein Apple oder Android Gerät zu schicken [http://pushnotifier.de/push/]. Der Dienst sowie die Apps sind kostenlos. Um die Pushnachrichten zu empfangen muss die dazu passende App installiert werden. [http://pushnotifier.de/apps/]
{{Infobox Modul
 
{{Infobox Modul|Typ=
|ModPurpose=Senden von Push-Nachrichten auf Tablets oder Smartphones  
|ModPurpose=Senden von Push-Nachrichten auf Tablets oder Smartphones  
|ModType=Gerätemodul
|ModType=d
|ModForumArea=Unterstützende Dienste
|ModTechName=70_PushNotifier.pm
|ModTechName=70_PushNotifier.pm
|ModOwner=michaelmueller
|ModOwner={{Link2FU|5244|xusader}}
}}  
}}  


==Installation==
[[PushNotifier]] ist ein Dienst, mit dem es möglich ist, sogenannte "Push" Nachrichten auf ein Apple oder Android Gerät zu schicken [http://pushnotifier.de/push/]. Der Dienst sowie die Apps sind kostenlos. Um die Pushnachrichten zu empfangen muss die dazu passende App installiert werden. [http://pushnotifier.de/apps/]
 
Es muss zwingend eine [http://gidix.de/register/ PushNotifier Account] erstellen werden. Ist der Account angelegt muss auf der [http://gidix.de/settings/api/ Api Settings Site] 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.


*Apple Geräte: [https://itunes.apple.com/de/app/pushnotifier/id791683557?mt=8 PushNotifier App im Apple Store]
== Installation ==
*Android Geräte: [https://play.google.com/store/apps/details?id=com.gidix.pushNotifier&hl=DE PushNotifier App im Google Playstore]
Es muss zwingend ein [http://gidix.de/register/ PushNotifier Account] erstellt werden. Ist der Account angelegt, muss auf der [http://gidix.de/settings/api/ 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.


* Apple Geräte: [https://itunes.apple.com/de/app/pushnotifier/id791683557?mt=8 PushNotifier App im Apple Store]
* Android Geräte: [https://play.google.com/store/apps/details?id=com.gidix.pushNotifier&hl=DE PushNotifier App im Google Playstore]


==Einbinden des Dienstes in Fhem==
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:
Das Modul wird mit dem folgenden Befehl in fhem definiert:
:<code><nowiki>define pushmsg PushNotifier <apiToken> <appname> <user> <password> <RegEx> </nowiki></code>


define pushmsg PushNotifier <apiToken> <appToken> <Application> <deviceID>  
'''Beispiele:'''
 
* für alle registrierten Geräte
Das [http://gidix.de/settings/api/ apiToken erhält man hier]
:<code><nowiki>define pushmsg PushNotifier <apiToken> <appname> <user> <password> .* </nowiki></code>
 
* für eine Gerätegruppe
Mit den curl-Aufrufen:
:<code><nowiki>define pushmsg PushNotifier <apiToken> <appname> <user> <password> iPhone.* </nowiki></code>
 
* für ein bestimmtes Gerät
curl -s -F apiToken="apiToken=your apiToken" -F username="your username" -F password="your password" <nowiki>http://a.pushnotifier.de/1/login </nowiki>
:<code><nowiki>define pushmsg PushNotifier <apiToken> <appname> <user> <password> iPhone5 </nowiki></code><br><br>
 
erhält man das appToken, und mit
Das <apiToken> und <appname> erhält man [http://gidix.de/settings/api/ hier]:'<br><br>
 
'''<apiToken>''' wird angezeigt wenn man auf den Button "Enable" klickt (unter "API settings", Überschrft "PushNotifier API")<br><br>
curl -s -F "apiToken=your apiToken" -F "appToken=your appToken" <nowiki>http://a.pushnotifier.de/1/getDevices</nowiki>
'''<appname>''' muss selbst definiert werden und darf nicht doppelt vorkommen.
 
* Man klickt unter "API Applications" auf "+ Create Application"
die deviceID.
* 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.<br>
''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"''<br><br>


==Senden einer Nachricht mit Fhem==
Die deviceIDs werden in den Internals des Moduls angezeigt.<br>
Zum Testen empfielt sich das Modul: "für alle registrierten Geräte" siehe oben zu erstellen.


== Senden einer Nachricht mit FHEM ==
Syntax:
Syntax:
 
:<code><nowiki>set <PushNotifier_device> message <message> </nowiki></code>
You can send messages via the following command:
set <PushNotifier_device> message <message>


Beispiel:
Beispiel:
:<code><nowiki>fhem("set pushmsg message Das Fenster wurde geschlossen!"); </nowiki></code>


fhem("set pushmsg message Das Fenster wurde geschlossen!");  
Mehrzeilige Nachricht:
 
:<code><nowiki>fhem("set pushmsg message Das Fenster wurde geschlossen!_Zweite Zeile._Dritte Zeile."); </nowiki></code>
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==
Nachricht, sobald FHEM neu geladen wurde, mit Hilfe eines "notify":
:<code><nowiki>define notify_fhem_reload notify global:INITIALIZED set pushmsg message Ich wurde neu geladen! </nowiki></code>


*Thread über das Modul im [http://forum.fhem.de/index.php/topic,25440.0.html Fhem Forum]
== Links ==
*PushNotifier [http://a.gidix.de/v1/pushnotifier/sending/ API]
* Thread über das Modul im {{Link2Forum|Topic=25440|LinkText=FHEM Forum}}
* PushNotifier [http://a.gidix.de/v1/pushnotifier/sending/ API]


[[Kategorie: Gerätemodul | Code Snippets]]
[[Kategorie: Code Snippets]]

Aktuelle Version vom 26. Dezember 2018, 11:19 Uhr

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