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

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Angeregt durch das Posting [url=https://forum-raspberrypi.de/forum/thread/4889-eigene-nachrichten-vom-pi-push-aufs-android-handy/]eigene Nachrichten (vom Pi) Push aufs 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

    Edited once, last by ps915 (February 13, 2014 at 7:05 PM).

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

  • 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.

    Edited once, last by dbv (October 29, 2013 at 10:30 AM).

  • 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 ,

    Edited once, last by docadams (January 7, 2016 at 9:10 PM).

  • 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.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!