Ankündigung

Einklappen
Keine Ankündigung bisher.

Neues Plugin: Whatsapp

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • EIB@Home
    antwortet
    Hey, tolle Idee. Zukünftig schickt mir mein Haus whatsapp ;-)

    Kurze Frage:
    ist die whatsapp.py immer notwendig, oder nur, wenn ich auf eingehende whatsapp-Nachrichten reagieren will?

    Danke und Gruss
    Marco

    Einen Kommentar schreiben:


  • buffi
    antwortet
    Hey super!

    danke dir

    gruss Buffi

    Einen Kommentar schreiben:


  • mode
    antwortet
    Alles klar, ich merge manuell und pushe es dann aufs git...

    Einen Kommentar schreiben:


  • buffi
    antwortet
    Hallo zusammen,

    man kann nun auch Bilder versenden

    sh.whatsapp.sendPicture(url, username, password, phoneNumber)

    Es ist aber noch nicht so sauber gelöst. Ich hole zuerst das Bild auf das lokale Filesystem und schiebe es dann wieder auf den Wahtsapp-Server. Sehr unschön. Aber den Url-Input-Stream auf den Whatsapp-output-stream zu legen hat wohl geklappt, die Übertragung hat aber 1 Minute gedauert...auch unschön. Vielleicht kann sich das mal jemand mit python Erfahrung anschauen.

    Plugin in Anhang.

    @mode
    natürlich kannst du das in git bringen. macht vieles einfacher
    Meine Frage an dich, hast du viele Änderung machen müssen für deine Erweiterung?
    Ansonsten versuche ich den git push origin develop, nur das keine Merge/Konfikt-Orgie entsteht. Oder du nimmst V3 und mergest deine Änderung da rein und commitest es.


    gruss Buffi

    Einen Kommentar schreiben:


  • mode
    antwortet
    Hallo Buffi,

    ich habe das Plugin noch ein wenig erweitert, so dass die aufzurufende Logik bei eingehenden Nachrichten in der logic.conf eingestellt werden kann.
    Hast du was dagegen wenn ich diesen Stand schon mal ins GIT bringe? Dann können wir alle zusammen weiter daran arbeiten....

    Einen Kommentar schreiben:


  • buffi
    antwortet
    @mode
    Das mit dem git werde ich demnächst versuchen, bin aber grad noch dran ne Möglichkeit zu bieten, dass man auch Bilder verschicken kann.

    Meine Config sieht so aus:
    trusted = 4179xxxxxx | 4178xxxxxx
    Ich wollte zuerst auch den Werte in der Config splitten, was aber dann nicht nötig war…warum auch immer, es gingt einfach grad schon so.

    Man könnte das Plugin/Config sicherlich noch Typsafer machen. Ich habe bis jetzt nur noch keine Zeit investiert, um Fehlkonfigurationen abzufangen…

    Gruss Buffi

    Einen Kommentar schreiben:


  • Friese
    antwortet
    Plugin kopiert, eingerichtet und läuft!

    Toll. Danke

    Gruß

    Heiko

    Einen Kommentar schreiben:


  • mode
    antwortet
    Eine Frage habe ich noch.
    Wie befüllst du das Attribut trusted in der plugin.conf.
    Für mich sieht es so aus, als ob du in trusted ein Array von mehreren Nummern vorhalten möchtest.
    So weit ich weiss sind alle Werte die aus einer Config kommen aber ein String.
    Dh. ein trusted[0] gibt dir nicht die erste NUmmer sondern das erste Zeichen des Strings der so aussieht wie ein Array.

    Oder gibt es eine Möglichkeit Arrays aus config Files zu übergeben?

    LG

    Einen Kommentar schreiben:


  • mode
    antwortet
    Bezüglich des git commits gehe mal wie folgt vor:
    Ins Smarthome Root Dir wechseln.
    git pull
    git add plugins/whatsapp/*
    git commit -m "Your Commit message"
    git show
    git push origin develop.

    Einen Kommentar schreiben:


  • marcjoerg
    antwortet
    Super Plugin!
    Danke!

    Einen Kommentar schreiben:


  • buffi
    antwortet
    Hallo zusammen, ich habe noch ein paar kleine Änderungen vorgenommen.

    * Wenn keine Nummer angegeben wurde (sh.whatsapp("Testmsg")), und kein Absender evaluiert werden konnte, dann wird die erste Nummer von von "trusted" in der config genommen.
    * Der Client beendet die Verbindung zum Server sporadisch. Neu wird nach einem Disconnect wieder automatisch eine Verbindung haufgebaut.

    PS: Ich wollte es noch in den developer commiten, hat aber nicht so ganz geklappt....


    Code:
    admin@smarthome:/usr/smarthome/plugins/whatsapp$ git status                                                                                                                                                                                                                     
    # On branch develop                                                                                                                                                                                                                                                             
    # Your branch is ahead of 'origin/develop' by 1 commit.                                                                                                                                                                                                                         
    #                                                                                                                                                                                                                                                                               
    # Changes not staged for commit:                                                                                                                                                                                                                                                
    #   (use "git add <file>..." to update what will be committed)                                                                                                                                                                                                                  
    #   (use "git checkout -- <file>..." to discard changes in working directory)                                                                                                                                                                                                   
    #                                                                                                                                                                                                                                                                               
    #       modified:   ../../lib/item.py                                                                                                                                                                                                                                           
    #       modified:   ../../lib/tools.py                                                                                                                                                                                                                                          
    #                                                                                                                                                                                                                                                                               
    # Untracked files:                                                                                                                                                                                                                                                              
    #   (use "git add <file>..." to include in what will be committed)                                                                                                                                                                                                              
    #                                                                                                                                                                                                                                                                               
    #       ../../.sh.swp                                                                                                                                                                                                                                                           
    #       ../../knxAdress.txt                                                                                                                                                                                                                                                     
    #       __init__.py.NOK                                                                                                                                                                                                                                                         
    #       __init__.py.OK                                                                                                                                                                                                                                                          
    #       ../../testGroupsrite.sh                                                                                                                                                                                                                                                 
    no changes added to commit (use "git add" and/or "git commit -a")                                                                                                                                                                                                               
    admin@smarthome:/usr/smarthome/plugins/whatsapp$

    Einen Kommentar schreiben:


  • mode
    antwortet
    Super! Genau das wollte ich die nächsten Tage auch zusammenklicken.

    Das kann ich mir nun sparen

    Einen Kommentar schreiben:


  • buffi
    hat ein Thema erstellt Neues Plugin: Whatsapp.

    Neues Plugin: Whatsapp

    Hallo zusammen,

    ich habe auch mein erstes Plugin gemacht. Mit diesem Plugin könnt ihr Whatsapp Nachrichten senden und auch empfangen. Dazu müsst ihr folgendes machen:

    1. Eine freie TelefonNr. besorgen und die Nummer Registrieren. Hier hat es ein Howto dazu:
    Mit dem Pi über WhatsApp Nachrichten, etc. senden!
    2. Da es (noch) nicht im git eingechekt ist, die angehängt Datei im plugin-Verzeichnis entpacken.
    3. Konfigurieren: siehe dazu README.md

    Das Plugin baut auf Yowsup auf: https://github.com/tgalal/yowsup/wiki/yowsup-cli

    Daher bitte zuerst überprüfen, ob ihr per Yowsup mit euch selbst kommunizieren könnt.
    Auf Nachrichten hören: python yowsup-cli -c whatsapp.conf -l -a –k
    Nachricht senden: python yowsup-cli -c / whatsapp.conf -s 417912345678 "hallo"
    Wenn das nicht geht, wird’s auch im SH nicht funktionieren.

    Das Plugin hat sicherlich noch die einen oder anderen Macken, aber es macht mal soweit das was es tun soll. Zudem wird davon ausgegangen, dass es eine Logik gibt mit dem namen „whatsapp“. Kann man bestimmt noch besser lösen…mir ist nur kein Beispiel untergekommen.

    Viel Spass damit
    Buffi
Lädt...
X