Send messages manually with Microsoft bot framework - azure

I have mbf and luis app which gives automatic reply. In some cases agent can reply with bot-service rest-api, it is working fine skype but not sms or web channel.
ref : https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-api-reference?view=azure-bot-service-4.0

For SMS you need to configure twilio and for web channel you need to use web chat contri

Related

Automatic Email Send in Microsoft Bot Framework Composer

I am developing chatbot using Microsoft bot framework composer. I added this chatbot to Microsoft Teams channel as well. It is a IT Help desk chatbot. We have a separate ticketing system, whenever user send a email to support#abc.com, the support ticket would be automatically created.
I want my chatbot to send a email automatically to create a ticket when the user needs to create a ticket using chatbot.
There are a lot of ways to do that. For example, you can use "Send an HTTP request" action in the composer, and call an endpoint where you do this email processing (for example: you can quickly test by using a logic app which will be your http endpoint, and inside this logic app use an email connector - outlook or other)
More details on the "send an http request" step here
And a tutorial to send an email with Logic Apps here

Connect Bot to Skype and Teams

I'm currently trying to figure out Azure and the Web App Bot Resource.
I've learned that it is possible to create a Web App Bot and connect it to channels like Skype or Teams for example. Though as far as I can tell if the bot is connected to both Skype and Teams the bot in Skype has no information about what the bot in Teams is doing and vice versa.
So I wondered if it is possible to link them up somehow.
Would it be possible to write a message My Text to the bot in Skype and the bot in Teams then writes this message My Text into a Teams channel?
Might I suggest reading over some of the tutorials and documentation on the Bot Framework? It might help to have a clear idea of the related concepts, such as:
Web App Bot: A Web app bot is used to create a new full-fledged bot service that can be modified, build and deployed online.
Azure Bot Service: Azure Bot Service enables you to host intelligent, enterprise-grade bots with complete ownership and control of your data. The Microsoft Azure Bot Service helps you manage, connect, and deploy your bot across devices and popular channels. Azure Bot Service and Bot Framework provide tools to build, test, deploy, and manage intelligent bots all in one place.
Channel: A channel is a connection between the bot and communication apps. The Bot Framework Service, configured through the Azure portal, connects your bot to these channels and facilitates communication between your bot and the user.
Bot Channels Registration: A Bot Channels Registration bot service allows you to use Bot Service functionality. A registration bot lets you connect your bot to channels.
In order to have a bot that works with Skype or Teams, you need to have a bot channels registration. If you already have a bot hosted elsewhere and you would like to use the Bot Service to connect it to channels such as Skype, Twilio, Messenger etc., you will need to register your bot with the Bot Service.
Coming back to your question, you can create a Web App Bot and connect it to Skype or Teams, but neither Teams nor Skype has any information about the bot's conversation with the other channel as its channel-specific. So the bot can interact and communicate with Skype and Teams channels separately but they cannot be linked.
If the user saves the entirety of conversations in some sort of transcript storage, that could be tapped by both, then it might be possible, but not at the same time, and it would take a decent amount of code to implement.
Hope this helps!!

How to recreate the Live Chat Bot?

How can I make a chat bot like this?
https://appsource.microsoft.com/en-us/product/office/WA104381862?src=webduppage&tab=Overview
This bot can be embedded into an html. If you chat with the bot on your website the message gets to your Microsoft Teams Channel and you can reply trough Teams.
At its core, this is just a bot enabled for two Bot Framework channels at the same time - the Web Chat channel and the Microsoft Teams channel. (Note that Bot Framework channels are completely different from channels in Teams.)
The Web Channel supports controls designed to be embedded in web pages. Messages posted from the web can then be posted as proactive messages in whatever channels are configured for that purpose.

Skype for Business Online - Send and Receive message using UCWA

I am trying to build a BOT like service for "Skype For Business".
As of now Microsoft BOT Framework doesn't have out of the box channel for this.
Searching in the internet, I found following nice workaround to tackel such problem Using Lync Server 2013 SDK.
http://devopssnippets.blogspot.jp/2016/08/integrating-lyncskype-for-business-with.html#.WIW3PXKtTjE
But in my case, I have "Skype For Business Online" in Office365 where Lync Server 2013 SDK is not supported.
UCWA web API seems to be available for "Skype For Business Online".
Using this API, I want to receive IM and forward this to my existing BOT by using DirectLine API.
And finally I want to reply the skype user with the response from the DirectLine API.
So, here what I am curious to know that whether it is possible to receive message from user and send message to user by using UCWA.
Yes, it is possible to send and receive messages using UCWA API if you are using Skype For Business. You can implement the UCWA API and then whenever you receive any message, you can forward them to the bot. And after you receive a message back from your bot, you can forward that to the user.
Here are some links that might be of help.
Setting up Skype for Business Online using Skype WebSDK
Skype For Business Step By Step
Official UCWA site with examples and steps
Skype and Skype for Business are 2 completely different things. You won't be able to connect Skype and Skype Bots (Microsoft Bots) with UCWA or Skype for Business Online

How to get conversation details in microsoft bot framework for skype?

I'm able to get conversation details for webchat using https://webchat.botframework.com/api/conversations/[conversationId]/messages
Service URL for skype channel is https://skype.botframework.com, but I dont find any documentation for getting conversation details
You can use the DirectLine Rest API (see docs).
The Direct Line API is a simple REST API for connecting directly to a single bot. This API is intended for developers writing their own client applications, web chat controls, mobile apps, or service-to-service applications that will talk to their bot.
Within the Direct Line API, you will find:
An authentication mechanism using standard secret/token patterns
The ability to send messages from your client to your bot via an HTTP POST message
The ability to receive messages by polling HTTP GET
A stable schema, even if your bot changes its protocol version
You need to enable the DirectLine channel for your bot on (see screenshot)
You don't have to access each specific channel endpoint separately, you can do it all (with some limitations) through the DirectLine API.
Start a New Conversation
POST /api/conversations
Get Messages in a Conversation
GET /api/conversations/{conversationId}/messages
Send a Message
POST /api/conversations/{conversationId}/messages
The full details are in the docs as linked above.
Hope this helps
Can you be more specific about conversation details and what you're looking for?
Generally, you shouldn't assume those URL's are static BTW; an incoming message from the Bot Framework will have a ServiceURL that should be used for the life of that conversation. Some services may have multiple ServiceUrl's that they give out for different users.

Resources