0

我使用 Bot Builder 1.1.0 版创建了一个非常简单的机器人,它在本地和在 Azure 上发布后都运行良好。但是,当我更改为版本 3(并更改了相应的代码)时,我的机器人在本地工作,但在我在 azure 上发布后它无法正常工作(在机器人模拟器上)。我不知道我是否以错误的方式使用模拟器,或者我是否错误地发布了它。

我更改了 webconfig 的 BotId、MicrosoftAppId 和 MicrosoftAppPassword 标签。

当我在 Azure 页面上使用“测试与您的机器人的连接”按钮时,它会响应“已接受”。

在模拟器上,我将 Bot Url 用作“ https://XXXXXX.azurewebsites.net/api/messages ”,将 Emulator URL 用作“ http://localhost:9000/ ”以及相应的 AppId 和 AppPassword。模拟器的版本是3.0.0.59

当我尝试发起对话时,我收到 500 InternalError {"An error has occurred"}

有什么问题的任何想法?

谢谢

4

1 回答 1

1

消息被路由到 Emulator URL http://localhost:9000这就是为什么这不起作用。尝试使用模拟器与云中的机器人交互时,您需要将消息转发到网络上的已知位置。为此,您可以使用 ngrok。

文档中的这个主题解释了如何做到这一点。基本上你需要以这种方式运行 ngrok:

ngrok http -host-header=rewrite 9000

然后更新模拟器以使用 Emulator URL 文本框中的 https ngrok 转发 URL。

于 2016-10-25T12:15:31.267 回答