1

我已经设置了一个通过 VSTS 进行持续集成的机器人。该机器人在应用服务计划上运行(我最近才发现消费计划机器人作为函数运行。)我在云端有一个在消费上工作的机器人,但这限制了我的扩展能力。

对于这个机器人,我做了一个 Prompt 机器人的干净部署 - 但试图在云中运行它会产生一个对话框错误。所以我注释掉了 Prompt 代码,把它变成了一个 echo bot。在本地仍然运行良好,但服务没有响应。尝试登录 Kudu 控制台并运行手动 npm install 但没有帮助。尝试在 kudu 中手动运行机器人会导致错误请求错误。

节点版本 6.11.2。文件树包括 Bot Service 在初始部署时提供的所有文件,包括 iisnode 和 web.config。

这是我的 app.js 和 package.json。是否有其他人遇到本地有效的机器人在云部署时没有响应的问题?有什么我没试过的技巧吗?

更新:通过 Azure 日志流发现此错误,但不知道如何修复它。错误:对“ https://state.botframework.com/v3/botstate/webchat/conversations/(snip) ”的请求失败:[500] Request._callback 处的内部服务器错误

var dotenv = require('dotenv');
dotenv.load();
var restify = require('restify');
var builder = require('botbuilder');

// Setup Restify Server
var server = restify.createServer();
server.listen(process.env.port || process.env.PORT || 3978, function () {
    console.log('%s listening to %s', server.name, server.url); 
});

// Create chat connector for communicating with the Bot Framework Service
var connector = new builder.ChatConnector({
    appId: process.env.MicrosoftAppId,
    appPassword: process.env.MicrosoftAppPassword,
 });

 // Listen for messages from users 
 server.post('/api/messages', connector.listen());

 var bot = new builder.UniversalBot(connector, function (session, args) {
     console.log("Initialized the bot.");
     session.send("You said: %s", session.message.text);
  });

包.json:

{
  "name": "heretohelp-app",
  "version": "1.0.0",
  "description": "Azure bot",
  "main": "app.js",
  "dependencies": {
    "applicationinsights": "^0.21.0",
    "botbuilder": "^3.9.1",
    "botbuilder-azure": "^3.0.2",
    "dotenv": "^4.0.0",
    "restify": "^5.2.0"
  },
  "devDependencies": {
    "request": "^2.81.0",
    "zip-folder": "^1.0.0"
  }
}
4

1 回答 1

0

这需要大量的挖掘,但是一旦我发现记录的错误,它就会引导我找到一个关于机器人服务上周在原型状态环境中遇到的问题的线程:https ://github.com/Microsoft/BotBuilder/issues/ 3463

我发现一些死胡同试图让我自己的状态存储启动并运行,但这篇文章最终让我发挥作用:https ://docs.microsoft.com/en-us/bot-framework/nodejs/bot-builder-nodejs-状态天蓝色表存储

创建了 Azure 存储帐户,在上面的文章中用于将其分层到您的机器人中。断开与(显然仍然断开的)原型状态管理服务的链接。完成此步骤后,网络聊天就可以工作了。

于 2017-09-18T21:16:45.247 回答