嗨,我在对话框流程中创建了一个名为answers
的实体,该实体包含了我的问答游戏中所有问题的答案。
我从数据库中获得了问题,然后检查给出的答案是否正确。
app.intent('answer-question', (conv, {answer})=> {
if(answer == ((conv.data.answers)[0])){
//stuff}
else{
conv.close('you lose');
}
});
但是,此功能仅在用户正确回答答案后才起作用。如果用户未正确回答问题,则出现以下错误:
"Question Master isn't responding right now. Try again soon."
MalformedResponse
'final_response' must be set.
所以我的问题是,我该如何满足用户可能给出的错误答案的无限选择?
干杯!
答案 0 :(得分:1)
您应该以后备方式处理此问题。新的Dialogflow代理随附默认设置:https://dialogflow.com/docs/intents/default-intents#default_fallback_intent
您还应该考虑使用上下文,这样后备意图就知道您正在期待答案,并在不希望答案时提供不同的响应。