Showing posts with label chatbots. Show all posts
Showing posts with label chatbots. Show all posts

Friday, August 07, 2020

Notes on the Power Virtual Agent in a day lab

Microsoft recently also released a Power Virtual Agent in a day and I decided to give it a try. Power Virtual Agents are one of the components in the Power Platform which allow you to built intelligent chat bots without any coding or AI experience.

Since Power Virtual Agents are built on the Power Platform and the Azure Bot Framework you still have the option to extend the capabilities to suit your organisations needs.

Some notes on the Power Virtual Agent lab:
  • The creation of a virtual agent or bot is super easy and intuitive with a simple graphical interface for authoring the logic  that will drive your bots. The authoring canvas for the conversation tree has a great user experience and enables non-developers to create a powerful chatbot experience.

  • After you import the SolutionPowerVirtualAgentInADay.zip solution file, you will need to reconfigure the connections in the different Power Automate Flows - to do this you will need to use the unique name of the CDS instance - so if you have used a Dynamics CRM instance you can not use the readable name - don't forget to add the region shorthand as well.
  • If you are familiar enough with Dynamics 365 and/or Power Platform you will be able to complete the labs in a couple of hours.
  • The built-in integration with Power Automate allows you to leverage the over 250+ external services and systems so the only limit is your imagination.

References:

Tuesday, December 31, 2019

Dynamics 365 and Power Platform monthly reading list November 2019

Technical topics (Configuration, customization and extensibility)

Topics for Dynamics 365 Business Application Platform analysts, project managers and power users

Thursday, January 10, 2019

Integrate Dynamics 365 for Customer Engagement apps with Microsoft Teams (Preview)

Warning: This preview is currently only fully available for organizations in the North American region.

Microsoft Teams is a chat-based collaborative tool, where people can work on documents, exchange information using chat – check out the what is Microsoft Teams video from the Microsoft teams video training series if you have not worked with it previously. One of  the interesting capabilities of Microsoft teams is that it allows you to add new apps within your team workspace – these apps are available in the Teams store, and can be custom built by you for distribution through the store or directly to your users (also Take a look at 30 invaluable integrations that you should be using with Microsoft Teams for some great examples of apps that are available)

In November 2018 Microsoft added a “Dynamics 365” app to this ever growing list of apps – it currently provides 3 important capabilities:
  • Provide  Dynamics 365 chat bot functionality in the team  conversations
  • Work with Dynamics 365 records directly from within Microsoft Teams.  Teams now has the possibility to link an existing Dynamics 365 record so that users are able to both view and edit information about this Dynamics 365 within Microsoft teams and even navigate to related records without leaving Microsoft teams.
  • Link Microsoft Teams files to Dynamics 365 records
In the next sections we will delve a little deeper in some of the functionality.

Working with the Dynamics 365 bot in Teams
After you have installed the Dynamics 365 App from the Teams store (See Install and setup the Dynamics 365 App for Teams for more details) , you will be able to use the new sales bot functionality within the Conversations tab of the app

When you first open the bot you need to connect it to a specific Dynamics 365 organization instance – afterwards you are able change this setting.



For the moment the functionality is still rough on the edges basic but more functionality will probably be added throughout the preview.  The bot allows you to lookup information in Dynamics 365 using natural language – e.g. you can search for an opportunity “Audio equipment” by just typing “search audio equipment” or “lookup audio equipment” or “find audio equipment” which will surface a card with information about that opportunity.  Behind the scenes the bot will connect to the LUIS Azure Cognitive Services to understand the intent of your message to retrieve the most important information. Through the bot you will also be able to update basic information of this opportunity like the amount, close date, etc… This functionality is also available from within the Microsoft Teams mobile app



Working with Dynamics 365 records from within Microsoft Teams
You can now also add a new tab to the top of your channel which uses a specific app – if you link the Dynamics 365 app here you can connect it to a specific Dynamics 365 record.

Users who do not have a Dynamics 365 license or not a valid security role in Dynamics 365 will not be able to access the information but will receive a warning


Linking Microsoft Teams files to Dynamics 365 records
When you create a new Microsoft team behind the scenes a SharePoint Online site is being used, and each channel in a team gets a folder within the default team site document library (Read How SharePoint Online and OneDrive for Business interact with Microsoft Teams for more details and watch the video Foundations of Microsoft Teams to get an architectural overview)  So basically the integration between Dynamics 365 and files in Teams is being built on top of the existing SharePoint integration for which the fundamentals already existed.

To be able to link Microsoft Teams files to Dynamics 365 records you will first need to activate preview functionality within your Dynamics 365 system settings (Settings>Administration>System settings)


Next a new button will appear in your mean which allow you to link to a specific team and channel.

The linked  Teams documents will appear in the same place as linked SharePoint documents (under the cover they actually are stored in SharePoint  - take a look at Showing SharePoint document properties in Dynamics CRM views for a more detailed explanation of how this is done).



For the official documentation on this preview see  Preview: Integrate Dynamics 365 for Customer Engagement apps with Microsoft Teams

Tuesday, November 06, 2018

Speaking at Dynamics 365 Saturday Brussels 2018

I will be delivering a session about chat bots and Dynamics 365 at Dynamics 365 Saturday Brussels on November 17th. Registration is free. Dynamics 365 Saturday is a Technical & Strategy event organized by the community with the following credo: “Learn & share new skills while promoting best practices, helping organizations overcome the challenges of implementing a successful digital transformation strategy with Microsoft Dynamics 365”.

Monday, January 15, 2018

Speaking at Dynamics 365 Saturday Amsterdam

I will be delivering a session about chat bots and Dynamics 365 at Dynamics 365 Saturday Amsterdam on the 3d of February. Registration is free.
Dynamics 365 Saturday is a Technical & Strategy event organized by the community with the following credo: “Learn & share new skills while promoting best practices, helping organizations overcome the challenges of implementing a successful digital transformation strategy with Microsoft Dynamics 365”.

Wednesday, December 27, 2017

Bots and Dynamics 365 Part 1 : Introduction and building a Q&A bot

For those of you who want to see a glimpse of the potential of bots in combination with Dynamics 365 check out the Microsoft Data Amp 2017 Keynote (Channel 9 recording) but also some actual reference cases such as
Bots are officially a hype in Silicon Valley  and while stories like It begins – Bots are learning to chat in their own language might depict a bright future for bots due to the recent advances in machine learning and artificial intelligence, developing a good bot will still require a good design and up front thinking about how you want your users to interact with the bot.  The user experience of poorly designed chat bots will frustrate users trying to perform more complex tasks. And even when this will not become a headline such as Tay, the Microsoft that pranksters trained to spew racist comments you will still have disappointed a potential customer.  But companies which start early experimenting with chat bots, are able to leverage advances in natural language processing and artificial intelligence and a number of different bot building frameworks.  The important thing to realize is that building a bot is not so much about the underlying technology but about creating a memorable customer experience – a great example is Lemonade sets new world record which show how AI handles a filed insurance claim in under 3 seconds.

Luckily, building the underlying platform has become a lot easier and Microsoft has also made available a number of different tools to help you in designing a great experience. Microsoft not only provides the Bot Framework (publicly available since April 2016) which includes a Bot Builder SDK and Developer Portal but also launched the Azure Bot Service  in the November 2016. Azure Bot Service has been built on top of the Azure Bot Framework and provides a number of templates to get started with the creation of bots. In theory you can code your bot directly from within the built-in editor but you will probably switch over to Visual Studio afterwards as well as integrate with your source code repository by downloading the generated bot code to your local machine.


One of the basic templates which is available in Azure Bot Service to write your bot is the the Question&Answer template.  To get started you need to built up a knowledgebase with questions and answers, information which might already exists in content such as FAQs, documents,etc…  Microsoft QnA Maker  will be able to use these existing sources and provides both a web interface and REST API that trains AI to respond to user’s questions in a more natural, conversational way. I took the example of https://www.statefarm.com/customer-care/faqs/auto-insurance and used it as input for QnA Maker to build up a knowledge base. Within QnA Maker itself you can test it afterwards  to see how your bot reacts to specific questions.



The next step is creating a bot using the Azure Bot Service – next to the QnA template there are also other templates available – see Bot Service templates  for more details. You can start experimenting with the bot service framework at a very low cost, the free model allows you to test it out with 10000 messages/month and you will only pay for the consumption of the underlying Azure functions  or you can use the premium pricing model which provides an SLA as well as as access to premium channels. (See Azure Bot Service pricing for more details)



After the bot service has been created, you will still need to connect it to the QnA service that you published previously by filling in the QnAKnowledgebaseId and qnASubscriptionKey in the App Settings of your bot which you can retrieve from the QnA settings page.



User interact with your bot through channels, the Azure Bot service provides fourteen channels such as Cortana, Facebook Messenger, Kik but also embedded web chat.  Web chat is the channel which is enabled by default, and you can start quite quickly by just embedding an iframe in your web 





You can also use a DirectLine (not web chat) channel, and start from the source code available on https://github.com/Microsoft/BotFramework-WebChat  to build an embeddable web chat control which is both available as a React component and a self-contained control which is easily usable by non-React websites.

But if you really want to leverage the full potential of chat bots, you will need to integrate the chat bot channel into the core systems and data repositories of your organization such as Dynamics 365 for Customer Engagement and Service Management. From a Dynamics 365 perspective there are some interesting generic use cases for bots:
  • Customer Service – tier one support, bots can simulate 24/7 customer service representatives and act as tier one support and escalate case for follow-up by actual customer service representatives. 
  • Customer Service – appointment scheduling for servicing such as maintenance, repair, etc …
  • Lead generation - an embedded chat bot in your website can answer simple product and pricing inquiries from customers and at the same time create leads.
In a next post I will delve a little deeper into how you can integrate your bot with Dynamics 365 but you can already explore this topic yourself by looking into a number of blog series on this topic such as the series from @NishantranaCRM :
Other references: