Pushbullet

Aus FHEMWiki
Wechseln zu: Navigation, Suche

Pushbullet ist ein Dienst, um Benachrichtigungen an unterschiedliche Endgeräte zu senden. Pushbullet stellt Apps für iPhone, Android, Windows (Beta), Mac OS X (bald erhältlich) sowie Plugins für Chrome und Firefox an. Eine genaue Liste kann hier eingesehen werden. Der Dienst sowie die Apps sind kostenlos.

Pushbullet
Zweck / Funktion
Senden von Push-Nachrichten an unterschiedliche Endgeräte
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Support (Forum) Unterstützende Dienste
Modulname 70_Pushbullet.pm
Ersteller fhainz


Installation

Zur Benutzung von Pushbullet ist ein Google Account zwingend notwenig. Falls noch kein Google Account vorhanden ist kann man diesen hier einrichten. Anschließend kann man sich auf pushbullet.com mit den Google Benutzerdaten einloggen. Den benötigten accessToken findet man in den Account Settings (rechts oben auf das Benutzer-Symbol klicken). Auf dem gewünschten Endgerät muss nur noch der entsprechende Client installiert werden.

Offizielle Clients

Smartphones

Browser-Erweiterungen

Betriebssystem-Erweiterungen

Clients durch die Community

Übersicht aller Clients: [1]

Einbinden des Dienstes in Fhem

Das Modul wird mit dem folgenden Befehl in fhem definiert:

define <name> Pushbullet <accessToken>


Push Benachrichtigung senden

Nachricht

Nachricht ohne Titel oder Gerät:

set <name> message Das ist eine Nachricht

Nachricht mit Titel ohne Gerät:

set <name> message Das ist eine Nachricht | Ein Titel

Nachricht mit Titel an Gerät iPhone:

set <name> message Das ist eine Nachricht | Ein Titel | iPhone

Nachricht mit Titel an Kontakt Max Mustermann

set <name> message Das ist eine Nachricht | Ein Titel | Max Mustermann

Wenn kein Titel angegeben wird tritt das Attribut defaultTitel in Kraft. Falls dies nicht gesetzt ist wird der Titel auf FHEM gesetzt. Wenn kein Device angeben wird tritt das Attribut defaultDevice in Kraft. Falls dies nicht gesetzt ist geht der Push an alle deine Devices. Kontakte erhalten die Benachrichtigung nicht!

Link

Der Inhalt des Links wird in der App direkt angezeigt. Ein Webcam Foto kann somit mit einem Touch direkt am Endgerät angezeigt werden.

Link ohne Titel oder Gerät:

set <name> link http://google.com

Link mit Titel ohne Gerät:

set <name> link http://google.com | Google

Link mit Titel an Gerät iPhone

set <name> link http://google.com | Google | iPhone

Link mit Titel an Kontakt Max Mustermann

set <name> link http://google.com | Google | MaxMustermann
  • Wenn kein Titel angegeben wird tritt das Attribut defaultTitel in Kraft. Falls dies nicht gesetzt ist wird der Titel auf FHEM gesetzt.
  • Wenn kein Device angeben wird tritt das Attribut defaultDevice in Kraft. Falls dies nicht gesetzt ist geht der Push an alle deine Devices. Kontakte erhalten die Benachrichtigung nicht!

Liste

Liste ohne Titel oder Gerät:

set <name> list Milch, Brot, Zucker

Liste mit Titel ohne Gerät:

set <name> list Milch, Brot, Zucker | Einkaufsliste

Liste mit Titel an Gerät iPhone

set <name> list Milch, Brot, Zucker | Einkaufsliste | iPhone

Liste mit Titel an Kontakt Max Mustermann

set <name> list Milch, Brot, Zucker | Einkaufsliste | MaxMustermann
  • Wenn kein Titel angegeben wird tritt das Attribut defaultTitel in Kraft. Falls dies nicht gesetzt ist wird der Titel auf FHEM gesetzt.
  • Wenn kein Device angeben wird tritt das Attribut defaultDevice in Kraft. Falls dies nicht gesetzt ist geht der Push an alle deine Devices. Kontakte erhalten die Benachrichtigung nicht!

Bilder versenden

Das geht über ein (von User stkr002 erstelltes) externes Skript, das im Bedarfsfall aus FHEM aufgerufen werden muss:

#!/usr/bin/perl -w
use WWW::PushBullet;
$KEY = 'XXXXXXXXXXXXXXXXXXXXXXX';
$pb = WWW::PushBullet->new({apikey => $KEY});
$filename = '/opt/fhem/snapshot/ipcam_snapshot.jpg';
$pb->push_file({ file_name => $filename});

Aufrufen kann man das Skript z.B. über Perl-Code aus FHEM:

 my $befehl = "/home/user/script";
 my $ausgabe = `$befehl`;

Wenn man keinen festen Dateinamen und Key verwenden möchte, sondern unterschiedliche Dateien an unterschiedliche Empfänger schicken möchte, muss das oben gepostete Skript die Auswertung von Kommandozeilenparametern mit eingebaut werden:

 my $argument = shift @ARGV;
 my $noch_ein_argument = shift @ARGV;

etc.

Kontakt hinzufügen

Mit

set <name> contactAdd <Name> | <email>

wird eine neuer Kontakt hinzugefügt. Dieser bekommt erstmal eine E-Mail mit einer Einladung zur Pushbullet App. Fall die App nicht installiert wird, bekommt der Kontakt Push-Benachrichtigungen als E-Mail zugestellt.


Gerät / Kontakt umbenennen

Mit

set <name> deviceRename <alterName> | <neuerName>

wird ein Gerät oder Kontakt umbenannt.


Gerät / Kontakt löschen

Mit

 set <name> deviceDelete <name>

wird ein Gerät oder Kontakt gelöscht.

Geräte / Kontakte neu einlesen

Mit

 get <name> devices

kann man die Device Liste von pushbullet.com neu einlesen.


Pushbullet Website

Die Pushbullet Website bietet umfangreiche Möglichkeiten die gesendeten Push Nachrichten, Geräte und Kontakte zu verwalten. Weiters kann man auch Nachrichten versenden und löschen.


Bekannte Probleme

Cannot load module Pushbullet

Bei einigen Installationen kommt es beim Start zu folgender Fehlermeldung:

Error messages while initializing FHEM:
configfile: Cannot load module Pushbullet
Cannot load module Pushbullet

Abhilfe schafft in der Regel, JSON zu installieren. Zum Beispiel auf dem Raspberry:

sudo apt-get install libjson-perl

Nachrichten von fhem werden nicht verschickt

Nachrichten von http://www.pushbullet.com/ kommen jedoch auf dem Telephon an. Sicherstellen, daß das perl IO:Socket:SSL Modul installiert ist:

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

Links