这里有两个循环:
- 当用户没有为 slot 输入正确的值时,从DialogFlow重新提示
例如 .
机器人:你的车的颜色是什么?网友:马铃薯机器人:你的车的颜色是什么?网友:番茄机器人:你的车的颜色是什么? ...
- 从DialogFlow获取后备意图回复
例如 .
Bot:你的汽车品牌是什么?网友:red Bot:对不起,你能改写吗?网友:red red Bot:我不明白,你能再说一遍吗? ...
如何走出这些场景?没有设置重新提示的次数 .
感谢@Abhinav,我得到了一种使用 outputContexts
来解决这个问题的方法,但是我得到了很多案例来让这个工作如下图所示:
但是我是否应该增加计数器或递减计数器而感到困惑 . 由于每次调用输出上下文也会减少 .
1 回答
你需要自己维护 . 对于Google上的操作,您可以查看以下示例https://developers.google.com/actions/assistant/reprompts
对于Dialogflow:
创建参数"re-prompt"
在后备意图中检查它 .
在后备中增加它 .
在其他意图中重置或减少它 .
如果大于2,您可以通过让用户知道您目前无法处理来退出对话 .