首页 > 解决方案 > Dialogflow Fulfillment 无法进行动态测验聊天机器人

问题描述

我希望你们都过得愉快。

我正在尝试在对话流中制作一个动态测验聊天机器人。

所以,我有一个用户说“让我们玩个游戏”。然后它会进入意图并实现。然后履行将进入一个方法并从我的数据库中获取动态问题列表。可能有任何数量的问题。所以,机器人会问第一个问题,然后它会等待用户的回答,看看它是否正确。然后它会问下一个问题。

所以机器人首先会问一个问题,但是,我被困在用户会给出答案的部分。因为我不知道如何让机器人在提出第一个问题后听取用户的回答,然后回到正确的履行方法。

因为如果用户回答“蓝色”,聊天机器人如何知道用户正在回答问题,而不是随机说蓝色?

标签: dialogflow-esactions-on-google

解决方案


你需要利用contexts.

当调用意图并从您的数据库中获取问题列表时,您还将设置一个output-context.
然后,您将不得不再创建一个意图,当用户给出答案时将调用该意图。在此意图中,您将设置与input-context之前在 output-context 中设置的相同上下文。
这样,Dialogflow 将知道用户正在给出答案,而不仅仅是随机说出一些单词。

语境是对话的关键。


推荐阅读