【发布时间】:2019-12-11 08:15:46
【问题描述】:
我正在尝试将 ms teams auth 机器人部署到 azure。当我使用机器人框架模拟器对其进行测试时,该机器人会发出欢迎消息。然后我运行these steps 将我的机器人部署到天蓝色。在部署步骤中,我在整个过程中使用了相同的应用程序 ID 和密码。然后我在 azure 上对其进行了测试,但它失败了:
我查看了浏览器的网络请求,我看到了:
HTTP POST: https://webchat.botframework.com/v3/directline/conversations/JYtg14OvcjS7FiNwCMXzH1-g/activities
回复:
{
"error": {
"code": "BotError",
"message": "Failed to send activity: bot returned an error"
},
"httpStatusCode": 404
}
我流式传输了我的应用程序日志,它给了我一个很大的 HTML 响应,您可以看到 here。但这只是一个 404 页面响应。
我试图在我的机器人模拟器中运行它,指向生产中的机器人,它也给出了 404 响应:
编辑:
- 我刚刚尝试redeploy my bot,但在测试我的机器人时得到了相同的结果。
- 运行所有deployment steps 后,我再也没有web.config 文件。虽然在我的机器人模拟器中本地测试它工作正常。
- 这是我的资源组的截图,里面有3个资源:
- 这是运行pre-deploy command 后的屏幕截图。它不会生成 web.config 文件,但会生成 .deployment 文件:
- Azure 应用注册门户中的应用 ID 相同,我的 appsettings.json 文件中的应用 ID 相同,运行 deployment command 时的应用 ID 相同。
编辑 2:
- 这是我压缩项目的方式:
- 在 Azure 上,我无法查看我的代码,但我记得我以前曾经这样做过。也许是因为在 Azure 上,我只有一个 Bot Channels 注册,但我没有 Web App Bot。有问题吗?
编辑 3:
【问题讨论】:
-
我在日志中看到这条消息:
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.。这很奇怪。我只在遇到服务问题时才看到它,但它通常会自行修复。您可以尝试删除这些 Azure 服务并重新部署吗?如果仍然无法解决问题,请使用资源组资源的屏幕截图更新您的问题。 -
你能确认你跑了this step:
az bot prepare-deploy --lang Csharp --code-dir "." --proj-file-path "MyBot.csproj"。如果您缺少web.config文件,则说明您错过了这一步。 -
您能否确认您的 an App Registration 与为您的 Web App Bot 服务列出的 appId 匹配并且它们的名称匹配?
-
你好@mdrichardson-MSFT。我在帖子中回答了你的问题。请参阅上面的修改。
标签: botframework azure-bot-service