Microsoft Teams:没有回调URL的Bot

时间:2017-07-31 08:51:31

标签: raspberry-pi microsoft-teams

我正在尝试使用Microsoft Teams来控制Raspberry Pi设备。

基本上我想我会写一个应用程序在树莓派上运行。当它运行时,Pi将出现在Microsoft团队中并说'hello my ip address is 192.168.x.x' Pi的灯已经连接到它们上面所以我希望它们通过提及来听取对话并接受命令。 例如@pi打开灯 或类似的。

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

这一切都非常有趣,但我不确定自定义机器人是否是我想要的:

  1. 自定义僵尸程序需要回调网址。我的Pi是防火墙的后盾 所以这是不可能的。他们需要在某处进行轮询并检索 消息。
  2. 我不想发展(然后付钱和 维护)一个网关webapp来解决1。
  3. 自定义僵尸程序是正确的方法还是我需要编写一个Microsoft团队客户端才能在Pi上运行?

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

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