我对与用户的电报机器人的通信逻辑有疑问。重点是要实现如何使电报机器人了解他必须等待某些用户的回复。
例如 - 我有一个设置菜单,它与数据库中的某些用户设置相关联。
因此,用户点击菜单中的“设置”按钮,获取InlineKeyboardMarkup的选项列表:
选项1选项2选项3
如何更好地组织逻辑以使机器人了解在用户点击某些选项后,僵尸程序必须等待用户的回复,验证它,等等,如果用户在那一刻点击了另一个选项,则切换到它,或强制用户取消之前的。
我正在使用php并使用https://telegram-bot-sdk.readme.io
感谢您的回答!
答案 0 :(得分:3)
您需要在数据库或缓存中为该特定用户保留某种状态。每当您收到更新时,您需要检查用户是否处于特定状态,例如填写表单或更改设置以及他们所处的阶段。然后将更新数据路由到代码的相关部分。 确保在收到/ start或/ cancel等主要命令时重置状态,如果出现问题,您不希望将用户陷入状态。