机器人信息
- SDK 平台:Node.js
- SDK 版本:8.11.2
- 事件 channel :Bot Framework 模拟器和 Direct Line
- 部署环境:使用模拟器进行本地开发
问题描述
我创建了一个包含机器人对话框的单独文件。在我的 index.js 中,我导入模块并在适当的位置调用对话框。当涉及到发送普通文本时,它工作得很好。
但是,当我发送自适应卡(该卡在将整个代码放入 index.js 文件中时才起作用)时,机器人模拟器崩溃并变成全黑。我还在本地尝试了直线,结果是它无限期地显示“正在键入图标”,该图标恰好位于应该发送消息的调用之前。
复制步骤
您可以按照这个基本示例来测试该问题:
module.exports = function(bot) {
bot.dialog('pcnLogin', [
function (session, args) {
let msg = new builder.Message(session).addAttachment(yourCard);
session.send(msg);
}]);
}
然后,在主文件中导入模块:
require('./dialogs')(bot);
最后,从主机器人流程中调用对话框:
session.beginDialog('pcnLogin');
最终评论
我在控制台中没有收到任何错误。唯一的行为是:
- 模拟器崩溃并变黑
- 在 HTML 文件中测试时出现无限省略号
我想强调的是,如果将完全相同的代码包含在index.js 中,它可以完美地工作。
最佳答案
问题已解决!由于导入错误,我在附件中传递的自适应卡对象具有未定义的值! :)
关于node.js - Microsoft Bot Framework - 当对话框存储在单独的文件中时,自适应卡不会发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51226679/