[32_yowsup.pm] Whatsapp versenden (Mit Handy- oder Festnetznummer)

Begonnen von AHA1805, 01 Oktober 2014, 21:58:55

Vorheriges Thema - Nächstes Thema

phel

Zitat von: schka17 am 04 Februar 2015, 20:02:39
was ist übrigens das demos zwischen yowsup-cli und -c?

Seit Version 2.0 wurde die Syntax von yowsup-cli umgestellt.

python yowsup-cli demos
usage: demos [-h] [-v] [-d] [--help-config] [-l phone:b64password | -c CONFIG]
             [-m] [-y] [-e] [-s phone message]

Run a yowsup demo

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         Print version info and exit
  -d, --debug           Show debug messages
  --help-config         Prints a config file sample

Configuration options for demos:
  -l phone:b64password, --login phone:b64password
                        WhatsApp login credentials, in the format
                        phonenumber:password, where password is base64
                        encoded.
  -c CONFIG, --config CONFIG
                        Path to config file containing authentication info.
                        For more info about config format use --help-config
  -m, --moxie           Enable experimental support for the new WhatsApp
                        encryption

Command line interface demo:
  -y, --yowsup          Start the Yowsup command line client

Echo client demo:
  -e, --echo            Start the Yowsup Echo client

Send client demo:
  -s phone message, --send phone message
                        Send a message to specified phone number, wait for
                        server receipt and exit

schka17

Ah, OK. Das ist dann aber nur zur Demo und nicht für "richtige"Nachrichten?
Zumindest funktioniert es bei mir ohne demos.

Gruß
Karl


Sent from my iPad using Tapatalk
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

phel

nein, das senden von Nachrichten ist nur eine Demo-Anwendung umd die Möglichkeiten von yowsup zu demonstrieren. Eine Nachricht wird inzwischen so geschickt:

python yowsup-cli demos -c config -s 49xxxxxxxxxxx "blah?"

Fhemeinsteiger

Hallo  schka17
Danke für die Möglichkeit einer ausführlicheren Fehlersuche.
Zitatkannst du als fhem Benutzer aus der shell erefolgreich eine nachricht schicken?
Wenn die shell telnet bedeutet so funktioniert es nicht. Es funktioniert immo nur vom Terminal pi .

Zitatist python im Pfad des Benutzers fhem?
Da sind sie wieder meine vielen Fragezeichen? Wie kann ich dass Überprüfen? Und wie kann ich es richten?

Zitathat der benutzer die rechte yowsup-cli zu lesen?
yowsup-cli hat fhem rechte und steht unter /usr/local/bin

Ich glaube wenn die Fragen abgearbeitet sind, bin ich schon wesentlich weiter.

Fhemeinsteiger

Carsten

Hallo,

wie sieht das mit yowsup und der Whatsapp Lizenz aus? Zumindest bei Android muss ich für Whatsapp jährlich bezahlen. Läuft das bei yowsup dann nach einem Jahr einfach nicht mehr oder ignoriert der das?

schka17

Hallo Fhemeinsteiger,

Zitat von: Fhemeinsteiger am 04 Februar 2015, 15:16:09
Hallo,
Ich habe auch Whatsapp aufm Pi installiert und bin nach der Anleitung von "http://www.johannespetz.de/yowsup-cli-linux-whatsapp-nachrichten-verschicken/" gegangen.
Vom pi Terminal aus funktioniert es einwandfrei mit:

yowsup-cli demos -s 4915xxxxxx "Garage ist zu" -c config.yowsup

Aber mit Fhem nicht.
Im Fhem log steht zwar:

2015.02.04 13:36:53 3: sendWhatsapp  Nr: 4915xxxxxxxx Message:"Garagentor Event: Open"

die 99_myUtils.pm agepasst mit Hilfe des letzten Beitrages:

######################################################
# Aufgabe    :Versenden von Whatsapp
# Parameter 1:Nummer Format 4915212345678
# Parameter 2:Message
#
sub sendWhatsapp($$)
{
   my ($nr, $Message) = @_;
   Log 3, "sendWhatsapp  Nr: ". $nr . " Message:\x22" . $Message . "\x22 ";
   #Direkter Aufruf
   system("phyton /opt/fhem/yowsup-cli demos -c /opt/fhem/config.yowsup -s $nr \"$Message\"");

fhem.conf:

define Alarm notify Garagentor:Open  {sendWhatsapp("4915xxxxxx","$NAME Event: $EVENT")}

aber auf dem Handy bleibt es still?
Ich weis einfach an der Stelle nicht weiter?
Wäre schon toll wenn's funktionieren würde.
Bitte um Hilfe!

Fhemeinsteiger

scheinbar verwende ich eine ältere Version da mein client eine andere Syntax hat, aber wenn es bei aus dem Terminal funktioniert dann sollte man das hinbekommen.

ZitatWenn die shell telnet bedeutet so funktioniert es nicht. Es funktioniert immo nur vom Terminal pi .


yowsup-cli demos -s 4915xxxxxx "Garage ist zu" -c config.yowsup
was meinst du mit Terminal pi? wie loggst du dich ein, direkt an der console, über ssh/telnet? welchen Benutzer verwendest du dafür?
bei deinem Beispiel oben fehlt aber doch etwas?

Poste bitte mal den vollständigen Befehl der bei dir auf der Console funktioniert (die nummer kannst natürlich weglassen).
Dazu die Ausgabe der commands "whoami", "pwd" und "which python"

Gruß
Karl
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

Fhemeinsteiger

Hallo,
ich logge mich über WinSCP und darin Putty als Benutzer pi ein.

Putty :
yowsup-cli demos -s 491xxxxxx "Garage ist zu" -c config.yowsup

und schon bimmelts im Handy  :)

die Ausgabe:


WARNING:yowsup.stacks.yowstack:Implicit declaration of parallel layers in a tuple is deprecated, pass a YowParallelLayer instead
INFO:yowsup.demos.sendclient.layer:Message sent

Yowsdown
pi@raspberrypi ~ $


Das funktioniert soweit. Aber fhem ?? :-\ :-\

@Carsten
Die Bezahlung von Whatsapp erfolgt über die angegebene Handynummer.

Fhemeinsteiger

schka17

Zitat von: Fhemeinsteiger am 06 Februar 2015, 17:08:56
Hallo,
ich logge mich über WinSCP und darin Putty als Benutzer pi ein.

Putty :
yowsup-cli demos -s 491xxxxxx "Garage ist zu" -c config.yowsup

und schon bimmelts im Handy  :)

die Ausgabe:


WARNING:yowsup.stacks.yowstack:Implicit declaration of parallel layers in a tuple is deprecated, pass a YowParallelLayer instead
INFO:yowsup.demos.sendclient.layer:Message sent

Yowsdown
pi@raspberrypi ~ $


Das funktioniert soweit. Aber fhem ?? :-\ :-\

@Carsten
Die Bezahlung von Whatsapp erfolgt über die angegebene Handynummer.

Fhemeinsteiger

ok, und die ausgabe der Befehle die ich dir geschrieben habe? mache bitte auch zusätzlich die Ausgabe von  "ls-al"
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

Fhemeinsteiger

zu whoami:
pi@raspberrypi ~ $ whoami
pi


zu pwd:/home/pi

zu which python:/usr/bin/python


zu ls-al:-bash: ls-al: Kommando nicht gefunden.

Danke

schka17

M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

Fhemeinsteiger

ok.
pi@raspberrypi ~ $ ls -al
insgesamt 2320
drwxr-xr-x 17 pi   pi     4096 Feb  4 18:13 .
drwxr-xr-x  3 root root   4096 Jun 20  2014 ..
-rw-------  1 pi   pi     2203 Feb  5 13:58 .bash_history
-rw-r--r--  1 pi   pi      220 Jun 20  2014 .bash_logout
-rw-r--r--  1 pi   pi     3243 Jun 20  2014 .bashrc
drwxr-xr-x  5 pi   pi     4096 Sep 20 14:34 .cache
drwxr-xr-x  9 pi   pi     4096 Aug  4  2014 .config
-rwxrwxrwx  1 pi   pi      172 Feb  3 10:39 config.yowsup
drwx------  3 pi   pi     4096 Aug  4  2014 .dbus
drwxr-xr-x  2 pi   pi     4096 Jan 29 14:12 Desktop
-rwxrwxr-x  1 root pi      124 Feb  1 15:23 digistart.sh
drwxr-xr-x  2 pi   pi     4096 Aug  4  2014 .fontconfig
drwx------  2 pi   pi     4096 Sep 12 19:23 .gconf
drwx------  2 pi   pi     4096 Aug  4  2014 .gvfs
drwx------  3 pi   pi     4096 Jan 29 14:11 .local
drwx------  2 pi   pi     4096 Aug  4  2014 .netsurf
-rw-r--r--  1 pi   pi     5781 Feb  3  2013 ocr_pi.png
drwxr-xr-x 14 root root   4096 Feb  1 18:13 Ordner
-rw-r--r--  1 pi   pi      675 Jun 20  2014 .profile
drwxr-xr-x  4 pi   pi     4096 Feb  1 19:12 .python-eggs
drwxrwxr-x  2 pi   pi     4096 Mär 10  2013 python_games
drwx------  4 pi   pi     4096 Aug  4  2014 .thumbnails
drwx------  2 pi   pi     4096 Aug  4  2014 .vnc
-rw-r--r--  1 root root 748816 Mai 13  2008 Wallpaper (18).jpg
-rw-r--r--  1 root root 850059 Mai 13  2008 Wallpaper (5).jpg
-rw-r--r--  1 root root 613571 Mai 13  2008 Wallpaper (7).jpg
-rw-------  1 pi   pi    50373 Feb  5 16:16 .xsession-errors
drwxr-xr-x  3 pi   pi     4096 Feb  3 10:36 .yowsup

schka17

Zitat von: Fhemeinsteiger am 06 Februar 2015, 17:35:37
ok.
pi@raspberrypi ~ $ ls -al
insgesamt 2320
drwxr-xr-x 17 pi   pi     4096 Feb  4 18:13 .
drwxr-xr-x  3 root root   4096 Jun 20  2014 ..
-rw-------  1 pi   pi     2203 Feb  5 13:58 .bash_history
-rw-r--r--  1 pi   pi      220 Jun 20  2014 .bash_logout
-rw-r--r--  1 pi   pi     3243 Jun 20  2014 .bashrc
drwxr-xr-x  5 pi   pi     4096 Sep 20 14:34 .cache
drwxr-xr-x  9 pi   pi     4096 Aug  4  2014 .config
-rwxrwxrwx  1 pi   pi      172 Feb  3 10:39 config.yowsup
drwx------  3 pi   pi     4096 Aug  4  2014 .dbus
drwxr-xr-x  2 pi   pi     4096 Jan 29 14:12 Desktop
-rwxrwxr-x  1 root pi      124 Feb  1 15:23 digistart.sh
drwxr-xr-x  2 pi   pi     4096 Aug  4  2014 .fontconfig
drwx------  2 pi   pi     4096 Sep 12 19:23 .gconf
drwx------  2 pi   pi     4096 Aug  4  2014 .gvfs
drwx------  3 pi   pi     4096 Jan 29 14:11 .local
drwx------  2 pi   pi     4096 Aug  4  2014 .netsurf
-rw-r--r--  1 pi   pi     5781 Feb  3  2013 ocr_pi.png
drwxr-xr-x 14 root root   4096 Feb  1 18:13 Ordner
-rw-r--r--  1 pi   pi      675 Jun 20  2014 .profile
drwxr-xr-x  4 pi   pi     4096 Feb  1 19:12 .python-eggs
drwxrwxr-x  2 pi   pi     4096 Mär 10  2013 python_games
drwx------  4 pi   pi     4096 Aug  4  2014 .thumbnails
drwx------  2 pi   pi     4096 Aug  4  2014 .vnc
-rw-r--r--  1 root root 748816 Mai 13  2008 Wallpaper (18).jpg
-rw-r--r--  1 root root 850059 Mai 13  2008 Wallpaper (5).jpg
-rw-r--r--  1 root root 613571 Mai 13  2008 Wallpaper (7).jpg
-rw-------  1 pi   pi    50373 Feb  5 16:16 .xsession-errors
drwxr-xr-x  3 pi   pi     4096 Feb  3 10:36 .yowsup


ok, jetzt bitte noch den output von "which yowsup-cli"
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

Fhemeinsteiger

alles klar

zu which yowsup-cli:
/usr/local/bin/yowsup-cli

Carsten

Zitat von: Fhemeinsteiger am 06 Februar 2015, 17:08:56
@Carsten
Die Bezahlung von Whatsapp erfolgt über die angegebene Handynummer.

Fhemeinsteiger

Kann ich mir ehrlich gesagt nicht vorstellen. Wie soll das gehen? Whatsapp ( und auch yowsup ) hat ja ggf. gar keinen Zugriff auf das Handy/Gerät, ausser dass sie da einmal eine SMS hinschicken.
Bei Android-Geräten wird das ja auch über Google Wallet ( oder wie das heißt ) gemacht. Prinzipiell unabhängig von der SIM.

schka17

Zitat von: Fhemeinsteiger am 06 Februar 2015, 17:43:17
alles klar

zu which yowsup-cli:
/usr/local/bin/yowsup-cli

ok, was wissen wir bis jetzt:
der yowsup client liegt im Verzeichnis /usr/local/bin und das ist im suchpfad des aktuellen Benutzers "pi"
die configurations datei liegt im homeverzeichnis des aktuellen Benutzers, hat die berechtigungen 777 gesetzt also alle benutzer dürfen schreiben,lesen,ausführen -> etwas unsicher, dort sind ein paar sensible informationen.

d.h. dieser Befehl sollte jetzt mit allen Pfadangaben funktionieren?
/usr/local/bin/yowsup-cli demos -s 491xxxxxx "Garage ist zu" -c /home/pi/config.yowsup

Um sicherzustellen dass fhem mittels sudo Befehle ausführen darf musst du prüfen ob in der /etc/sudoers folgende Zeile enthalten ist:

fhem   ALL= (ALL) NOPASSWD: ALL

wenn das soweit mal alles passt, dann müsste das auch aus dem FHEM Befehlsfenster eigentlich auch funktionieren:

{system("/usr/local/bin/yowsup-cli demos -s 491xxxxxx \"Garage ist zu\" -c /home/pi/config.yowsup")}
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000