我正在使用python-telegram-bot编写对话,并且需要一种方法来禁用嵌套对话。也就是说,如果用户正在对话中,则用于另一个对话的输入命令不应激活另一个处理程序。
这似乎在ConversationHandler对象中不可执行。即我尝试在不希望运行其他命令(上载)的状态下捕获命令,但是这种方法不起作用-机器人很乐意启动另一个对话。另外,这不能单独使用后备
submission_conv_handler = ConversationHandler(
entry_points=[
CommandHandler('submit', self.submit_command),
],
states={
self.CHOSE_TYPE: [
CallbackQueryHandler(self.submission_query_callback, pattern=r'^(py|ipynb)')
],
self.UPLOAD: [
MessageHandler(Filters.document, self.upload_message),
MessageHandler(Filters.command | Filters.text , done)
],
},
fallbacks=[MessageHandler(Filters.all, done)]
)