Pushover: Unterschied zwischen den Versionen

Aus FHEMWiki
(Erinnerungsfunktion mit Hilfe des Kalendar Moduls hinzugefügt)
K (Vorlage Link2CmdRef)
 
(11 dazwischenliegende Versionen von 9 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Infobox Modul
{{Infobox Modul
|ModPurpose=Senden von sog. Push-Nachrichten auf Tablets o. Mobiltelefone
|ModPurpose=Senden von sogenannten Push-Nachrichten auf Tablets oder Smartphones
|ModType=Modul
|ModType=d
<!-- |ModCategory= (noch?) nicht verwendet -->
<!-- |ModCategory= (noch?) nicht verwendet -->
<!-- |ModCmdRef=  wird automatisch generiert -->
<!-- |ModCmdRef=  wird automatisch generiert -->
Zeile 8: Zeile 8:
}}
}}


== Pushover ==
[[Pushover]] ist ein Dienst, mit dem es möglich ist, sogenannte Push-Nachrichten auf ein Apple- oder Android-Gerät zu schicken (Link zum Dienst: [https://pushover.net pushover.net]).
Pushover ist ein Dienst, mit dem es möglich ist, sog. "Push" Nachrichten auf ein Apple oder Android Gerät zu schicken. (Link zum Dienst: [https://pushover.net])
Um die Push-Nachrichten zu empfangen, muss die dazu passende App installiert werden (siehe unten). Der Dienst ist grundlegend kostenlos. Die App-Nutzung ist einmalig zu bezahlen. Es fallen keine Abo-Gebühren an (Stand 08.10.2015).


== Installation ==
== Installation ==
Auf dem Gerät muss die Applikation "pushover" installiert werden. Dies geschieht z.B. bei Apple-Geräten mit Hilfe des AppStores. Momentan kostet diese Anwendung im AppStore 4,49€.
Es muss zwingend ein Pushover-Account erstellt werden. Anschließend ist auf der Pushover-Website eine Application zu hinterlegen (auf der Pushover-Website zu ''Apps & Plugins'' navigieren, Punkt ''Create a New Application'' wählen).
Danach müssen (nach erfolgter Registraion auf der Webseite) die einzelnen Geräte auf denen Nachrichten gesendet werden sollen registriert werden.
Die Application dient dazu, die Nachrichten FHEM zuzuweisen und sie leichter erkennbar zu machen. Für die Application wird von Pushover automatisch ein Token generiert (siehe Abschnitt ''API Token/Key'' auf der Pushover-Website).
Weiterhin wird eine "Userkey" und ein "Token" generiert, der bei der Einbindung in die verschiedenen Anwendungen und Dienste benötigt wird.


* Apple Geräte: [https://itunes.apple.com/de/app/pushover-notifications/id506088175?mt=8 Pushover App im Apple Store]
Nach Erstellung der Application müssen (nach erfolgter Registrierung auf der Webseite) die einzelnen Geräte, auf denen Nachrichten gesendet werden sollen, registriert werden.
* Android Geräte: [https://play.google.com/store/apps/details?id=net.superblock.pushover&hl=de Pushover App im Google Playstore]
Die Registrierung der Geräte erfolgt nach dem Anmelden in der App auf dem Endgerät automatisch.


== Einbinden des Dienstes in fhem ==
Auf dem Endgerät muss die Pushover-App installiert werden. Dies geschieht z. B. bei Apple-Geräten mit Hilfe des AppStores. Stand 08.10.2015 kostet diese Anwendung nach einer 7-tägigen kostenlosen Probephase 4,99 Euro (In-App-Kauf).
Das Modul wird mit dem folgenden Befehl in fhem definiert.
* Apple-Geräte: [https://itunes.apple.com/de/app/pushover-notifications/id506088175?mt=8 Pushover-App im Apple Store]
<pre>
* Android-Geräte: [https://play.google.com/store/apps/details?id=net.superblock.pushover&hl=de Pushover-App im Google Playstore]
define pushmsg Pushover <USERID> <TOKEN>
 
</pre>
'''Wichtig für Debian-Nutzer'''<br />
Für das Modul ist noch eine Library notwendig:
<pre>sudo apt-get install libio-socket-ssl-perl</pre>
 
== Einbinden des Dienstes in FHEM ==
Das Modul wird mit dem folgenden Befehl in FHEM definiert:
:<code>define pushmsg Pushover <TOKEN> <USER></code>


Die Token werden der Pushover-Seite entnommen.<br />
TOKEN = API Token/Key (zu finden unter der angelegten Application)<br />
USER = Your User Key (wird direkt nach dem Einloggen angezeigt)


== Senden eine Nachricht mit fhem ==
== Senden einer Nachricht mit FHEM ==
Syntax:
Syntax:
<pre>You can send messages via the following command:
<pre>You can send messages via the following command:
# set <Pushover_device> msg <title> <msg> <device> <priority> <sound> [<retry> <expire>]
# set <Pushover_device> msg ['<title>'] '<msg>' ['<device>' <priority> '<sound>' [<retry> <expire> ['<url_title>' '<action>']]]
</pre>
</pre>


Beispiel:
Beispiel:
<pre>fhem("set pushmsg msg 'fhem' 'Das Fenster wurde geschlossen!' '' 0 ''");</pre>
:<code>fhem("set pushmsg msg 'fhem' 'Das Fenster wurde geschlossen!' '' 0 ''");</code>


Nachricht sobald fhem neu geladen wurde mit Hilfe eines "notify":
Nachricht, sobald FHEM neu geladen wurde, mit Hilfe einer [[Notify]]-Anweisung:
<pre>
<pre>define notify_fhem_reload notify global:INITIALIZED set pushmsg msg 'fhem' 'Ich wurde neu geladen! - $EVENT' '' 0 ''</pre>
define notify_fhem_reload notify global:INITIALIZED set pushmsg msg 'fhem' 'Ich wurde neu geladen! - $EVENT' '' 0 ''
</pre>


== Erinnerungsfunktion mit Hilfe des Kalendar Moduls ==
== Erinnerungsfunktion mit Hilfe des Kalendermoduls ==
Zuerst wird eine Textdatei mit den Daten für die Erinnerung im FHEM Hauptverzeichnis erzeugt.  
Zuerst wird eine Textdatei mit den Daten für die Erinnerung im FHEM-Hauptverzeichnis erzeugt. Hier folgt ein Beispiel für den Fall, dass FHEM auf einer Fritzbox läuft:
Hier das Beispiel sofern fhem auf einer Fritzbox läuft:


<pre>
<pre>
Zeile 57: Zeile 62:
# mit ESC:wq die Datei speichern
# mit ESC:wq die Datei speichern
</pre>
</pre>
[[Datei:Define_events_holiday.png|mini|400px|rechts|Details des definierten Kalenders]]
In FHEM muss der Kalender folgendermaßen definiert werden:
:<code>define events holiday</code>


In fhem muss dann der Kalendar definiert werden.
Das im Bild gezeigte ''Device'' sollte erscheinen.
<pre>define events holiday</pre>


 
Der Befehl für die Zeitsteuerung wird mit dem folgenden [[at]] definiert (dieser Befehl muss ohne Zeilenumbrüche in die [[Konfiguration]] übernommen werden, vorzugsweise durch Eingabe in das Befehlsfeld):
Das folgende ''Device'' sollte erscheinen
:<code>define CheckEventToday at *20:15:00 {my $Eventname;;my $EventHeute;;$EventHeute=fhem("get events today");;print $EventHeute;;if ($EventHeute ne "none"){ $Eventname="Ereignis: $EventHeute";;fhem("set pushmsg msg 'fhem' 'Erinnerung an: $Eventname' '' 0 ''");;}}</code>
 
[[Datei:Define_events_holiday.png]]
 
Nun noch den sog. AT (zeitgesteuerte Befehl) definieren. Mit dem "Edit files" Knopf die fhem.cfg editieren und den folgenden Code
hinzufügen.
 
<pre>
define CheckEventHeute at *20:15:00 {\
  my $Eventname;;\
  my $EventHeute;;\
  $EventHeute = fhem("get events today");;\
  print $EventHeute;;\
  if ($EventHeute ne "none") {\
    $Eventname = "Reminder: $EventHeute" ;;\
    fhem("set pushmsg msg 'fhem' 'Erinnerung an: $Eventname' '' 0 ''");;\
  }\
}
</pre>


== Links ==
== Links ==
* fhem Commandref [http://fhem.de/commandref_DE.html#Pushover Pushover]
* FHEM-{{Link2CmdRef|Lang=de|Anker=Pushover}} Pushover
* Thread über das Modul im [http://forum.fhem.de/index.php/topic,16215.0.html Fhem Forum]
* Thread über das Modul im {{Link2Forum|Topic=16215|LinkText=FHEM-Forum}}
* Pushover API [https://pushover.net/api https://pushover.net/api]
* Pushover-API [https://pushover.net/api https://pushover.net/api]
 


[[Kategorie:Code Snippets]]
[[Kategorie:Code Snippets]]

Aktuelle Version vom 31. Januar 2018, 14:34 Uhr

Pushover
Zweck / Funktion
Senden von sogenannten Push-Nachrichten auf Tablets oder Smartphones
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Modulname 70_Pushover.pm
Ersteller Johannes B
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!


Pushover ist ein Dienst, mit dem es möglich ist, sogenannte Push-Nachrichten auf ein Apple- oder Android-Gerät zu schicken (Link zum Dienst: pushover.net). Um die Push-Nachrichten zu empfangen, muss die dazu passende App installiert werden (siehe unten). Der Dienst ist grundlegend kostenlos. Die App-Nutzung ist einmalig zu bezahlen. Es fallen keine Abo-Gebühren an (Stand 08.10.2015).

Installation

Es muss zwingend ein Pushover-Account erstellt werden. Anschließend ist auf der Pushover-Website eine Application zu hinterlegen (auf der Pushover-Website zu Apps & Plugins navigieren, Punkt Create a New Application wählen). Die Application dient dazu, die Nachrichten FHEM zuzuweisen und sie leichter erkennbar zu machen. Für die Application wird von Pushover automatisch ein Token generiert (siehe Abschnitt API Token/Key auf der Pushover-Website).

Nach Erstellung der Application 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 dem Anmelden in der App auf dem Endgerät automatisch.

Auf dem Endgerät muss die Pushover-App installiert werden. Dies geschieht z. B. bei Apple-Geräten mit Hilfe des AppStores. Stand 08.10.2015 kostet diese Anwendung nach einer 7-tägigen kostenlosen Probephase 4,99 Euro (In-App-Kauf).

Wichtig für Debian-Nutzer
Für das Modul ist noch eine Library notwendig:

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

Einbinden des Dienstes in FHEM

Das Modul wird mit dem folgenden Befehl in FHEM definiert:

define pushmsg Pushover <TOKEN> <USER>

Die Token werden der Pushover-Seite entnommen.
TOKEN = API Token/Key (zu finden unter der angelegten Application)
USER = Your User Key (wird direkt nach dem Einloggen angezeigt)

Senden einer Nachricht mit FHEM

Syntax:

You can send messages via the following command:
# set <Pushover_device> msg ['<title>'] '<msg>' ['<device>' <priority> '<sound>' [<retry> <expire> ['<url_title>' '<action>']]]

Beispiel:

fhem("set pushmsg msg 'fhem' 'Das Fenster wurde geschlossen!' 0 ");

Nachricht, sobald FHEM neu geladen wurde, mit Hilfe einer Notify-Anweisung:

define notify_fhem_reload notify global:INITIALIZED set pushmsg msg 'fhem' 'Ich wurde neu geladen! - $EVENT' '' 0 ''

Erinnerungsfunktion mit Hilfe des Kalendermoduls

Zuerst wird eine Textdatei mit den Daten für die Erinnerung im FHEM-Hauptverzeichnis erzeugt. Hier folgt ein Beispiel für den Fall, dass FHEM auf einer Fritzbox läuft:

telnet fritz.box
cd /var/media/ftp/fhem/opt/fhem/FHEM/
vi events.holiday

# ESC-i drücken um in den vi-Editmodus zu gelangen

# Format fur einzelne Tage: 1 MM-DD <Text>
1 03-23 Schwarze Tonne rausstellen
1 03-24 Gelbe Tonne rausstellen

# mit ESC:wq die Datei speichern
Details des definierten Kalenders

In FHEM muss der Kalender folgendermaßen definiert werden:

define events holiday

Das im Bild gezeigte Device sollte erscheinen.

Der Befehl für die Zeitsteuerung wird mit dem folgenden at definiert (dieser Befehl muss ohne Zeilenumbrüche in die Konfiguration übernommen werden, vorzugsweise durch Eingabe in das Befehlsfeld):

define CheckEventToday at *20:15:00 {my $Eventname;;my $EventHeute;;$EventHeute=fhem("get events today");;print $EventHeute;;if ($EventHeute ne "none"){ $Eventname="Ereignis: $EventHeute";;fhem("set pushmsg msg 'fhem' 'Erinnerung an: $Eventname' 0 ");;}}

Links