2017-07-31 69 views
0

我试图使用Microsoft团队来控制树莓派设备。Microsoft团队:没有回调URL的机器人

基本上我想我会写一个应用程序来运行在覆盆子pi。当它运行时,Pi将在Microsoft团队中出现,并说'你好,我的IP地址是192.168.x.x' Pi的灯已经连接到它们,所以我希望它们听对话并通过提及接受命令。 例如@pi打开 或类似的灯。

我一直在阅读Microsoft Teams bot的API。 https://msdn.microsoft.com/en-us/microsoft-teams/custombot

这一切都非常有趣,但我不知道如果一个自定义的机器人就是我想:

  1. 定制的机器人需要回调URL。我的Pi在防火墙 之后,所以这是不可能的。他们将需要在某处进行轮询并检索消息 。
  2. 我不希望有开发(再支付和 维持)网关web应用来解决1

是一个定制的机器人以正确的方式去还是我需要写一个微软团队客户端在Pi上运行?

回答

0

在没有编写Web应用程序的努力下完成此操作的一种方法是使用Azure IoT hub。在服务中的creating an IoT hub in your subscriptionregistering your device之后,它将有一个消息队列的端点,您可以使用该端点来与bot进行通信。我测试了与Rasberry Pi simulator的示例代码的设备通信,它工作正常。创建一个device twin,以便您可以在集线器中监控您的Rasberry Pi设备,然后继续使用团队机器人教程。

+0

这听起来很有趣,我很想尝试建立一个物联网集线器。根据文档,我仍然需要Azure订阅才能获得免费的IOT中心。我们有可能拥有Azure公司的Azure订阅,但我不会为那些能够做到这一点的组织类型工作。 (我不得不跳过的箍环数很大) – Robert3452

+0

呵呵,尽管个人Azure订阅是免费的,但它仍然需要信用卡。 (所以我猜如果我犯了一个错误,并点击了错误的按钮,我可能会在我的卡上获得巨额借记卡 - 这是个人风险。) – Robert3452

+0

您可以对Azure帐户设置上限以防止发生这种情况,@ Robert3452 。详情在这里:https://docs.microsoft.com/en-gb/azure/billing/billing-spending-limit –

0

由于Microsoft Teams是基于云的,因此您构建的任何扩展(无论是何种类型的自定义bot或Bot Framework bot)都必须在外部可寻址。 @sqlsolver有一个我不能评论的有趣解决方案,但总的来说,您可以查看其他隧道解决方案,例如Ngrok以打开本地端口...这将为您提供一个外部可寻址的URL,以用于您想要的任何功能。请记住,这不是一个生产级的解决方案,但可以让你畅通无阻。

相关问题