Robert3452
Robert3452

Reputation: 1496

Microsoft Teams: Bot without callback URL

I am trying to use Microsoft Teams to control Raspberry Pi Devices.

Basically I imagine I will write an app to run on the raspberry pi. When it is run the Pi will turn up in the the Microsoft team and say 'hello my ip address is 192.168.x.x' The Pi's have lights attached to them so I want them to listen to the conversation and accept commands via mentions. e.g. @pi turn light on or similar.

I have been reading the Microsoft Teams bot's API. https://msdn.microsoft.com/en-us/microsoft-teams/custombot

It's all very interesting but I am not sure if a custom bot is what I want:

  1. A custom bot requires a callback url. My Pi's are behind firewalls so this is impossible. They will need to poll somewhere and retrieve messages.
  2. I don't want to have to develop (and then pay for and maintain) a gateway webapp to get around 1.

Is a custom bot the right way to go or do I need to write a Microsoft teams client to run on the Pi's?

Upvotes: 0

Views: 743

Answers (2)

Rich Moe - Microsoft
Rich Moe - Microsoft

Reputation: 572

As Microsoft Teams is cloud-based, any extension you build, regardless of type (custom bot or Bot Framework bot) must be externally addressable. @sqlsolver has an interesting solution that I can't comment on, but in general you could look into other tunneling solutions like Ngrok to open up a local port... That would give you an externally addressable URL to use for whichever capability you want. Keep in mind this is not a production grade solution, but could get you unblocked.

Upvotes: 0

sqlsolver
sqlsolver

Reputation: 91

One way to accomplish this, without the effort of writing a web application, is by using an Azure IoT hub. After creating an IoT hub in your subscription and registering your device in the service it will have an endpoint for a message queue which you can target to communicate with the bot. I tested device communication with the Rasberry Pi simulator's sample code and it worked fine. Create a device twin so you can monitor your Rasberry Pi device in the hub, and then proceed with the Teams bot tutorial.

Upvotes: 1

Related Questions