Noch ein Weg: Nachrichten vom PI via Push auf ein Android Device

  • Angeregt durch das Posting https://forum-raspberrypi.de/forum/thread/4…-android-handy/ habe ich mir eigene Gedanken zu dem Thema gemacht (wobei ich den beschriebenen Weg im o.g. Posting nicht schmälern will!).

    Da ich auf meinem Android sowieso den Dienst PushBullet benutze (der es erlaubt, mittels Browser Plugins bzw. Web-Zugang) Notizen, Listen, URLs usw. auf ein oder mehrere Android Geräte zu pushen (die dort als Benachrichtigungen erscheinen), liegt es nahe die mit dem Dienst zur Verfügung stehende API zu benutzen, um von einem Raspberry Nachrichten auf ein Android Gerät zu schicken.

    Die API ist hier erklärt: https://www.pushbullet.com/api
    Den notwendigen API Key findet jeder registrierte Benutzer in den Account Settings, die device_id kann man einmalig ermitteln. Das ganze dann in ein einfaches shell-Skript und fertig.

    Der eigentliche Aufruf sieht dann so aus:

    Code
    curl -u $API_KEY: -d device_id=$DEV_ID -d type=note -d title="Msg from Raspi" -d body="$MSG" -X POST 
    https://api.pushbullet.com/api/pushes

    Einmal editiert, zuletzt von ps915 (13. Februar 2014 um 19:05)

  • Noch ein Weg: Nachrichten vom PI via Push auf ein Android Device? Schau mal ob du hier fündig wirst!

    • Offizieller Beitrag

    Alternativ sollte auch urllib damit klar kommen. In diesem Fall würde ich aber auch curl über subprocess aufrufen

    Der Unterschied zwischen Genie und Wahnsinn definiert sich im Erfolg.

    Einmal editiert, zuletzt von dbv (29. Oktober 2013 um 10:30)

  • Na denn...

    Hinweise:

    • allen die was anderes als ein bash-Skript benutzen wollen, würde ich raten, das selbst in der gewünschten Programmier-/Skript-Sprache zu implementieren. Letztendlich reduziert sich das ja auf einen HTTP POST Aufruf
    • Die Konfiguration geschieht entweder im Skript selbst durch Eintragen der Werte für DEV_ID, API_KEY (und ggf. Default TITLE) oder durch Erstellen einer Datei $HOME/.pushtoandroid.conf die zeilenweise die entsprechenden Einträge enthält.
    • Diese Konfigurations-Einstellungen lassen sich durch die entsprechenden Kommandozeilen-Optionen überschreiben.

    Ggf. wird dies bei Gelegenheit in einem github Repository landen, kann ich aber nicht versprechen.

  • Habe für mich jetzt noch einen Rück Kanal eingebaut um auch Anweisungen an den Pi zu senden. Bei Interesse melden.

  • Kleines socket script auf dem pi und bei Android auf klick der pushbullet notification reagieren. Das ist es eig schon. So kann man auch Nachrichten über einen Umweg zurück senden.

  • Habe das ganze auch gerade mal getestet und versucht, eine Meldung auf mein iPhone zu schicken (Mittlerweile gibt es die App auch für iOS).

    Wenn ich den Curl Befehl direkt eingebe bzw. über ein Script aufrufe, kommt immer eine Abfrage nach dem Passwort ("Enter host password for user '<Mein API-Key>':"). Diese bestätige ich einfach mit Enter und die Nachricht wird gesandt.

    Da ich aber gerne automatisiert solche Pushnachrichten schicken würde, hätte ich diese Abfrage gerne umgangen. Ich habe auch schon ein -v getestet, leider ohne Erfolg.

    Sonst noch jemand ne Idee, wie ich diese Frage umgehen kann?

    Danke

    Tobi

  • Hallo zusammen,

    genau so eine Funktion suche ich und werde es mal testen, allerdings wäre es für mich wichtig auch Nachrichten an den PI zu senden...

    leider ist der Benutzer gelöscht, der das wohl hinbekommen hat.

    Gibt es hier vielleicht noch jemand der Pushbullet benutzt und vielleicht erklären könnte wie man Nachrichten zum PI schicken kann
    und der diese Nachricht auch verarbeitet.

    Ich stellen mir das so vor... ich pushe "runterfahren" zum PI und der PI interpretiert es als "sudo shutdown -h now"

    Wäre total klasse, wenn das funktionieren würde !!!

    Vielen Dank und viele Grüße

    Markus

  • Möglicherweise hast du den Doppelpunkt nach dem deinemAPI-Key vergessen ;)

  • EDIT: Ich ziehe meine Frage zurück.
    Also bitte nicht antworten, ich löse das anders.


    Hallo,
    ist zwar schon ein Stückchen älter, aber die Lösung könnte ich mir gut für meine (größtenteils in Bash geschriebene) Haussteuerung vorstellen. So nach dem Motto "Fenster 1 wurde geöffnet" und so weiter.

    Allerdings sind meine Kenntnisse für diese Anwendung zu gering. Auch glaube ich, dass bei Pushbullet evtl. etwas verändert wurde.

    Also, ich habe mich über mein Google-Konto angemeldet und mit dem Zugangs-Token folgende Abfrage gestartet:

    Code
    curl --header 'Access-Token: aaaaa...\https://api.pushbullet.com/v2/users/me

    Darauf bekam ich folgende Antwort:

    Wenn ich den Code aus #9 mit nur diesen Änderungen übernehme:

    Code
    # settings read from config file or set on command line
    TITLE=Alarm-Titel
    MSG=Alarm-Nachricht
    DEV_ID=bbbbb <also iden>
    API_KEY=aaaaa <also Access-Token>
    VERBOSE=        <frei gelassen>

    bekomme ich diese Meldung:

    Code
    ./pushalarm.sh
    ./pushalarm.sh: Zeile 87: Warnung: here-document at line 15 delimited by end-of-file (wanted `EOF')
    ./pushalarm.sh: Zeile 88: Syntax Fehler: Unerwartetes Dateiende.

    Vermutlich nutze ich das Programm falsch, aber ich muss mir erst mal eine Vorstellung machen, wie das überhaupt läuft.

    Viele Grüße
    DocAdams

    1x RaspberryPi 2, 1x RaspberryPi 3, 1x OpenELEC, 1x RaspberryPi 4 mit ioBroker ,

    Einmal editiert, zuletzt von docadams (7. Januar 2016 um 21:10)

  • Finde die App Simplepush für sowas ganz gut. Kann zwar nicht so viel aber ist viel einfacher zu benutzen und man muss sich auch nicht registrieren. Leider nur für Android.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!