在Skype上发布僵尸程序,但它不起作用

时间:2017-07-05 10:01:18

标签: bots botframework luis

我有一个机器人,我是通过使用Microsoft Bot Builder在一个项目中将 LUIS QnA 合并在一起而创建的。 我将机器人发布到Visual Studio的EC2实例,我正在使用Bot框架模拟器进行测试,它运行得很好。 (必须使用ngrok进行隧道掘进)。

现在我想在Skype上部署机器人。我登录了Bot Framework Portal并注册了我的机器人。现在是配置部分。 我不太清楚在这里设置什么作为HTTP端点。

我在Bot Framework文档中找到了这个:

  

完成表单的“配置”部分。

     

提供机器人的 HTTPS 消息传递端点。这是端点   您的机器人将从Bot Connector接收HTTP POST消息。如果   您使用Bot Builder SDK构建机器人,端点应该   以 / api / messages 结束。

     
      
  • 如果您已将机器人部署到云端,请指定从该部署生成的端点。

  •   
  • 如果您尚未将机器人部署到云端,请暂时将端点留空。您将返回Bot Framework Portal   稍后,在部署机器人后指定端点。

  •   

当我从Visual Studio发布时,从Azure App Service Activity窗口中,我找到了这一行:

  

启动Web部署将应用程序/包发布到https://ec2-00-000-000-00.compute-1.amazonaws.com:PORT/msdeploy.axd?site=bots ...

我在配置中使用该地址作为Messaging Endpoint,我发布了我的应用程序。但是,当我在Skype上测试它时,我没有收到来自机器人的任何消息。

我不知道究竟是什么问题,这是否与ngrok有关?或者我在这里错过了一步,我还应该做些什么来在Skype上部署机器人?也许与我需要使用的appid /密码有关...我真的不知道

真的很感激解释这是如何工作的。我真的不明白整个部署程序是如何工作的,感觉就像我在浑水中游泳。

1 个答案:

答案 0 :(得分:1)

您的端点将成为已部署的Web应用程序实例的根目录,以及机器人正在侦听的路由。

例如,我的一个机器人被部署到Azure网站的免费版本。此类站点的URL为https://APPLICATION_NAME.azurewebsites.net,僵尸程序侦听的路由为默认/api/messages。这使得端点https://APPLICATION_NAME.azurewebsites.net/api/messages

如果直接连接到应用程序的端点,至少应该获得带有错误消息的JSON转储。要确保您的站点已部署,请将HTML文件放入EC2的根目录,看看是否可以访问它。