gpt4 book ai didi

python - Yowsup WhatsApp 获取电话号码

转载 作者:太空狗 更新时间:2023-10-29 21:05:46 41 4
gpt4 key购买 nike

我正在尝试了解如何使用 Yowsup WhatsApp 的库。我可以发送消息也可以接收消息,但我有兴趣获取电话号码以开始新的聊天。换句话说,将开发一个可以与 WhatsApp 用户交互的计算机应用程序,现在我可以执行以下操作:

  1. 我使用以下命令访问了 WhatsApp 服务器:python yowsup-cli -c config.example --requestcode smspython yowsup-cli -c config.example --注册xxx-xxx
  2. 我使用以下命令发送消息:python yowsup-cli -c config.example -s 39xxxxxxxxxx "!"
  3. 我可以使用以下命令进行交互式对话:python yowsup-cli -c config.example -i 39xxxxxxxxxx
  4. 使用以下命令获取我收到的所有消息:python yowsup-cli -c config.example -l

现在,当用户向我发送消息时,我如何与他/她互动?我想我应该从命令 python yowsup-cli -c config.example -l 中获取电话号码,并使用此命令开始新的交互式对话:python yowsup-cli -c config。示例 -i 39xxxxxxxxxx 其中 39xxxxxxxxxx 是我通过上一个命令获得的用户数。我希望你能帮助我

最佳答案

我认为您不想将 yowsup-cli 用于开发目的。我认为它旨在成为一个功能非常有限的简单演示客户端。

如果您查看 yowsup-cli source code你会看到它实际上导入了 included examples提供命令行消息功能。

您在这段代码中看到的是您的 python yowsup-cli -c config.example -l 实际调用

wa = WhatsappListenerClient(args['keepalive'], args['autoack'])
wa.login(login, password)

另一方面,此示例监听器客户端有一个注册到 message_received 信号的回调函数。

self.signalsInterface.registerListener("message_received", self.onMessageReceived)

现在,如果你仔细看看这个函数

def onMessageReceived(self, messageId, jid, messageContent, timestamp, wantsReceipt, pushName, isBroadCast):
formattedDate = datetime.datetime.fromtimestamp(timestamp).strftime('%d-%m-%Y %H:%M')
print("%s [%s]:%s"%(jid, formattedDate, messageContent))

if wantsReceipt and self.sendReceipts:
self.methodsInterface.call("message_ack", (jid, messageId))

您可以看到 jid 以及您说需要的电话号码在 parameter list of this signal 上.如果您希望在用户向您发送消息后与其进行交互,我猜您应该将 jid 或电话号码存储在您自己的订阅者中以接收此信号。

简而言之 - 不要将 yowsup-cli 本身用于开发。使用它作为构建您自己的应用程序的起点。祝你好运!

关于python - Yowsup WhatsApp 获取电话号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22834486/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com