我似乎对 TelegramBotAPI 库有所了解,我决定研究 aiogram,但立即遇到了问题,我不知道如何在用户回答机器人的问题后立即捕获用户的响应。那么,在 telebot 中,该函数负责此操作。
bot.register_next_step_handler()
aiogram 中是否有具有相同操作的函数?我只是到处都找不到它。
我似乎对 TelegramBotAPI 库有所了解,我决定研究 aiogram,但立即遇到了问题,我不知道如何在用户回答机器人的问题后立即捕获用户的响应。那么,在 telebot 中,该函数负责此操作。
bot.register_next_step_handler()
aiogram 中是否有具有相同操作的函数?我只是到处都找不到它。
我最近在切换到 Aiogram3 后也遇到了这个问题。通常,现成的解决方案不会写在这里,除非建议尝试,但我自己也遇到过误解,所以就写在这里。
这是解决此类问题的完全不同的方法。除了指定下一个函数之外,它还使用FSM(状态机),在其中监视当前状态并可以动态切换和重定向。
为了进行比较,我将为您提供两个功能相同的代码,但为了清楚起见,它们基于两个库:
远程机器人:
AI图3:
这样你就可以提前声明你需要的所有状态,然后指定要切换到哪一个状态,然后清除状态以退出它。
有用的链接:
不错的文章
这里有视频解释
官方文档