在Azure上发布bot V3后使用Bot Framework Emulator时出错

时间:2016-10-25 11:45:29

标签: .net azure bots botframework botbuilder

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

我更改了webconfig的BotId,MicrosoftAppId和MicrosoftAppPassword标记。

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

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

当我尝试联系对话时,我收到500内部错误{“发生了错误”}

任何错误的想法?

由于

1 个答案:

答案 0 :(得分:1)

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

文档中的topic解释了如何执行此操作。基本上你需要以这种方式运行ngrok:

  

ngrok http -host-header =重写9000

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