Is it possible to join a bot conversation from a console application ( using the Microsoft bot Framework ) ? My customer is trying to test a bot, but so far has to have a person join a conversation in order to do that.
The Bot Framework team does not provide an application of this nature. However, you are free to build an application to do this so long as you remain within Azure terms of service. The Direct Line API is a good place to start.
Related
Problem statement: As a user I want to be able to share information quickly to MS teams from external web application.
For e.g. I am on an application and found some news that might be useful for the team so, I click on share and MS graph apis gets called that lists my teams and channels and I can select a channel to which I wish to share.
And I want this to be 2-way communication i.e. someone from my team can share something from MS Teams with be me that will be visible to me on the web application.
Now as a developer I wish to integrate MS Teams to my webapp such that when a user shares a news to teams, that message is posted by a bot on the teams channel.
And if someone #mentions the bot and provides some text then the bot sends that text to the external web app.
I am aware that this functionality can be achieved even without using a bot by creating webhooks.
But this approach is not viable for me as a outgoing webhook is created at a team level and not on app level according to documentation. So multiple teams will have multiple outgoing webhooks.
I believe this is possible by using bots or message extensions but I can't find a resource that tells how to build this and MS documentation is not very clear to me.
I want to implement a health check on my MS Teams bot but it seems that support for that was removed on https://github.com/microsoft/botframework-sdk/issues/6225.
What is the best approach now to add a health check to my bot?
Thanks
There is no mechanism built into the Bot Framework SDK to accomplish this. You'd need to setup an API route in the bot, and have the other service call that endpoint. Depending on your security considerations you'd probably also want to authenticate that call in some manner.
At the end of the day, the bot is just a web service using some specialized API calls to model conversations - you can add any additional APIs you like just as you would with any other web service.
I am working on a requirement where we need to create a chat BOT application using Azure BOT service that takes input from the user and based on the response from the user, redirect the user to the chat bot of the particular department.
I would like some suggestions or recommendations on how this can be achieved.
The way to do this is through Bot Framework Skills. You can check for more information on https://learn.microsoft.com/en-us/azure/bot-service/skills-conceptual?view=azure-bot-service-4.0
I have to integrate 2 different azure bots into a single azure bot application. So thinking of integrating with the REST api. Will this approach work ?
From this links
https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-quickstart?view=azure-bot-service-4.0
https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-api-reference?view=azure-bot-service-4.0
I can get the access token from cloud bot. But there is no example on "sending message from client". It have examples on handling client messages from server as Activity object.
It would be better if any samples on "sending message from client to azure cloud throught REST"
what is different between REST and connectors.?
I believe it will be possible with DirectLine, but wanted to know how to do thorugh REST APIs.
Thanks in Advance !!
I can't tell you whether or not your idea will work for dealing with two separate bots without more information. If you are trying to start conversations with both bots and the sending messages to the different conversations based on some set of criteria than that should work.
The Bot Framework API can essentially split into two sections:
The Connector (primary) API that the bot uses to talk to users and the service.
The DirectLine API that you can use to talk to the bot instead of using one of the built-in connectors like Slack or Teams.
Based on your needs, the DirectLine is indeed what you are looking for. The directline.botframework.com/v3/directline/conversations/abc123/activities endpoint will allow a client app to send a message to the connected bot.
Im trying to make a custom bot in MS Teams.
My Admin has not yet enabled "Sideloading", but I have the option to "Create a Custom Bot", yet I cannot find any information between the differences of these 2 options?
Has the "Custom Bot" replaced sideloading? In which case, how can i connect my bot to my team? Its hosted on azure, but it kept saying "Sorry, there was a problem encountered with your request", when I had it set up using the Custom Bot.
The bot works perfectly, using both the emulator and the bot framework.
A custom bot is not a Bot Framework bot - it's really designed as a simple way to send information from Teams to an external application (Slack calls them "Outgoing Webhooks"). It's not designed for real bot conversations in the Bot Framework sense. The feature (and its limitations) are documented in detail here.
You can't use bots in a team without sideloading - that's what sideloading is for. When you sideload an app that contains a bot - more info here - it registers additional information needed for a bot to work in a team, as well as a record of the consent for that bot to operate in a team.