首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用LUIS.ai的僵尸框架中的对话框

使用LUIS.ai的僵尸框架中的对话框
EN

Stack Overflow用户
提问于 2017-09-22 10:13:39
回答 1查看 151关注 0票数 1

我有一段代码可以很好地工作在本地的机器人上,与LUIS集成时也很奇怪。这是一个简单的对话,可以重定向到另一个对话框:

代码语言:javascript
复制
    // Modelo de datos cargado en luis.ai
    var recognizer = new builder.LuisRecognizer(process.env.LUIS_MODEL_URL);
    bot.recognizer(recognizer);

    //first intent, greeting intent to say hi to the user
    bot.dialog('greetings', [
        function (session) {
            var greetings = ["¡Hola!", "Bonjour amigo!", "zdravstvuyte! (Así se dice hola en ruso)"];
            var pickAGreeting = function () {
                var rnd_greeting = greetings[Math.floor(Math.random() * 4)];
                return rnd_greeting;
                };
            session.send(pickAGreeting(), session.message.text);
            builder.Prompts.text(session, 'What can I do for you about Office?');
        },
        function (session, results) {
            var user_response = results.response;
            session.beginDialog('getProductoOffice', user_response);
        }
    ]).triggerAction({
        matches: 'greetings',
        onInterrupted: function (session) {
            session.send('Can I help you with something?');
        }
    });

    bot.dialog('getProductoOffice', [
        function (session, args) {
            session.send('Welcome to O365 help!', session.message.text);
    ...

And the bot does this:
[me]: Hola
[bot]: ¡Hola!
[bot]: What can I do for you about Office?
[me]: Tell me about Skype
[bot]: Can I help you with something?

奇怪的是,在提醒我关于Office之后,它从不输入“函数(会话,结果)”,直接进入中断的对话代码。

这段代码在没有LUIS集成的情况下完美地工作,并且在对话之间正确地移动。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-09 10:28:22

由于triggerAction的行为,每次我输入一个被LUIS识别的话语时,对话都会中断。

要在任务运行时禁用识别器,我必须在识别器中使用onEnabled方法,如下所示:

代码语言:javascript
复制
var recognizer = new builder.LuisRecognizer('<model>').onEnabled(function (context, callback) {
     var enabled = context.dialogStack().length == 0;
     callback(null, enabled);
});

这不会中断对话框堆栈,只有在没有会话运行时,识别器才能工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46362255

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档