我希望你们都过得愉快。
我正在尝试在dialogflow中创建一个动态的测验聊天机器人。
因此,我有一个用户说“让我们玩游戏”。然后它将按照意图去实现。然后,完成将进入一种方法,并从我的数据库中获取动态问题列表。可能有许多问题。因此,该机器人将询问第一个问题,然后它将等待用户的回答,看看是否正确。然后它将询问下一个问题。
因此,该机器人首先会提出一个问题,但是,我被困在用户会给出答案的部分。因为我不知道在问完第一个问题后如何让机器人听用户的回答,然后回到正确的实现方法。
因为如果用户回答“蓝色”,那么聊天机器人将如何知道用户正在回答问题,而不仅仅是随机地说蓝色?
答案 0 :(得分:1)
您需要使用contexts
。
当调用意图并从数据库中获取问题列表时,您还将设置一个output-context
。
然后,您将不得不再创建一个意图,当用户给出答案时将被调用。为此,您将在input-context
中设置与先前在output-context中设置的上下文相同的内容。
这样,Dialogflow就会知道用户正在给出答案,而不仅仅是随机说一些话。
上下文是对话中的关键。