Reputation: 1496
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:
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
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
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