Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在bot框架v4中实现触发操作?_Javascript_Node.js_Botframework_Bots_Chatbot - Fatal编程技术网

Javascript 如何在bot框架v4中实现触发操作?

Javascript 如何在bot框架v4中实现触发操作?,javascript,node.js,botframework,bots,chatbot,Javascript,Node.js,Botframework,Bots,Chatbot,在v3中,我们提供了触发操作按钮 在v4中,如何实现触发器操作按钮。此外,我如何提供建议的操作按钮 简单地说,我想要v4中的v3代码功能。请建议 bot.dialog('help', function (session, args, next) { session.endDialog("message"); }).triggerAction({ matches: /^help$/i, }); 您要做的事情称为中断。无论堆栈上有什么对话框,您都希望bot响应全局关键字。您可以按照下面的详

在v3中,我们提供了触发操作按钮

在v4中,如何实现触发器操作按钮。此外,我如何提供建议的操作按钮

简单地说,我想要v4中的v3代码功能。请建议

bot.dialog('help', function (session, args, next) {
    session.endDialog("message");
}).triggerAction({ matches: /^help$/i, });

您要做的事情称为中断。无论堆栈上有什么对话框,您都希望bot响应全局关键字。您可以按照下面的详细说明进行操作。指南使用了示例

基本上,任何扩展示例中的
CancelAndHelpDialog
类的对话框类都将使用一个重写的
onContinueDialog
函数,该函数调用此
中断
函数:

async interrupt(innerDc) {
    if (innerDc.context.activity.text) {
        const text = innerDc.context.activity.text.toLowerCase();

        switch (text) {
        case 'help':
        case '?':
            const helpMessageText = 'Show help here';
            await innerDc.context.sendActivity(helpMessageText, helpMessageText, InputHints.ExpectingInput);
            return { status: DialogTurnStatus.waiting };
        case 'cancel':
        case 'quit':
            const cancelMessageText = 'Cancelling...';
            await innerDc.context.sendActivity(cancelMessageText, cancelMessageText, InputHints.IgnoringInput);
            return await innerDc.cancelAllDialogs();
        }
    }
}

该函数检查用户是否输入了“帮助”或“?”或“取消”或“退出”,并做出相应的响应。如果您不想遵循示例,您仍然可以从任何可以访问对话框上下文的地方调用该函数。

您要做的就是调用中断。无论堆栈上有什么对话框,您都希望bot响应全局关键字。您可以按照下面的详细说明进行操作。指南使用了示例

基本上,任何扩展示例中的
CancelAndHelpDialog
类的对话框类都将使用一个重写的
onContinueDialog
函数,该函数调用此
中断
函数:

async interrupt(innerDc) {
    if (innerDc.context.activity.text) {
        const text = innerDc.context.activity.text.toLowerCase();

        switch (text) {
        case 'help':
        case '?':
            const helpMessageText = 'Show help here';
            await innerDc.context.sendActivity(helpMessageText, helpMessageText, InputHints.ExpectingInput);
            return { status: DialogTurnStatus.waiting };
        case 'cancel':
        case 'quit':
            const cancelMessageText = 'Cancelling...';
            await innerDc.context.sendActivity(cancelMessageText, cancelMessageText, InputHints.IgnoringInput);
            return await innerDc.cancelAllDialogs();
        }
    }
}

该函数检查用户是否输入了“帮助”或“?”或“取消”或“退出”,并做出相应的响应。如果您不想遵循示例,您仍然可以从任何可以访问对话框上下文的地方调用该函数。

您能解释一下触发操作按钮的含义吗?有帮助吗?您好,下面是V3的链接,在v4中查找相同的功能。您链接到的文档与按钮无关。你想要按钮还是想要模拟触发动作?嗨,凯尔,我想在V4中模拟触发动作。寻找指导/参考。谢谢。你的问题为什么提到按钮?你能解释一下触发动作按钮是什么意思吗?有帮助吗?您好,下面是V3的链接,在v4中查找相同的功能。您链接到的文档与按钮无关。你想要按钮还是想要模拟触发动作?嗨,凯尔,我想在V4中模拟触发动作。寻找指导/参考。谢谢。你的问题为什么提到按钮?