Проверка подлинности Yowsup не работает

#python #whatsapp #yowsup

#python #whatsapp #yowsup

Вопрос:

Я пытаюсь провести некоторый тест с помощью этой замечательной библиотеки.

Я успешно провел тесты с помощью yowsup-cli, но теперь я хотел бы создать небольшой скрипт на python для интеллектуального управления событиями (с помощью прослушивателя / обратного вызова).

Я пытаюсь использовать код, описанный здесь https://github.com/tgalal/yowsup/wiki/Yowsup-Library-Documentation:

 def onAuthSuccess(username):
print "Logged in with %s" % s
# make a call to method ready to be able to receive messages
methodsInterface.call("ready")


y = YowsupConnectionManager()
signalsInterface = y.getSignalsInterface()
methodsInterface = y.getMethodsInterface()
signalsInterface.registerListener("auth_success", onAuthSuccess)
methodsInterface.call("auth_login", ("username", "password"))
 

Понятно, что имя пользователя должно быть nationNumber PhoneNumber без других символов. Но мне не ясно, где должен быть найден пароль.
С cli механизм аутентификации отличается, и для него требуется регистрация.

Не могли бы вы мне помочь, пожалуйста? Спасибо

Ответ №1:

Просто если у кого-то есть такая же проблема, что аутентификация не работает, хотя вы передаете правильное имя пользователя и пароль в качестве аргумента, вам нужно кодировать пароль на основе 64, как это делается в клиенте командной строки.

Вы должны получить пароль, зарегистрировавшись с помощью Yowsup или WART ИЛИ со своего телефона ( https://github.com/tgalal/yowsup/issues/234 ? )

  import base 64
 password= 'randomletters somenumbers=' #Get this by registering
 password = base64.b64decode(bytes(rawPass.encode('utf-8'))) 
 

Это не очевидно, и я часто забываю и, возможно, что-то идет не так.

Ответ №2:

вы, вероятно, хотите написать

 import base64
 

Тем не менее, это все еще не работает для меня, хотя отправка сообщений с помощью yowsup-cli работает нормально.

Кажется, что все еще есть разница в аутентификации, которую я не понял.