带有自定义消息的 Python 电报机器人回调不起作用



我正在使用Python telegram bot api(https://python-telegram-bot.org/(来回复命令。

我的调度程序如下所示:

updater.dispatcher.add_handler(CommandHandler('show', hello, tweet))

回调函数是:

def hello(bot, update, tweet):
update.message.reply_text(tweet)

但这会导致挂起。有什么建议吗?

请参阅文档:变量tweet(添加处理程序时的任何内容(将为您的CommandHandler定义过滤器。
我只见过一次过滤器使用过(在这里,虽然我猜在这个例子中这是另一回事(,但根据我的理解,这只为Dispatcher对象添加了一个额外的规则,用于它将调度到该回调函数的更新类型,但Dispatcher仍然只会将两个参数传递给该回调函数botupdate。所以我想问题是你的回调函数hello期望三个位置参数,但引擎盖下的电报 API 只用两个参数调用它。即使您作为程序员未收到有关该失败的通知,此操作也会失败。

在向机器人用户↔写入预期答案的消息时,您尝试在预期输入的意义上做什么?从这个问题的标题来看,我猜/show message应该用message回答?像前面提到的示例中那样,可以使用MessageHandler来完成这样的事情。
还是您想做一些不同的事情?什么应该作为参数传递tweet?请澄清。

最新更新