MS Bot Framework Nodejs在azure上部署后无法连接bot

时间:2016-08-30 23:30:28

标签: node.js bots botframework

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

" NOTFOUND。您要查找的资源已被删除,名称已更改或暂时不可用。"

当我尝试在localhost上访问我的/ 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

1 个答案:

答案 0 :(得分:0)

路线中有一个指向index.html的错误。

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

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

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