【发布时间】:2017-02-20 06:24:03
【问题描述】:
我有一个像这样的 电报机器人:
- 通过
webhook获取更新 - 语言:C# (我也欢迎其他语言的答案)
-
我们为用户提供以下场景:
- 向机器人发送
/MyPhoto a_parameter命令 - 向机器人发送照片
- 向机器人发送另一张照片
- 向机器人发送另一张照片
- 向机器人发送
基本问题:
在发送/MyPhoto a_parameter 命令后,确保用户发送的照片正确的最佳方法是什么?
一些方法:
- 我可以将每个用户执行的每个命令保存在数据库中,并获取当前用户最后执行的命令并与
/MyPhoto进行比较,如果它们相等,那么我确定用户是在/MyPhoto命令之后发送照片。 - 创建一个缓存系统来保存每个用户最后执行的命令(与db混合)
但如果可能的话,我想阻止获取 最后执行的命令 从数据库到提高性能。
您知道更好的解决方案吗?例如,在电报机器人 API 中使用某些东西将最后执行的命令隐藏在用户和机器人之间的发送/接收消息中。
我通过在上述场景中添加步骤 3 和 4 来编辑问题。
【问题讨论】: