【问题标题】:MS Bot Framework Nodejs unable to connect bot after deployment on azureMS Bot Framework Nodejs 在 Azure 上部署后无法连接机器人
【发布时间】:2017-05-10 07:04:09
【问题描述】:

我已使用正确的 appId 和密码配置将我的 nodejs 机器人部署到 azure。该站点的 URL 有效,但是当我测试我的机器人连接(见下文)时,我收到了这条消息....

“未找到。您要查找的资源已被删除、更改名称或暂时不可用。”

当我尝试到达本地主机上的 /api/messages 端点时,我得到了同样的错误。

我非常密切地遵循核心概念和机器人框架示例来构建我的机器人。后端服务器不是我的强项,因此我们将不胜感激。

error message image

已更新代码:

var builder = require('botbuilder');
var restify = require('restify');
var request = require('request');

//Server setup
var server = restify.createServer();

server.listen(process.env.port || process.env.PORT || 3978, function() {
    console.log('%s listening to %s', server.name, server.url);
});

//Get secrets from server environment
var connector = new builder.ChatConnector({
    appId: process.env.MICROSOFT_APP_ID,
    appPassword: process.env.MICROSOFT_APP_PASSWORD
});

//Create chat bot
var bot = new builder.UniversalBot(connector);
//Handle bot framework messages
server.post('/api/messages', connector.listen());
server.get(/.*/, restify.serveStatic({
    'directory': '.',
    'default': 'index.html'
}));

//LUIS Model
var model = process.env.model || 'https://api.projectoxford.ai/luis/v1/application?xxxxxxx';
var recognizer = new builder.LuisRecognizer(model);
var dialog = new builder.IntentDialog({ recognizers: [recognizer]});

bot connection error

【问题讨论】:

  • 如果它不能在本地主机上运行,​​可能是你的路由设置不正确。您能否分享设置侦听器/端口的代码部分以及模拟器屏幕截图?
  • @JimLewallen 我更新了我的代码。感谢您的帮助!

标签: node.js bots botframework


【解决方案1】:

指向index.html的路由有错误。

您可以通过将路由处理程序分配给特定路径来解决此问题,例如 '/''/docs' 等。

工作路由处理程序示例代码:

server.get('/', restify.serveStatic({
    'directory': '.',
    'default': 'index.html'
}));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-31
    • 1970-01-01
    • 1970-01-01
    • 2017-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多