Bot for multi-purpose auto reply (Microsoft Bot Framework) - c#

I'm making a Bot that can reply e-comerce websites (such as book shop, flower shop, motorbike shop,etc..) using FormFlow to create the selection that I've stored in my database. The problem here is that how can the bot provides to my customers the correct selections according to the purpose of the Website (For instance: customers chat with the bot via Flower Shop website so the bot must give the selections that relate to "Flower" to customers and customers chat from others websites must receive the correctspoding selections). I really don't know how to pass the ServiceUrl to FormFlow class to identify the selections should the Bot reply?

Related

Apart from Individual users and Teams channel , whom can we send message (with Adaptive card) from bot framework

I Am able to send messages to individual users and general channel of a team using Bot Framework. What I want to know if it's possible to send messages to below target audiences!
Private channel of a Specific Team
Any M365 Group and Azure AD Security Group
Any Distribution list
If possible , any link or documentation would be highly appreciated. Thanks in advance.
You can definitely message to a regular channel in a Team, aside from the "general" channel, but I've not tested a Private Channel. I don't see why not though, provided the bot has been added to that specific channel.
Aside from that, there's also a Meeting as well as a Group Chat.
But all of those are within Teams. An M365 group, or distribution group, you can message as well, but not within Teams as there's no Teams context. Remember though, that a Teams bot is built on the Microsoft Bot Framework, which can be used to built bots of other types outside of Teams, e.g. web chat, facebook, slack, etc. Included is the possibility to build an "email" bot - it uses the same concepts, e.g. "dialogs" and what not, but communicates via email. See more at https://learn.microsoft.com/en-us/azure/bot-service/bot-service-channel-connect-email?view=azure-bot-service-4.0

Azure Speech and Speaker Services in Teams Chatbot

Below is my code basics planning for implementation in chat bot:
develop teams core bot by enabling calling feature in teams channel settings.
upload bot as custom app and enable for Private, team, group options in teams app settings.
enable API graph permissions in bot channel registration for group calling in
teams.
Azure Speech Service (speech recognition) speech to text will implement in bot.
Azure Speaker Recognition Service to know which
user is speaking will implement in bot.
For Speech and Speaker services, I already tried sample POC in console.
So my queries:
Is it possible to add my bot in group meeting/channel group? or vice versa is possible(Adding users to bot)?
If #1 is yes, say the group call is connected to all members along with bot, is it possible by using speech to text API from bot to convert whatever user speaks and display in chat automatically?
Ex: 3 users joined in channel group , I added bot in that channel group or consider vice versa like in the bot app I added 3 users.
When 3 users are speaking in call, I want to convert speech to text and display in group chat using bot.
Is this scenario possible for implementation in Teams?
In short: just like live captions are displaying in teams audio chat pane, I want it to display same on chat panel.
Better understanding with example on Group audio call with bot in Teams:
Ex:(speaking/spoke) User1: Hi Everyone
(Displaying in chat panel) :Bot: User1-Hi everyone
(speaking/spoke) User2: Hello Everyone
(Displaying in chat panel) : Bot: User2- Hello everyone
I already explored some part of this, but it happens in UWP and window forms. so not sure it can be possible in teams with extension messaging.
Reference Links:
https://github.com/Azure-Samples/cognitive-services-speech-sdk
https://learn.microsoft.com/en-us/azure/cognitive-services/speech-service/tutorial-voice-enable-your-bot-speech-sdk
https://bisser.io/bot-framework-teams-messaging-extensions-walkthrough/
https://microsoftgraph.github.io/microsoft-graph-comms-samples/docs/articles/calls/register-calling-bot.html

Debug msft teams bot channel conversation

I have a bot that collects information in a private chat from User A about User B and then sends it to User B. I am collecting the information via Dialog and then formatting a HeroCard to be sent. I was using the Bot Emulator to test the private chat code, but I'm unable to test creating a new conversation () in the emulator without getting a 500 InternalServerError. When I deploy the code and integrate the bot into an existing Teams channel I receive 400 Bad Request responses.
Is there a tool to use that can help me debug creating a new conversation locally?
You need the user’s (User-B) unique ID and tenant ID to start 1:1 proactive conversation. Typically, these are obtained from a team context, either by fetching the team roster or when a user interacts with your bot in a channel.
Please check the sample code.

Create Multiple chat control in one website Bot Framework

I want to build a project which is similar to the post I attach below. However, assume that if the secrectary must communicate with many customers at the same time.
How can we create the number of chat controls adequate with the number of customers want to chat directly with the secrectary?
And can we just use the chat control that Bot Framework provide us without using DirectLine API?
My previous post: Client-client chatting via Bot Framework
you have two options:
1) you can create dynamic iframe per user and set up the user name and the id of the user and send this in the iframe :
"https://webchat.botframework.com/embed/smilesbot?s=secret_code&username=admin&userid=1234'>"
2) use the direct line on the basis of the web Chat : webChat

3 different channels in the same conversation botframework

I'm trying to do a C# MVC WebApplication for human-hybrid bots support customers, so I can't create a conversation between 3 different channels.
Example:
1-) An user start a chat with my bot in facebook
2-) When the bot receive the activity, he adds a new guy in conversation (directline, that's I have conversationId).
3-) The facebook user now, is chatting with other 2 users (bot and directline User).
Is the correct logic ?
I'm trying to create this group conversation but I'm getting error 500.
This is a common scenario that I've seen addressed by a number of users in the following manner:
Build your customer support interface (CSI) (i.e. the side used by your customer support reps) using Direct Line
Your bot pipes through the all the user messages to the CSI which stores all the conversations. Reps can see a list of all the users interacting with the bot and the history of each of those conversations.
When escalation to a human is needed, the bot flags one of the conversations needing attention
Your bot then brokers conversations between the accounts (i.e. Facebook End User <-> Your Bot <-> CSI). Essentially the customer support rep is creating a response, which is being posted by the bot back to the end user
This means there's no need to add an additional person to the conversation. (Facebook currently only allow 1-on-1 conversations with bots).

Categories