【发布时间】:2018-07-18 10:36:54
【问题描述】:
我正在使用 node.js 创建一个带有 Microsoft bot 框架的多对话框聊天机器人
bot 正在连接用于 NLP 的 LUIS。当意图匹配时,对话框触发没有任何问题。但是当涉及到一个不匹配的对话框时,我想触发这个Sorry, I don't know. :( this is the default dialog 消息。我的代码如下,对于没有匹配的意图,它没有按预期工作。
我注意到,每次我输入一个与任何意图都不匹配的词组时,它都会触发先前匹配的意图对话。
我不知道这段代码有什么问题。 我遵循了以下解决方案,但没有一个对我有用
const bot = new builder.UniversalBot(new builder.ChatConnector({
appId: process.env.MicrosoftAppId,
appPassword: process.env.MicrosoftAppPassword
}));
bot.dialog(vacanciesDialog1.id, vacanciesDialog1.waterfall).triggerAction({ matches: vacanciesDialog1.name });
bot.dialog(gratuityDialog.id, gratuityDialog.waterfall).triggerAction({ matches: gratuityDialog.name });
bot.dialog(slipsDialog.id, slipsDialog.waterfall).triggerAction({ matches: slipsDialog.name });
如果任何对话框不匹配,则默认对话框如下
bot.dialog('/', [
(session, args, next) => {
session.send(`Sorry, I don't know. :( this is the default dialog`);
}
])
【问题讨论】:
标签: node.js botframework chatbot azure-language-understanding