Master No Code Chatbots With Power Virtual Agents [Full Course]

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hi there and welcome my name is devin knight we have a really exciting day today where we're going to be looking at power virtual agents in a class called power virtual agents in a day so we're going to be in a very short amount of time digging very deep into what you can learn with power virtual agents well hi again again my name is devon knight i am the training president at pragmatic work so i focus on a lot of different training all around the power platform and in today's class we're going to be really diving in deep into what you can do with power virtual agents now for many of you power virtual agents is a very new course one because it's a very new product it just came out last october and was added as part of the power platform and so it may be very new to you so we're going to explore not only the basics of what power virtual agents can do for you but we're also going to get rather hands-on and that's going to be a fun experiment here we have many folks that are on on the stream here with us but uh hopefully i've got you set up so that you can be successful with this because what we've done for you is we've actually given ahead of time everyone that signed up in advance a login to be able to follow along with a tenant that i've set up really again to make you successful for today's class so let's go ahead and jump in and i want to show you a couple things here on my screen to get you going for today so you'll notice here of course i have in the top right several things that are going to be really key for today one being the class files so if you haven't already uh you want to make sure you download the class files and you'll see a link to it here i have a few colleagues that are actually in the youtube stream with us as well that will share that link as well and that will give you the ability to follow along with the material for today once you've downloaded that zip file you want to make sure that you have unzipped it on your workstation somewhere on maybe just directly on your c drive just so you can find it very easily as we go through the class you're also going to need the credentials that i sent you in advance now if you're watching this stream later at a later date you can of course use your own login credentials the main reason why i gave folks that it signed up in advanced login credentials is because there are some things that you'll need to have set up that could you could have potential restrictions within your organization maybe your organization doesn't allow you personally to create your own common data service databases and so i've actually done that in advance for those of you that have signed up now if you aren't seeing that if you didn't receive that login information i do want to encourage you to look for it could have gone to your spam but we sent two emails out yesterday and one of them looked like this this was actually a follow-up email that we sent later and this email had your login information as well as a password you'll see the login information is blank here but you should have received a login for yourself now if you didn't i would encourage you to actually contact matt peterson who's part of my team and he's actually in the chat right now as well and he has a list of some extra logins that if for some reason you aren't able to get one you can contact him and he will i need to spell his email right though he will actually give you a login to be ready to go for today and if you signed up in advance he already has a login for you just give you the one that you already have assigned to you so that's one thing to get going right off the bat is i have a special tenant login that i've given you that has a lot of things that will actually save you about the 30 minutes to an hour worth of time of just configuring your environment for the class so that's already ready to go for you just make sure you have this email or if you don't have that email matt can assist you and he's not going to assist you through chat i would recommend he assist you via email to make sure that you're able to get that all right so that information is going to be key for today make sure you have that handy as we get going through the first module as we want to do our prerequisites the other thing i want to draw your attention into is we're going to be referencing a couple times throughout the day and we'll also send you this link later after the class so if you registered with us in advance you'll get a few things after class one of those will be our chatbot cookbook and the chatbot cookbook is full of information it's about a 15 page document that just has a lot of great information about why you should use chat bots uh it's it's great for kind of making this roi if you're kind of going back to your boss or you maybe perhaps you are the the one that's trying to make this decision of whether you should use chat bots or not not uh we have this great cookbook that really backs up the reasons for using chat bots and so i recommend uh if you don't just go ahead and download from here we'll also send it to you after the class is over as well all right so let's get started again my name is devin knight briefly about myself i am the training president so we have two divisions at pragmatic works consulting and training i run the training part of our business i'm also a microsoft data platform mvp that just means that microsoft has a recognized me for evangelizing their products and i've also written several books all around the power platform many of those are around sql server as well as power bi power automates and powerapps and we have a new book coming out very soon that's going to be across the entire power platform so you'll see that coming out very soon i'm also this is really just to tell you a little bit about myself where i'm from i contribute to a local power bi user group the jacksonville power bi user group so i'm from jacksonville florida is really the only point to that to tell you where i'm from and then finally if you're really interested in following up and reading more about content that i create you can follow me at my blog at dot devonnitesql.com so feel free to take a look at that to connect with me afterwards and as well you can see my twitter if your twitter person and my email there as well all right so we have a pretty chock full day uh we have a lot of material to cover in a short amount of time we will get a break in probably about halfway through uh we'll take a break just a reminder the class is to be run before between 11 and 2 o'clock eastern time so that's eastern time make sure if you're adjust based on your time zone but we have a lot of material to cover so we're going to jump rather quickly into it i'm going to not just kind of linger over uh the the overview here we're going to jump rather quickly into actually getting into some of the material but we're going to uh get into of course some introductions this is also part of the reason why i wanted to make sure that i gave you some prerequisites ahead of time where i have that login information for you will help you skip some of the prerequisite steps that really aren't relevant to power virtual agents so we're going to help you jump over some of those things we're also then going to jump into how you can actually start to build your first power virtual agents what it's going to entail and then we're going to talk about things like power automate how does power automate integrate into power virtual agents to really extend its capability and allow it to do more than what you can just do with power virtual agents by itself so power automate is a great way to extend the capability and then in the last module we're going to focus in on optimizations that you can do with inside power virtual agents i will note here that our last section the section on optimization a lot of it's more theory so you'll actually find that a lot of that will be more discussion and we might be able to even jump through some of those areas a little faster just because i want to make sure i show you the hands-on pieces more than anything else today i want to make sure you have the opportunity to see that how i would actually do these elements all right so we're going to jump straight into our first piece here which is all around kind of getting familiar with power virtual agents as a whole so if you're not really familiar with it again it's a rather new tool so it's okay if you're if it's new to you but i want to give you familiarity with what the tool can actually do and if you're not really familiar with chat bots in general what does chat bots do for you what can chat bots do to help your organization and it's all around automation and trying to give a personal feel to an automated task of interacting with either customers externally or even internal employees so a lot of people don't think about using chat bots internally but it most certainly can be done that way as well all right so again i mentioned a couple times already that power virtual agents is part of a larger system called the power platform and the power platform is full of various low code platform applications that allow you to do things like reporting and analytics that's done through power bi it also allows you to build your own business applications through power apps and that's a low code application that allows you as a citizen developer to build your own application you'll hear that term citizen developers a lot when you're referring to power platform you'll also be able to use things like power automate power automate is a great tool for workflow automation and allowing you to take these tasks that are kind of remedial tasks that can be automated in some way and it can actually automate those processes and then finally the focus for today is power virtual agents and power virtual agents is all around building these intelligent chat bots that can uh not only automate conversations with customers but make them even feel personal and make them actionable so they can actually take forward uh requests from customers and respond not only respond to them but actually do additional actions and this uh whole power platform has a lot of interconnectivity between the various pla tools uh there's hundreds of data connectors that all of the different systems can use you have things like external capabilities with portals uh you even have ai builder that's actually connected in with every one of these tools there's ai capabilities that can actually enhance what power bi power automate power apps and power virtual agents can do all in one and then the common data service is this kind of overarching platform to store data and allow you to really interconnect in with smaller subsystems of data as well so a lot going in with all these different elements now when you think of chat bots there's a lot of different reasons why people choose chat bots and it really kind of starts with this idea of if you think about yourself most people generally try to start with a self-service solution first i know i had an incident with amazon recently where i had something that didn't get shipped or didn't arrive in a proper amount of time my first gut reaction is i'm going to go and try and see if i can solve this myself with some kind of automated chat system because on amazon really a lot of different uh large companies have automated chat bots and so my first goal is how can i solve this problem myself using some kind of interactive component they have so it's 66 and you'll actually see where these stats come from here in a moment 66 percent of people try to use self-service first rather than actually contacting a live agent for assistance so there's a there's definitely a need for this as you can see here and then 90 of customers expect kind of this consistency or continuity across channels meaning if i were to actually dial in and talk to someone live i would expect kind of the same experience that i have if i were interacting with an automated system and this is all of course leading into how power virtual agents can be designed in a way to feel like it has continuity across live people as well as the chatbot capability and then finally the last thing here is 59 of channels are managed in silos so what does that mean managing silos means you have a lot of subsystems behind the scenes maybe you have a marketing platform maybe you have a crm in the background you have all these different subsystems in the background and each of those are oftentimes managed in silos meaning they're not interconnected they're not interconnected in with your chat bot very well which also means that it's difficult for your chat bots to be able to tap into those various subsystems and produce results and produce action items and that's one of the things where power virtual agents excels is it can actually tap into those various subsystems that you have either through apis or through power virtual agent to give you the capability to actually use those various subsystems that you have that are not connected that are siloed from everything else but still use it with inside of your chatbot capable uh tool here all right so chat bots are great right i'm talking them up i'm talking them up as if they can solve all the problems but they certainly can't right uh chat there are some issues that sometimes people consider when it comes to chat bots one is chat bots can be expensive to create and maintain and you'll see as i go through this that power virtual agents actually answers some of these problems but in general chat bots can be expensive to maintain and expensive to create when you have to have a developer that does all the work for you so are you gonna hire a developer full time for multiple months to be able to develop a chat bot for you well when it comes to tools like power virtual agents it actually gives the data consumer or i should say the citizen developer the ability to create the chat bot themselves and define what the chat bot is going to do so that capability is actually given to the subject matter expert and the subject matter expert is put in charge of defining how the chatbot is going to answer the questions that come from your customers the other thing often is there's this impedance impedance between the subject matter expert with the answers and the developer or the data scientist who's creating the chatbot so that's oftentimes a big hindrance where you have this break between the person developing the solution and the person that has all the answers well power virtual agents also has a kind of solution to that where your citizen developers that subject matter expert is actually the one that's creating the solution as well and then of course chat bots aren't really necessarily going to be that useful unless they are going to connect into the backend systems that have the answers and again power virtual agents has the capability to tap in either be via an api or using power automate to tie into those various subsystems that you have and generate answers for your customers all right so really the idea here with power virtual agents is that it's meant to engage naturally with your customers it's meant to be able to interpret things through ai so if a customer asks a question one way but you're not expecting it that exact way it's able to interpret that through the ai capabilities that are built in there's a lot of azure cognitive services that are built into power virtual agents and then you also have this continuity again that's really enhanced when you can pass off from a chat bot to a live user so you have the ability to pass off chat bot interactions and chats to a live person and that's a great capability that's baked in and then like we mentioned a couple times the chat bots actually have the ability to take action with inside power virtual agents it has the ability to make it so that whenever someone wants to log into their account they can actually do it within side the chat bot itself they can log in and produce a information that would require a login to send back to the users so there's all this interconnected capability built into power virtual agents that really makes it go far and above what the more traditional uh chat bot can do all right so again who is power virtual agents for well it's really designed for multiple groups one is for your customers so your external customers that are going to be interacting with and asking questions it's certainly meant for them but it's also meant for the subject matter expert the subject matter expert in the types of questions that the customers would ask are typically going to be those that are authoring the chat bot topics that your customers will interact with you'll still see in some cases a lot of cases you'll still need some it involvement or developer involvement to integrate it in with your website or to integrate it in with skype or integrate it in with teams that integration piece is often still going to need a developer in some cases because there'll be some some integration steps that need to be done and some embedding steps to embed it in your website but the core pieces and the longest part of development of any chatbot is defining the topics and defining how are those interactions going to work between your customers and you or in this case your automated chatbot and so the subject matter expert is really who needs to learn the most about power virtual agents because they're going to be defining that how it works and how it interacts with your customers all right so let's talk a little bit about the life cycle of a power virtual agent project what does it look like to create a project for power virtual agents there's really multiple steps here that are going to be key the first part in creating the bot and using the the interactive capabilities that gui that's provided with inside power virtual agents is very simple it's very simple to get started with power virtual agents what's difficult is it doesn't start stop with just a simple creation there is this kind of life cycle where you go back and you make constant improvements there will not be a power virtual agents project that will be done and after the first iteration and you're done with it forever you often will revisit it to see how your customers are interacting with it and how you can improve it so you're of course going to start by creating some topics and you can create topics very easily uh by even pointing power virtual agents to like a frequently asked questions page you have so you can point power virtual agents to a web page and it can interpret topics automatically for you we're going to show you that a little bit today and it'll allow you to create topics automatically you can then author your own topics using the natural language capabilities that are built in and you can do things like variables to make it so you can pass values back and forth and interact with your chatbot very easily and then of course we've mentioned a couple times now you can integrate your bot with power automates power automate gives you really this expanded capability to make it so that your chat bot is not very limited you have a lot of things that you can do and then you can even have i mentioned there's some interaction you can have with developers earlier you can even have developers create new skills kind of like you might hear of alexa skills if you have an alexa at home they have skills you can add in you can do the same thing with your chat bot so you can have a developer that creates this integration with an api of one of your systems and be able to integrate that into your chat bot as well that's kind of an extended capability not something you have to do but you can certainly add additional features if you needed to there the next step would be i would take my bot and and then basically send it off to any kind of bot framework channels this would be how i would integrate it with teams or how i would integrate it with my website or the different systems that i want to integrate my bot with is the next step so i would publish it and then make it available to these different systems that i integrate and interact with and then the last step which of course this is kind of a cycle you'll you'll start over once you get to this last step is you will monitor the bot for performance and make sure that it's actually solving the problems that you anticipated should solve so you have the ability within side of the analytics piece to see which bots are more successful which topics specifically are most successful and then you can look and see how many times that topic has had an escalation or how many times that topic has been how to resolve solution and so you're able to really kind of interact with and see from a reporting standpoint how successful your bots have been all right so again the power virtual agents is built on top of the power platform we've talked about that pretty heavily the couple pieces on the bottom here the bottom left i'll highlight a little bit more in depth are it's also built on top of the microsoft bot framework this is super powerful this is that this is actually the piece that a lot of developers use to develop chat bots as the bot framework but you're given that capability of the bot framework in this citizen developer designed tool allowing end users or subject matter experts to take advantage of the bot framework without having to know the nitty-gritty of how to define it you just need to know how to basically use this nice gui interface to create this conversation with your customers it also is used on top of the azure cognitive services and cognitive services is what gives you the ai capability to be able to interpret things that people are asking and say oh they've asked for this they really mean this so you're able to interpret what a customer says as something else based on the ai capabilities that are built into azure cognitive services and the great news is you don't have to know anything about those things you don't have to know anything about the bot framework you don't have to know anything about cognitive services because the power virtual agent is built on top of them and making it so that it actually just works without you having to be an expert in all those other more technical aspects of creating bots all right so real quick summary of this section we talked about the capabilities that you have with power virtual agents that it's designed for multiple people that it's really focused for customers and has this connectivity into all this extensive extended extendability with things like power automate as well as advanced skills that your developers can create and it's developed on top of the microsoft bot framework so there's a lot of great capabilities here so what we're going to do in our first hands-on we're already jumping into our first hands-on in the first few minutes here is we're going to set up and make sure that you're really ready to go for the class so i had shown on the screen before and i'm going to pop it back open one more time is you'll want to make sure you have the course files downloaded which you can see in the top right here it's aka dot ms slash and you can read the rest and again this class is based off of the power virtual agent in a day material so make sure you have that downloaded and unzipped on your machine once you do you will see files that look like this now i i put my own little instructor files folder in here for myself but you'll have all of these other files that you see here available and something that we're going to use throughout the day we're going to start on lab one so i actually recommend and i ideally you have multiple screens today if you don't it's not the end of the world but i do recommend that you have multiple screens because you're going to want to have the lab file open even though i'm going through it with you there's going to be multiple times you're going to want to copy and paste things from the labs because it'll just save you a lot of typing so we're going to go ahead and open up lab number one and you can just double click on it to open it and i have it open already right here and i have some great news for you lab number one is one of the longer labs but i've actually done some work some leg work to help you skip much of the work that you have here because a lot of the work that you'll find in the first two tasks let me unzoom here for a moment you'll see i'm actually going to have you start on page 19 in lab number one the reason for that is because the first 18 pages walk you through how to set up your environment and i have done all of this for you so the first 18 pages are knocked out you can skip those and you're gonna start with me on task number three now the key part of this working for you for you to be able to skip the first 18 pages is you're going to need to to use that login that i provided you that has the information that you'll use to log in so that'll be pretty key um again we emailed those matt matt peterson who's in the chat with you can also provide that information for you i provided his email earlier for you to be able to get that login all right one thing it's also worth mentioning as we get into some hands-on stuff here is because we chose to use youtube streaming here youtube live because it allows you to rewind at any point in time so if you feel like if you want to follow along you certainly can i would tell you you do not have to but we did provide that login information for you and if you ever feel like there's a moment where i go a little bit too fast keep in mind you can always do a quick little rewind and you can go back a step and see what i did again so if you are working with one screen today feel free to pause at any time and go back and see what i did and then you'll be able to catch back up so you have the ability to kind of keep up very easily just built within the streaming platform okay good deal so now that we've got the the the kind of prerequisites of how we're going to do this out of the way we're going to start again on page 19 in the labs on lab number one and the first step here is we're going to log into make.powerapps.com so you can either launch your web browser or you can just click the link in the labs again i do recommend you keep the labs open for this because there are quite a few times you'll want to click and interact with what things that are in the labs themselves but you're going to go to make.powerapps.com okay i'm actually going to start it again just to make sure you guys can see this make.powerapps.com and when you get there it's going to prompt you to sign in now you all like i mentioned have a login that's been sent to you if you would like to use your own personal login you need to make sure you have a cds environment or environment with cds enabled in it i've done that for you to save you a lot of time so i have a login that i'm going to be using and i'm going to go ahead and type it in you should use the one i emailed you don't use mine and once i get that in here i'll go ahead and sign in i'm going to copy that just so i can easily have it later and everyone's password is the same it's test at word one okay test at sign word one all lowercase all right and meantime i'm going to go ahead and paste in my login information somewhere else all right so you can go ahead and sign in if you're you may or may not want to hold on to this information because it's not your normal one so i'm going to go ahead and hit no on that and this is going to launch you into powerapps now you might be wondering why am i going into powerapps for a power virtual agent class the reason for that is there's a couple key things that is provided to you in the class files that you'll need to bring into your environment to follow along for today the first thing i definitely want you to check is to make sure that the environment you're using and you can see the environments up in the top right hand corner of the screen right here you'll find environments after you get logged in where it says environments you want to make sure that you're pointed to the one here called dev lab admin and then it might you'll have likely a different number than me okay so don't worry so much about the number but make sure you select up on the top and select dev lab admin whatever the number is you might have one also here that's called contoso or you might have one that's called productivity something there's some different ones that pop up but the one that we're going to use for today is dev lab admin so make sure that's selected okay once you've selected that environment you're then going to go over to the solutions section so you're going to go over to the far left where you'll find solutions and go ahead and select that okay and you'll find there's some there's various solutions that have already been enabled in here but we're going to be importing a solution that was provided with inside the class files so again find solutions on the left hand side once you have found that we're going to select that we want to import a solution okay so you're going to go up to the import option right here now one thing i should note here before i go too far you want to make sure that pop-ups are enabled in your web browser so if you have pop-ups pop-ups turned off on this particular site you will likely have a little miss here because it's going to pop up and ask you to find the file location for what you want to import which is going to be in the class files so that's why i told you earlier make sure you unzip your class files because you're going to have to go select something within those class files in here in a few moments so make sure pop-ups are enabled on your web browser for this point here all right so we're going to go ahead and select that we want to import a solution up on the top here within the solution section here's where the pop-up enablement is key in fact whenever you select this you might be prompted here to enable pop-ups and then after a moment or so usually doesn't take this long but after a moment or so we're going to go ahead and select our files there we finally came back so i'll select choose file and we're going to go navigate to wherever you select it or wherever you saved your class files so again you you should have unzipped your class files to your c drive or your workstation somewhere so ensuring that you have it unzipped is important here so we're going to go ahead and select that we want to import the file here called solution power virtual agent day in a day this is the file that we're going to select it is another zip file within the zip file so you're going to basically import the solution from a zip file here all right so i'll select power solution power virtual agent in a day from the class files and then hit open right you can see that solution is selected here you'll then click next and then you'll select next again and then finally click import this might take in some cases for usually it only takes a few seconds but in some cases it could take up to two minutes so be patient with it if it doesn't uh immediately work for you or if it looks like it's running a little slower than mine be a little patient with it but this is importing the solution so it gives you a big head start into what we're going to be doing for the day now once this completes this actually gets our fir our first task which in our case is task number three already done so we're starting on task number three while it's doing the import i'm going to show you where we are in the context of the class here wherever we actually work through our way of importing the solution so you just did several pages worth of results here uh our final thing that we're going to see here is we should see this here in a few moments once you see this screen that means that you have successfully completed the import mine's still running there looks like it's almost done and then we'll be off to our next task so in the next section here we're going to actually start working on um bringing in together these solutions together in one single location okay all right so let's flip back over looks like mine is done so we're going to go ahead and hit close on this and this just shows you that the import has completed if you really wanted to look at the details of it you could but i'm going to go ahead and hit close all right so now with that done you'll see a new solution that should have arrived here for you after the import completed called va in a day for virtual agent in a day or virtual agents in a day all right so what we're going to do is you're going to go ahead and select virtual agents in a day go ahead and click on that and if you're following along in the lab this is now starting task number four and in task number four we're basically going to take the solution that's been provided to us and fix some connections that are in part of the solutions that are here you'll notice that there are a couple things in here there's a two flows in here there's a couple things within the common data services have already been created for us and so what we're gonna do is we're going to basically enable these flows to make sure the connections are wired up properly so what i want you to do if you're following along is select get order info by email and this is going to launch power automate and it might prompt you here to go ahead and sign up for a trial power automate if you have used the login that i provided that's fine go ahead and hit get started and once you do that you will be brought into a screen that looks like this where we're configuring this particular flow here and so we're going to go ahead and click edit on this flow and oh i clicked the wrong edit sorry i want you to click this edit up top here click this edit button on the top of the flow and you'll notice you have this little warning sign on the connection now what we're going to do is we want to correct that little warning uh you'll notice that there it's missing a connection and the way to fix that is you're going to expand this here so click on the actual connection option here and we're going to add a new connection because it's basically not wired up to establish a connection into our cds environment so we're going to add a connection and as you do this make sure that the environment in the top right still says dev lab admin if it doesn't say dev lab admin you'll want to change the environment to make sure it's pointing to the right one okay all right so we're going to hit add a new connection and it's going to create this connection into our common data service our version of it all right and then if you want you can kind of go ahead and x out both of these options here i'm going to click x next to the environment and x next to the entity just to make sure that it's picked the right one for us here so we're going to go ahead and hit the down arrow after we click the x to remove the environment and make sure it's pointing to our dev lab admin environment okay like so then you're going to select select the entity device orders so you'll either start typing to find it you might find that a little easier to type in dev and you'll find device orders but you're going to select the device orders entity to use for this power automate flow now i know we're doing some things here that aren't power virtual agents yet but this the whole purpose of this is kind of set you up for success for some of the things we're going to do later in the day so go ahead and select the device orders entity and then hit save and that will save this power automate okay and we're gonna once it's finished saving you can see it's still saving on the top left here once it's finished saving you can go ahead and hit back hit the back button in the top there and then the last thing we want to do before we move on is we want to turn on this flow okay to turn on the flow you'll just go up to the top here where it says turn on and you'll hit the turn on button okay so that's going to flip on the status here from being off to on you should see it now say on with inside the details section here all right good so we've got this one taken care of you can go ahead and close this tab with inside your web browser and then this will take you back hopefully you still have opened the tab to your solution with inside of this is powerapps right now and the next thing that we want to do is we want to do something very similar with the return item flow that we have so we're going to go ahead and select the return item flow and that's going to launch another browser tab for us again and this time again we're going into power automate and we're going to edit this flow again to basically make the same correction we did a moment ago we're going to correct it so that it's pointing to a proper connection here okay so to do that you're going to click edit in the top left where my mouse is right now and then once we do that you'll see we have the same issue we had previously showing up underneath the connection section here we'll go ahead and expand this and we're going to point this into our connection that we've already defined so we'll hit um actually i think i can just select the connection that we already defined there let's see if it worked for me yeah it looked like it did so um tell you what let me actually back out of this and come back into it just so i can show you what i did i know i did a little fast there i'm going to launch the edit again just want to show you what i did if you expand the connections on this again you can see if you click your existing connection here one that you've already defined previously that will allow you to not have to define the connection a second time so if i click on on lab admin in my case 100 yours might have a different name i'll go ahead and select that and then it will connect into my enviro well it's not connecting my environment yet but it'll log me in essentially and then i'm going to click the x on these two because it's pointing to a bad environment right now so i'm going to go ahead and click x on this and click x on this and then we're going to point the environment again to my dev lab admin one okay so make sure you select the correct environment like so and then you're going to point it to again the device orders entity here hey um can you review what the solution is doing yeah so um the question uh was you know what is the solution doing essentially what the solution is doing here for us is it has a bunch of pre-created elements that don't have anything to do with the chatbot we're going to be creating it doesn't have anything to do with chatbots that we'll be creating from scratch but it's going to help us in the integration into other power platform pieces so what this solution has in it is it has a power app it has a couple flows in it and we're going to leverage those flows within side of our power virtual agents at a later point so i'm trying what the solution doing is doing here for you is it's helping you have these things set up in advance for some of the things that we're doing later so just to be clear here i know some of this is kind of setting up prerequisites this isn't diving right into power virtual agents right off the bat but it's getting us to a point that we can integrate with these other tools later all right cool so we've got the selection here we've now pointed it to our environment we've pointed it to the entity for device orders so we've got that all set the last thing that we'll go ahead and do is save this by hitting the save in the top right okay so hit save and then go ahead and go back into once it finishes saving there we go go back by hitting the back button on the top left here where it says return item all right and then the last step that we're going to do here is the same last step that we did in the previous one is we're going to turn on this power automate flow to turn on the flow you'll hit turn on right here yeah sure so just a reminder if you're if you're struggling to keep up with some of these little steps here make sure you remember it you are in youtube so you can rewind to me you can take a step back and get back uh where i was if you want to see what i did a second time you can hit the little rhyme button in youtube and it'll allow you to kind of review something if you missed a step that i did that'll allow you to catch up rather easily there all right so we've got the uh solutions are the the flows that are within that solution turned on wired up again so that we can use them these these this again in this first module we're setting the stage for things that we're going to be doing later and we're not diving super deep into power automate yet uh mainly because we're going to kind of ease our way into it and the first module of this class really focuses on how to get prepared for later all right so we've got this taken care of so you can close the tab that we had open okay and you'll this will take you back to power automates which you are already in and our last thing that we're going to do is we're going to import a power apps app and we're going to import a canvas app so if you're following along within the labs itself we're already down to page 35 and lab number one and what we're going to be doing within this lab is we're going to import an application that is part of the class files so again those class files you should have downloaded ahead of time but we're going to go underneath the apps section here so on the top left of powerapps okay so if you're not seeing apps you might not be in powerapps and you might need to make sure you're looking at make.powerapps.com here but you'll go to apps and with inside apps we're going to import a canvas app and what we're going to be doing with this this is a canvas app where we're going to launch the app very briefly we're going to do a small interaction within the app and the reason we're doing this is to be able to log some data into the common data service database basically we want to have some pre-defined databases for some order information so when we go start working with the power power virtual agent chat bot it'll have some reference of some data where perhaps we have an order where we've attempted to make an order all right so we're going to select that we want to import canvas app and we're going to select that we want to upload a canvas app again we're going to be selecting a zip file that is in the class files okay and the zip file is called app power virtual agent in a day so go ahead and select upload here and you're going to be selecting the file called app power virtual agent in a day okay so make sure you have that file selected when you click that slow down okay and then hit open okay so select app power virtual agent a day and again these are coming from the class files so make sure you go within the class files that we've downloaded and select app power virtual agent a day and click open once you do that it'll take here a few moments to kind of recognize the file and recognize that it is a power app and not just some random zip file that you have and then once after it gets a few moments with it sometimes it can take a few minutes once it's done with that you'll see that your screen kind of updates to look like this so it's actually recognized the app within the zip file and your last step here is to import it so in the bottom right you'll see there's an import option you're going to go ahead and select to import this power app that you've selected okay so go ahead and select import and again that'll take a few moments but when your app has successfully imported you'll be you'll see a little successful symbol that will pop up and again the reason for a lot of these different elements is it does it is going to help us show how the power platform integrates in with all of the other power platform elements so again power platform has four different tools the only one that we're not really touching today is power bi and you're still going to see a little bit of power bi integration inside power virtual agents because that's what's used for the dashboarding and analytics piece of power virtual agents you're not necessarily creating anything inside power bi but all of the other power platform tools will integrate in together very nicely here alright so it looks like mine has my app has successfully imported the way i can tell that is up on the top here you'll see the little success sign here letting us know that we've imported that successfully and so now the final real few steps that we have here is to generate some test data for our power virtual agent now the way that we're going to do this is we're going to interact with this app that we just imported so to do that you're going to go over to the left hand side and select apps again okay so go over the left-hand side within sound and with inside power apps and select apps and then you're going to select the app here called device ordering app and we're going to launch this very briefly we're going to select something just to basically interact with the app to generate some data for us and then we'll move on all right so we'll select device ordering app here and after a few moments it will launch the app you will also likely have a prompt that will ask you to allow permissions when you open the app you're going to go ahead and select to allow that you should notice that it is if you've logged in with our our little test accounts or our demo accounts that we're using for today you should notice that it actually is pointing to those demo accounts that we've set up for you so you can see here that it's uh it's kind of requesting permission into the common data service with the login that we have our demo account and then it's also trying to get a connection into the office 365 user connector here as well so once you see this pop-up you're just going to click allow and you're allowing it allowing apps to have connectivity into your common data service once you've done that it will launch the app this is an app that's actually developed as part of app in a day so if you've ever taken any power apps training specifically the app in a day class then you've likely seen this app before this is actually a device ordering application where uh you can order an application for your users or maybe perhaps yourself and you can use this to kind of compare multiple products together and what we're going to do is we're going to use this to just generate some data that's going to be later leveraged within side of power virtual agents so to do that if you're following along you're going to go ahead and select that we want to look at one of the devices let's just say the ask aspire u here we're going to select this one product and then the bottom right you're going to select that you want to compare one item it's just going to basically give you more details about that one item so select the one item and then hit compare this will then bring up kind of a detail screen or a submission screen where you can submit the ordering of this product so this is the last step that we have with inside powerapps all you're going to do there's actually two more clicks all we're going to do is we're going to click submit device request in the bottom right and then once you do that it's going to launch one more form for you and all you have to do is it's going to say hey the device request has been successfully submitted click ok so again the point of what we're doing here is to set up and get some data ready for our later module so once you hit ok we are actually done with all the prerequisites we're done with setting up power automate we're done with powerapps so go ahead and click on ok on the device ordering app and we're ready to move on all right so here's what i'm going to do i'm going to flip back you can close power apps for now you can even close your other one i'm going to leave this one open for now though and we're gonna flip back over the slides to continue forward into our second module all right so this is i know and forgive me i know there's a lot of steps there a lot of that is really setting us up for success later that's why the slide there actually said prerequisites and creating the environment believe it or not starting on page 18 saved us about 45 minutes or an hour of a pre-defined setup there so there was a lot of uh help that i did ahead of time there even though there was a lot of still set up that we had to do together but what we're going to do now is now that we've got the prerequisites done we're going to walk through how you can build your first app so this is really going to be focused now all on power virtual agents and how do we get going with it and how do we start to begin building our own app here so let's go ahead and jump in so we've already talked about this our agenda here so when you go to begin with inside power virtual agents you will create a bot so the first what you're creating with the unit of work with inside a power virtual agent is called a bot and then with inside of those bots you create topics the topics that you create can be either user defined topics that you actually create yourself or there are system topics now when you first initially create a bot there are several user-defined topics that are created for you and there's also several system topics that are created for you as well so as we get into it here in a few moments you're gonna see that there's several uh basically template conversations so you can learn how to do power virtual agents just by beginning to create about yourself all right so system topics are gonna be things more like uh i want to end the i i'm going to end all of my conversations in a standard way so i'm going to launch this in to send people to a survey sending people to a survey is a is an example of a system topic that's been predefined for you user ones are going to be all you now when you go to create a topic there's really this kind of process that you're going to do so it's going to start by of course you define a bot you're going to create new topics topics you can think of as a conversation that you're having with a user so if a user logged in to your chat bot and said i need to i need a refund you would likely have a topic that is centered around refunding products so refunding products could be the name of one of your topics and then with inside of your topic you'll have things called triggers which we'll look at here shortly and those triggers are going to be trigger phrases that your users would have to type in to initiate the topic uh interaction okay now they don't have to type in the exact words that you have as a trigger phrase that's actually where part of the ai capabilities of power virtual agents kicks in is if they type in something similar or similar enough to a trigger phrase that you've entered it will initiate the topic anyways so the process here is that you'll create a topic you'll then create this conversation tree where you have what how the conversation will flow you'll then test the conversation or test the bot and then you'll publish the bot so that the others can test it as well as you can have it published to your website and then you're going to look at the measurements and analytics to see how successful the bot has actually been once you've analyzed it and you've looked at the analytics within the bot and seen how successful it is at actually resolving problems that's when you'll kind of go back through the cycle and you'll go through and revise your bot based on you you've seen that you're maybe your bot's not as successful as you would hope it would be so you can go in and actually modify some of your topics to make it connect and resolve more problems all right so it's kind of a multiple cycles through uh the process here all right so to create a new chat but we'll go through these slides rather quickly because we're gonna actually see it ourselves here in a moment but to create your own chatbot you're gonna go to power va powervirtualagent.microsoft.com we'll do that here in a moment and then you're going to select that you want to create a new chat bot okay now if you haven't gone to power virtual agents before you might be prompted to actually sign up for a trial as well so we might see that here in a few moments but it's very simple to get started then to actually uh to interact with it you can see some of the system topics as well as the user topics that have been created for you ahead of time i mentioned there are there's actually four user topics that were predefined for you that are really there to help you learn how to use power virtual agents on your own so you'll see those four topics available to you and we'll actually leverage some of those topics to get started as well and then the eight system topics are more things like greetings escalations end of a conversation different things that are kind of commonplace within chatbot conversations then we can look at the conversation trigger phrases now again trigger phrases are what will be used to initiate a topic so when a topic is not going to be initiated unless one of the trigger phrases is called upon so if you look at the screenshot we have on the right hand side the topic is issues with your lawn so maybe this is actually a company in fact you can see the name of the company this is trugreen they were one of the one of the case studies for microsoft with power virtual agent true green is a lawn care service that does like fertilizer and things like that but you can see that one of their conversations or one of their topics was around issues with your lawn so somebody would come in and have an issue with their lawn and they would type in one of the trigger phrases that you see to the right so these are the types of trigger phrases i know it's a little blurry because it's a screenshot here but if anyone typed in some of the kind of trigger phrases that you see here then it would initiate the topic called issues with your lawn okay and so we're going to see that experience here as we go through this as well now again the trigger phrases do not need to be exactly of what appear from your user it does use the ai capabilities to parse whatever the user types in to trigger the topic anyways all right so once you have created the topic you will then launch the authoring canvas and the author in canvas actually kind of has a look and feel of a little bit like power automate and that it's a tree view you're actually kind of working through this tree view where you can create this conversation tree on how you're going to be interacting with your customers so you'll have the trigger phrases will be on the top and then interactions like questions that you're going to ask customers or messages that you're going to send to your end users your customers will appear with inside the conversation tree from there all right then once you've created the once you've created the conversation tree you'll then actually test your bot so you'll use the testing capability that's built in there's actually a test bot option that when you select it it allows you to not only test the bot for how it's going to interact from what you've created but you'll also be able to see how it flows within your topic you can see in the middle part of your screen or the right hand part of your screen you'll be able to see at what point is it within your conversation tree and this kind of guides you and helps you understand how successful your conversations will actually be because you can test it within the testing capability once you have tested it you feel pretty confident about it you can publish it to a demo site and this is pretty easy to do the purpose of the demo site though is so that you can pass your chat bot around to other colleagues prior to actually putting it on your website or your team site or whatever your whatever integration you want the demo website allows you to hand around the power virtual agents that you've created the bot that you've created to others to test out to interact with to give you feedback without it being public to the whole world on your on your website so the demo site is a great way to be able to test outside of yourself i mentioned the testing capability that we had here is more for your own purposes as you're developing the solution you can test it but then the demo site is more for other users within your other colleagues basically to test out the site for you as well all right so this is just kind of a little summary of what we've done this actually gets into talking about some of the analytics that we'll be able to look at over time as well we'll be able to look at things like the abandon rate how many people started a chat with our chat bot but didn't actually finish it how many escalations did we have how many resolutions did we have all of these things will be really important as we finalize our chat bot and start to make enhancements to it over time okay all right so just a summary we talked about power virtual agents being part of the power platform it's built on top of the common data service that's why we had to have that environment inside a cds environment ready to go and it also offers this really nice graphical interface that we're about to see here in a few moments for creating our solution all right so we are ready to jump into lab number two and in lab number two we're going to begin actually building our first chat bot okay so again if you're following along in the class files you would want to have open lab number two build your first chat bot and this one we're going to start out from the beginning so if you're following along there no issues just beginning at the very top of it and we're gonna work our way through it together all right so lab number two here and i'm gonna go ahead and close my my presentation deck here and bring back open my web browser because what we're gonna be doing in this lab which by the way the first steps here start on page two but the use case of this one is that you work for a retail company called contoso so contoso is a company that microsoft uses a lot as the sample retail company and uh the contoso retail company is having a lot of success and their customer base has grown quite a bit and what we'd like to do is we want to make it so that our customer support can scale much better than it can right now they're the the live chat capabilities where we have with live in live chat uh customer service representatives is being overwhelmed and so we want to see if we're able to help some of our customers through our chat bot capability and power virtual agents so that way that a lot of this could be automated rather than always having to have dozens of people handle uh interactions so to to do this we're going to actually have and we're put in charge of creating a chat bot as the subject matter expert and customer service for contoso again we do not have to be someone that's in it we can be this kind of citizen developer to develop our own solution here so that others can interact with it okay so to do that we're going to again get started by building our own virtual agents and so we're going to do this by going to our web browser and you can open up a new tab if you want or you can actually leave powerapps we're not going to be in powerapps anymore and we're going to go instead to power va that's powervirtualagent.microsoft.com okay so take a moment in your web browser go to power va and once you go there it will prompt you to sign in now remember you are if you're following along i recommend you signing in with the account that i shared with you that has a lot of this pre-configured common data service capabilities that we just wired up a few moments ago to the flows all of that is done uh hopefully within that account that we shared with you now because it's the first time that i'm logging in with this account using power virtual agents it is prompting me to sign up for a trial and what this tells you by the way is that it recognizes that my login is still i'm still signed in based on what i signed in with inside power virtual agents but you may be prompted to sign in again there's a chance that you may be prompted to sign in again and if you do if you are then you're going to sign in with the account that i provided you all right so i'm going to go ahead and hit start free trial so we're going to start a trial of power virtual agents on the demo accounts that were provided to you and then we're going to create our first bot so the bot we're going to call really you can call it whatever you want call it your company name i'm going to call mine pragmatic works service but you can call yours uh whatever you want if you're like uh the case study of true green you can put true green case uh customer service if you want just whatever you'd like to name it all right so you're gonna name the bot and then you're going to tell it what language should the bot be in and in our case we're going to i'm going to do english throughout the course here so i'm going to make sure i select english here as well right there english u.s and then this part is very key hopefully you didn't rush through this ahead of me because you want to make sure that the environment that you select is not the default one you're actually going to switch this to the lab at the dev lab admin environment so make sure we did a lot of work to set up that environment so that it's ready for what we're about to do now so make sure you switch this to use the dev lab admin environment because that's where we have our flow integration that's where we have our data stored so having the right environment selected is very important i will show you if you accidentally selected the wrong environment and hit create i will show you where you can go delete this and delete this bot and recreate it i'll show you where you can do that so you'll go ahead and hit create once you have the name the language and the environment selected and then hit create this will take just a few moments here to create the bot but once we have done that we're all ready to move on to task number two within the lab and task number two is we're basically going to get a little review of the different elements that we have within side of power virtual agents all right so let's take a few moments here to load there it goes and you could get a little you could explore some of the documentation here if you wanted in my case here i'm just going to tell it that i want to explore the bot so we can go ahead and get started with it so i'll hit explore bot now i mentioned a few moments ago you can actually see up in the top here it's still creating the bot but we can explore it for a little bit right now there's some different elements that are still getting added to the bot itself but i mentioned earlier if you had accidentally selected the wrong environment and you needed to recreate the bot you can do that by going up to the top little bot icon right here and this is essentially you don't need to do this if you feel like you did everything correctly but if you accidentally selected the wrong environment or you don't like the name you created for it you can come up to here where it says nubot or add a new bot under the bot panel and you can add a new bot now the reason why it's not allowing me to do this yet is because it's still kind of creating the bot that we have here but once it's done creating the bot and you refresh your screen so i might just need to do a little screen refresh here once you do that and the bots finish being created looks like it's still working on it right now uh you'll then see the ability to create a new bot so this one has to finish before we have the ability to do that so don't worry it'll be done here shortly and then we'll be able to do that if you needed to so you'll select new bot that's only if you feel like you made a mistake on the previous screen where we were selecting the environment the environment again pretty important you want to use that dev lab admin one okay so while we're waiting for this thing to to finish assembling all the files that are necessary let's do a quick little tour of the different areas that we have on our screen so if we focus our attention on the left hand side you'll see there are several different nodes here that you can select from and interact with in fact before i go too deep into this let me even expand the main oh i can't do it yet until this is finished assembling let me just zoom in on it like this for now so a couple things here under the home screen you'll find things like the documentation you'll find support the support community you'll find an ideas forum if you want to submit ideas for how power virtual agent what additionally you'd like to see it do basically the home screen is a bunch of shortcuts shortcuts to all kinds of different things that you'll need where you can create other topics where you can hit the publish button where you can look at analytics it's a little realm here where you can find all the shortcuts to those items below that you'll find topics and this is probably where you'll spend the majority of your time is in the topics area this is where you'll create those new topics like we saw on the slides earlier where let's say for example i'm having issues with my lawn i would create a new topic to be able to handle that scenario and this is where i can manage topics where i can edit topics where i can delete topics where i can create new topics i can also find suggested topics here so we'll learn about suggested topics later on so there's a lot of things that you have within the topics area and you'll spend like i said the majority of your time in that realm the next one here is entities now entities are going to be where you can create entities that can be leveraged inside power virtual agents and basically these are a way where you can pre-load different options that your users can select so imagine that you are working for pragmatic work customer service here and you sell hardware you sell things like various devices like samsung devices acers you have microsoft devices all the above and you want to make it so that whenever a user comes in to type in and say they're having an issue with their device you want to be able to ask them what device do you have and if they type in samsung series 7 you want to have an entity that has a list of devices to be able to make sure you understand the device they're talking about because if they just type in the text and you don't know what that device reference means then it can be a little you can basically veer your chat in different areas based on the entity selection so entities you'll learn a little bit more about later but this is where you can kind of pre-define possible values that your users might type in this is also where you can create things like synonyms so i can have if a user types in samsung series seven i can have a synonym for that is uh samsung so samsung can just pick that up based on that i don't even have to create a synonym for that it's smart enough to detect that there's some smart matching with samsung series 7 and just the word samsung so some really cool stuff that you can do there the next one that we have is analytics this is where you'll also spend some time once you feel like you've got the bot fairly well designed you'll then test it out a lot and then use the analytics to be able to verify that it's doing what you think it should be doing and this will provide various metrics about uh things like resolutions and escalations and all kinds of stuff that tells you about how well your bot is actually serving your customers so there's a lot of good information that you'll find there next you'll find publish publish allows you to as the name implies publish it so that you can actually leverage it in your various channels or if you're just even trying to test it with inside the demo site you'll use the publish option here to be able to hand this off to your other users and then with inside the manage section looks like my bot is finally created now by the way you can see i can now expand this within the manage manage section you have the ability to define which channels your bots going to be available to if you have any additional authentication to apis additional apis that you want your users to be able to authenticate with inside the chat itself so imagine that you have a chat that is enabled within side of teams microsoft teams and you wanted to tap into something like your sales force well salesforce is obviously a whole other product that's not microsoft and then you have microsoft teams here and these are typically very siloed from each other what you can do however is you can create with inside the chat bot itself where a user can type in their username and password and authenticate to these other subsystems like salesforce and still have a conversation and get information from salesforce back into microsoft teams through chat so there's some interesting capability that you can do throughout authentication here and then the last one that i'll mention here is the skills this is really where you would rely on a developer this is kind of kind of like i mentioned alexa skills earlier this is where you can rely on a developer to create your own custom skills that tap into various apis that you have that you want to be able to integrate into your chatbot so some interesting capability that's all underneath the manage section there all right now i mentioned earlier my my chat bot was still being created and because the bot was still under creation i wasn't actually able to go to the new bot option here but now that it's done creating i can go under bop panels and you can see i can create a new bot once i have a new bot i can also delete the old ones so you have some ability here to kind of switch things up if you needed to okay all right good deal so just to give you we're about an hour and five minutes in right now just to give you a little time frame here what we'll probably do is uh finish this lab so we'll go probably maybe an hour and a half or so and then take our break so another 20 minutes or so we'll take our first break so if you're kind of looking at the clock here wondering when we're gonna do that we're gonna finish this lab lab number two and then we'll take our uh first break of the day i really are probably only break the day so we'll go ahead and uh just get going through this lab so exercise number two within this lab is we just want to kind of interact with this and show how the bot works so there are several pre-built um topics that have been created for us and you can see that you have the ability to test these topics in the bottom left so look in the bottom left you'll see this option here where you can actually test your bot so if i were to click on test your bot down here this will expand the test screen for me and another key thing that i highly recommend that you do when you're testing your bot is to turn on this option here called track between topics what that will do is it will actually show you the conversation tree that the uh testing is going through so it'll show you a tree of a conversation and it'll show you the path at which your users took so if we wanted to test this out i would turn on track between bot or track between topics excuse me and then we can come down to the bottom where it says type a message and we can just type something like hello if you type hello and hit enter or hit send that will then allow your you your your chat bot to engage and because we have this track between topics turned on you can actually see on the right hand side the conversation tree and the path that we took so because we said hello it hit one of the trigger phrases right here this is a system topic by the way it hit this trigger phrase and then it initiated a message it says hi i'm a virtual agent and then it kind of goes through the interaction that you would have with that particular topic here so it asks how can it help us and you could if you wanted to you could ask something more specific i could say something like stores near me and so if i want to know information about where the local stores that are near me if i'm looking for a physical brick and mortar store i can hit stores or type in stores near me and hit send and this will actually switch to an entirely different topic this time the topic is called lesson two a simple topic with conditions and variables and you can see that it hit this trigger phrase here that initiated this topic so one of the things that's interesting here is power virtual agents can skip between various topics so if you started with hello it would initiate a system topic but then if i said something like stores near me it's going to initiate a user topic in this case it's a user pre-built topic for me that allows me to transition into learning more about where to find my stores and now that i've done that you'll see here within the chat bot itself it says i'd be glad to help you find a store near you which location are you interested in and you'll see there's several predefined topics here that we can choose from and you can actually click on whichever one of the topics or should say whichever one of the stores that are near you that you want to test out so if i were to select something like redmond or seattle whatever if i select one of those it's going to bring provide me more information about that particular store and you can see with the track between topics turned on it will show you the the the the method of how it got to where it's at and if i say did you answer my question yes it'll take me down this condition path on the left hand side now that's a lot of steps there's a lot of things going on here right and all this has kind of been pre-built for you so let's actually take some time now and show you how you could get started with this yourself right now all i'm doing is i'm showing you stuff that's already been pre-built for us these are some user topics that were defined for us ahead of time but now let's shift gears a little bit and actually show you how you can play around with the interface with inside power virtual agents and and either modify an existing topic or even how you could build your own eventually all right so let's switch back here so what i want to do is i want you to follow me along and go over to the section here that says topics okay so we're going to go ahead and go to the topics node on the left hand side here and with inside the topics area we're going to make a copy of an existing topic that we already have so you'll find that there's a list of user-defined topics right here there's also a list of system topics these user-defined topics are again they're they're put here to help you learn how to use power virtual agents they're not ones that i actually did myself power virtual agents puts this here for you so you can learn how to use the tool a great way to learn how to use the tool is actually to play around with these so if i wanted to learn how to use power virtual agents i might make a copy of one of these so for instance find lesson number two a simple topic with a condition and a variable don't actually click it but instead hover above it and then click more actions and with more action selected go ahead and select that you want to make a copy of this topic okay so all we're going to do is make a copy of it and then we're going to make it our own so go ahead and select make a copy and when you do it'll take a few moments so you'll see it's copying the topic up at the top it actually has a little status bar to tell you how things are going but it created the topic and you can now see we have two of them in here called lesson two okay and you can hover above it if you hover above it you can actually see which one of them is the copy it'll tell you copy at the end of the text there when you hover above it but you can also tell which one is the copy because the copy is going to be turned off by default and you can go ahead and leave it off for now we'll we'll change that a little bit later once we get working with it a little bit more all right so here's what i want you to do i want you to select the one that we just made a copy of that would be this one here on the top that's turned off go ahead and select it hit the text all right and when you select the text for the um topic it'll take you into the topic setup so within the top the topic setup screen here you can rename the topic if you wanted to so that'll be actually our first step we're going to rename this topic so where it says name here in the top left go ahead and rename this and let's call this something like git store locations instead of lesson two and then you'll also see things like a description the descriptions are rather helpful as well i recommend that you use the descriptions when you're trying to define what this topic's going to going to be doing so especially if you're not going to be the only one working on the solution it's really helpful to provide in-depth descriptions of what this topic is showing and what it's doing so that way if someone else is kind of kind of picking up after you or or editing things that you've already worked on then that way they know exactly what this topic is doing so i certainly recommend adding a description the other thing you'll find here is trigger phrases and we've talked about trigger phrases a little bit now but you'll notice that it recommends that you have at least five to ten diverse phrases when it says diverse phrases that means don't have a bunch of phrases that are basically the same thing just slightly reworded you should have different phrases that would still go down the same topic or you would like to go down the same topic but are are different enough that power virtual agents won't be confused on which one to use even though they're going to the same same topic in this case so you're going to see how to create trigger phrases later but you'll note here that this one already has several trigger phrases pre-created for us and what this means is if a user types in something around like stores near me or store locations it's gonna find one of these trigger phrases to initiate the conversation based on the similarity that what the user typed to the actual trigger phrases so they don't have to type this exactly but they need to type in something somewhat similar to what you see in the trigger phrases for this topic to be kicked off all right so after we change the name let's go ahead and save this topic you can find the ability to save the topic in the top right right here so go ahead and click on save topic once once you've changed the name and then we're going to go ahead and launch the authoring canvas and so you'll see you'll find the author and canvas button right here so go ahead and select the authoring canvas to launch it okay again just a reminder that i know there's gonna be a lot of clicks here so if you ever need to rewind use the youtube capabilities the youtube live stream here capabilities and you can rewind to see what i did a second time if you need to okay all right so each of these boxes that you see are called nodes okay so you'll hear me use the word node n-o-d-e quite a bit there's a bunch of nodes in here we have a trigger phrase node which you cannot edit here trigger phrases are only edited on the setup screen we were looking at just a moment ago but then you'll see a message node you'll see some question nodes and then you'll also see some condition nodes in here so these nodes are really what are doing the work behind power virtual agents so you'll be able to add various nodes in yourself but these nodes are what are going to be used for the conversation and how it's going to work through the conversation so let's take a look at one of these nodes you'll see there's a message node that says hey i'd be glad to help find stores near you and then it initiates a question which location are you interested in so the question node here will be a pop-up to your users and it will ask them which location are you interested in and then you'll see here that it has a multiple options list for your users so if you only have three locations then you rather than them typing in the locations you can actually provide buttons for them to click so they can provide they can select redmond seattle or kirkland for the various locations that we have available to them to make life a little easier rather than having to type them what we're going to do is we just opened up a new store location so we opened up a new store so we need to add in a new location to make sure that that store is now listed as one of the options for our users to add in a new option here you would go find the question node and then go down to where it says new option okay so find new option here on your screen within the question node and then go ahead and hit new option okay and we're going to provide a new option for our users we're also going to note and you should take a look at this if i scroll down a little bit you'll also note here that there are various conditions that are hit here and right now a new condition was added we had three conditions earlier now we had a fourth condition added because i added in another option for my users to select so when i added in this new option it added in a new condition all right so what we're going to do is we're now going to tell it well what is our new store we're going to type in right here where it says enter option we're going to type in bell view now make sure you're typing this in this is bellevue washington by the way make sure you type bellevue in to the question node and not the condition node the reason for that is you'll notice the condition node automatically gets populated with whatever you type above so as i'm typing it there you'll notice that it automatically fills it in into the condition node for us automatically so you don't have to do anything special for that all right so we've now added in a new store location for our users that they can select now we also have a new condition here as well so with the new condition we need to define what's going to happen if they select bellevue we already have conditions for seattle kirkland and redmond we now need to add in what happens if they select or type bell view by the way even though it provides buttons they could also type these values as well uh and now i one thing i would think also might come up is as a question you may have is what if they what if they type in something completely different than these four options then you could actually add in a fifth condition so i could add in right here another don't actually do this i'm just showing you a what if scenario here you could add in another condition here that would handle all other scenarios if they typed in something other than the four stores that we provided them because they could actually type in something rather than selecting it all right so we have our bell view scenario here on the far right and what we're going to do is we're going to add in a new message below bell view here so you'll hit the little plus sign to add a new node below the condition and we're going to select that we want to add a message or show a message now this is where it would be really helpful to have the labs open to copy and paste because i don't want you guys to have to type this in but if you have the labs open and i've been kind of following along on my screen here as well you're going to copy and paste in this section or this message right here where it says our bell view store is on in 123 bellevue way bellevue washington 98123 you could type this or you can just copy and paste it out and paste it into our chat bot that's why i kind of recommend you keep the lab open at least somewhere on your screen so that way you can find this and not have to type at all so that was on by the way if you're looking in the lab that was on page 12. page 12 you're going to copy and paste out that section of text into the message node here now what you're going to learn about layers how you can actually make some of these things dynamic you'll see there's variables used over here that are used in some of our other conditions we're going to learn about that a little bit later but for now we're going to go ahead and hard code in bellevue all right good deal so to wrap this one up our final step here is we're going to take this last message that we have and send it to this end of conversation node that we have at the very bottom of our conversation tree this is a system topic that initiates things like surveys and it basically ends the conversation and allows you to either escalate to a live user or send it to a survey to see how happy the users are with the chat bot itself so if i were to take the here's how you do this this is a little this interaction is a little funky so i'm going to do this kind of slow if i want to wire up this message to the end of conversation at the end here i'm going to zoom in on this so you can see it real closely and you're going to hit the plus sign but you're not going to select anything below instead you're going to click and drag this little pink dot pink or purple dot here and you're going to drag this on top of the pink or purple dot over here okay i'm going to do this another time here just so you can see it again you're going to click the plus sign you see the little pink dot you're going to drag that pink dot on top of the end of conversation over here basically it merges this with all the other end of conversations that are similar the reason for this is you really don't need to have four separate end of conversations when really every conversation is going to end in a very similar way where perhaps i want to send them to a survey or i want to escalate it to a live customer representative so if you don't need to basically repeat the same end to every conversation you can merge those four threads together into single one at the end okay so that's kind of the purpose of that okay good deal so we're almost done with this now there's a few things that i want you to look at here if you're struggling to see some of that interaction i showed you a moment ago so a moment ago i kind of clicked on this plus sign and i dragged the note if you're struggling to see that one thing i would recommend is you'll find over on the left side here you have a little zoom in or a zoom out button you may need to zoom out some to be able to see that little interaction that we had here so pay close attention you have to zoom in and zoom out here that allow you to zoom out to perhaps see those little nodes and those little dots a little better because it can be a little difficult to see those little pink dots if you're not looking right all right good deal so now that we've kind of wired all of these different elements up we are just about done we're going to go ahead and save this so you're going to go up to the top here and hit save so make sure you save what we've done so far okay and that'll take a few moments to save and with it saved we are now going to test it out so to test it we of course need to turn it on so let's do this we're going to select topics again so come back over here on the left hand side because right now this topic that we're looking at is still turned off we need to turn it on so come back over to topics on the left hand side now that we've saved that one and what we're going to do is we're going to turn off lesson two because lesson two is the one that we started off with that we made a copy of when we modified it so we're gonna turn off lesson two and that might take us a few moments to turn off you can see it's turning it off up here there it goes it just turned off it just takes a few moments after you click that little toggle to turn it off and then we're going to turn on get store locations so flip on the little toggle next to status again how did i get here just in case you're curious i flipped on topics on the left hand side to get back here okay but basically we turned off lesson two we turned on git store locations so that way we can now test it and make sure it's working like we think it should be working and once we get done with testing it we'll go ahead and take our break all right so we're going to go over to hit the test bot option in the bottom left if you haven't already clicked it you may still have it turned on but if for some reason you turned it off maybe go ahead and click on test your bot and it will say hide bot if you already have it turned on so i'm going to turn this on again and then make sure you have track between topics turned on again sometimes it turns off make sure you have it turned on so as we're testing this topic it's ready to go all right so in the bottom we're going to ask is there a store near me okay so where it says type your message we're going to type in is there a store near me and hit enter or hit send and when we do that if you have track topics or track between topics turned on you'll see that even though we didn't type the exact trigger phrases that are up here i typed in is there a store near me so kind of a combination of a couple of these it was still able to detect that git stores that this topic should be initiated based on the trigger phrases that we typed in even though we didn't do it exactly the way it appears here so the ai capabilities are able to capture and figure out what we're trying to say and so when it initiates this topic it asks me i'm glad or says i'm glad to help find a store near you that's this message here then it says which location are you interested in so that's from our question node and you'll notice that we have four options and it does scroll off the screen a little bit so let me zoom in on this for a moment for you you may have to hover above and use the little scroll bar here to leverage the new one that we just created here called bell view so i'm gonna go ahead and select the new one that we created called bellevue and we're telling it that we're interested in learning about bellevue and so it gives us that message that we created that tells us the location for our bell view store and then it says does it did that answer your question okay so what happened here is it it finished one topic it finished the topic that's all around get store locations and then because we told it at the very end of that topic to transition into end of conversation that was the system topic here you'll notice it's now switched to an entirely new topic here focused on ending a conversation trying to get a survey and we can say here did that answer your question i can say yes and then that'll kind of flow through this system topic here where we can provide a survey and tell it how much did we uh did we do radar experience here were we happy with it or not you can kind of rate your experience there so those are more kind of system topics at the end that are just designed to kind of wrap up a conversation uh to wrap up an interaction that you had within the customer tree the um i thought we were done there's actually one small thing that we have and that's okay i wanted to end around 12 30 eastern time here so there's one more small thing that we're going to do together which is to publish this bot that we've created so far so one small thing this is really only a couple handful of steps here to publish your bot let's flip back over we're going to go to the publish tab which you'll find over here on the left hand side in the navigation so we're going to select that we want to publish our bot and then you'll click publish so let me close the test bot area here you're going to go to the publish tab right here and then you're gonna click publish okay once you click publish and then publish again for the third time it's gonna publish your bot and make it so that that bot is now available between various channels or even the demo website so the demo website i don't know if you remember from the slides earlier i mentioned the demo website is used for sending to your other colleagues maybe they don't necessarily have a power virtual agent login but you want them to be able to test it out and give you feedback that's what this demo site is for right here so if you select that demo site that will actually launch open a new tab for you and it will give you the ability to interact with your virtual agent from within side of this demo little site so you can share this site with your colleagues and then they can come in and start interacting with it and that the same interaction that you had a few moments ago you now have within this demo site and i can say stores near me and it will produce that same interaction that we had before but now with inside this nice little demo site that you can hand off to people so that's the purpose of the demo site just for testing this is not something that you'll necessarily send your users to you would not send them to the demo site here you would do some integration in with various channels which we'll talk about later but let's go ahead and take a rather short break again we have a pretty full day so we're going to take a very short break just enough time to give you a little bio break here uh we'll take a five minute break and we'll come back after that and move on to module three alright so we'll see you guys in five minutes make sure you can hear me too all right welcome back everyone so uh i know that's a lot of stuff all at once here for uh getting to to know power virtual agent i did see some feedback in the the live stream about kind of understanding the business problem a little bit more i know i'm going more through like the function of how to less of the the why so let's let's take a step back here for a moment and talk about that before we do that um i do want to inform you a little bit about pragmatic work so you might be new to pragmatic work you might not be as familiar with what we do we do a lot of power platform azure sql server all kinds of bi training and so i do want to kind of fill you in a little bit on what we offer so if you bear with me here for a moment uh to bug you with that we do uh a lot of live training where we actually uh previously we would come on site that we'd obviously do more virtual now uh we do things from like one day workshops to week-long boot camps we also have on-demand learning that has 60 different courses that are built into it those 60 courses have power platform azure power bi power automate power apps and even a the class you're sitting in now is also recorded on there in full so if for some reason we're not able to finish today and do everything today you can capture the recorded version of this class the pre-recorded version that covers everything uh on the our on-demand learning and we actually have that on demand learning for dashboard in a day app in a day and power virtual agents in a day are free forever so you'll see i'm going to show you where you can sign up and do a trial of it here in a few moments and matt will likely share it in the chat with you as well but that is free free forever to be able to explore those three classes dashboard a day app in a day and power virtual agents in a day we also have classes for purchase so if you're interested in looking at some of our additional training that go more in depth than our free training you can certainly look at that as well and then finally the last piece here is our hackathons our hackathons are really designed to allow you to take what you learn in one of our training classes and apply it to your data so if you're really interested in learning more about power virtual agents but you want to apply it to your scenarios and your business we can do that through a hackathon or if you're interested in learning more about power bi or power apps and how can i do it within our ecosystem that's what hackathons are designed to do is it's kind of one part training one part learn how to build it on our prototype is kind of the end result of that so it's not for production use but it is for kind of building out prototypes so that you can eventually get something to production we're all about kind of teaching man to fish teach you how to fish and do it yourself the last thing that we do is we also offer mentoring i don't have it on the slide here but if you're interested in having some one-on-one mentoring we can certainly help you with that as well and this is kind of a big list of just some of the classes this isn't even all 60 of the courses but this does give you a little bit of a peek at the type of courses that we do offer all right so what i'd like to do is guide you briefly here to where you can find and you may want to pause in the video to get this link and matt will share this likely in the chat as well but this link that i have on the screen right now is to where you can sign up for a trial of our on-demand learning now when you sign up for a trial you'll notice it will say a seven day free trial that's seven days to our paid training but the power virtual agents class is free forever it never expires you can log in two years from now and still look at it in fact we even update the course periodically to make sure that you're looking at the most up-to-date version of not only the class but also the technology so if you go to this link that i have on the screen now you can pause the video and snag it and matt will post it in the chat for you as well when you go to that link it will be a quick form here for you to give us a little information about you but you'll notice here that it is no credit card required it is uh 60 classes are available for seven days but then you have lifetime access to dashboard a day app and a day and power virtual agents in the day so fill out the form that will give you access to those classes long term forever so great great opportunity there for you and it gets you more in depth into not only power virtual agents but some of the other power platform technologies all right good deal the other thing that i wanted to mention and you will actually get a link to this via email if you signed up for our event in advance but the last thing i want to mention before we start back is the cookbook so you have a link here and this has been posted in the chat the live chat several times as well but the cookbook is what allows you to kind of make a use case for virtual agents in general or make a use case for chat bots in general with your organization so if you're if you're trying to make that use use case for your business why do we need this the chatbot cookbook is a great method for understanding that so you can if you go to that you'll actually have this email to you as well so you don't necessarily have to worry about grabbing this right away we will email this to you if you signed up for the event but if you didn't you're watching this later take a look at this link and there's a short form for that as well but once you fill out the form that will allow you to have this great cookbook that we've made it's about 15 pages that talks about the benefits and use cases of chat bots and how you might be able to use them in your environments as well all right so speaking of which speaking of how you would use the enviro your environment let's talk a little bit more about the business case of what we've done so far so so far a lot of what we've done has been taking and kind of picking up from where we left off in other pre-existing topics so the use case here is i'm a customer i'm going to embed this in my website or i'm from a business perspective i'm going to embed this on my website so that customers can come to my website or pragmatic works let's say hardware and we sell physical devices like phones like this and we sell other other laptops and things like that and we want to make it so that when our customers have a scenario where they need to ask a question that we're not overwhelming our live chat we're not overwhelming our customer service representatives with with dozens and dozens of chats when a chat bot can often times solve a lot of those problems for our users and so when our customers come to sign into our website we want to give them the ability to interact with our power virtual agent that has a lot of the answers predefined and again the for the business scenario i could have someone that's part of my customer service department actually define the flow in the conversation tree that we were looking at earlier and of course it's going to require some training if you just hand this off to someone within your customer service department they could rather be rather overwhelmed a little bit at first but it's really designed for them it's all gui driven you'll see i haven't written any code and it allows them to be able to define because they're the subject matter expert how the conversation will flow so that's one of the huge benefits here with power virtual agents over other bots is this allows you to have your cut your your subject matter experts be the one that actually defines how the conversation is going to flow because they're the experts on how they would answer it as a customer service representative to begin with so this would pop up on my website it would allow my users to ask things like you know what if i need to return a product uh what what if i need to find your nearest store and we would be building out these topics to be able to interact with those interactions that our customers have okay all right so hopefully that helps set the business case a little bit better uh than what i had done previously all right so we're gonna flip back over to our slides for a few moments and we're starting on module three which is where we're going to this is actually a rather quick one this is where we're going to be looking at creating bots from existing pages this is actually a really fun part of power virtual agents because what this is going to allow you to do is point to a website that has a bunch of key information already like an faq page a frequently asked question page and be able to point power virtual agents to that faq page and it automatically creates several suggested topics for you based on that page and this is a rather quick one to show but it's a really fun one so let's go ahead and actually get a little bit more info into this so if we wanted to use this option to create suggested topics all you simply have to do is point power virtual agents to a web page it does need to be a secure page meaning it needs to be an https page it needs to be have that secureness to it and within like a single click it will create multiple topics for you and you can pick and choose which topics make sense for you in some cases it might make a topic that is not relevant because it's kind of scanning the page and trying to detect what things are potentially relevant to a conversation that your customers are going to have so we're not going to cover a lot of slides though we're going to jump right into actually creating a new topic based off of a web page now this if you're following along is now module 3 topic suggestion and this one's gonna be a really quick one it's not really a very in-depth module because it does a lot of the work for you but you wanna make sure you have lab number three topic suggestions open for this example all right i'm gonna get it open on my screen here as well so i'm following along with you all right so here's what we're going to do we're going to begin by launching open power virtual agents again so i'm going to go back to my web browser like so and it looks like oh here we go i already have it open let's go to the right one here all right so we had finished publishing our virtual agent that we had created before now we're gonna actually make some additional enhancements and actually create some new topics so we're going to go up to topics where we were previously so select topics here again okay and with inside topics we're going to create some suggested topics so you'll find in the top left right next to where you would normally create a new topic you can now create a suggested topic so go ahead and select suggest topics okay now when you do this it's going to prompt you to provide a web page for where the suggested topics can be found this can be a frequently asked question page that's a very common use case for it in fact the labs if you're following along on the labs on page number two have a link right here to an faq page that you can use for this example and so matt if you could go ahead and paste this in the chat so people can copy and paste it in case they don't have it in their chat sorry if they don't have the labs open but what i'm going to do is i'm going to go ahead and go to and open this page and this is what it looks like so this is a frequently asked question page looks very similar to a frequently asked questions page that you would find on any company's website but what we're going to do is we're going to leverage and see and basically steal this page to create a bunch of topics for us automatically all right so i'm going to copy this url and i'm going to paste it right here where it says link to online content we're going to simply paste this in from the labs again this will only work if you have an https website so make sure it's kind of a secure site before you attempt to do this okay all right so we're going to go ahead and hit add and you could add multiple sites here if you wanted to so you can actually have multiple links here that you provide to be able to send to power virtual agents all right so we're gonna go ahead and hit start once you have that url plugged in here after you click add and when you hit start it's gonna spend a few moments here parsing through that site to create multiple suggestions for us okay so it could take a few moments here but once it's complete you'll be able to take a look at those suggestions that have now been created for you so we're going to wait a few moments here for that to complete once it has completed you'll see the suggested will have a number of suggestions that we can look at so you'll see these are two different tabs you can choose these are the existing topics that we're already using and then the suggestions are on the right hand side that you'll be able to use and select from once it's done getting your suggestion so i'm kind of waiting for it to finish up top here once it finishes up top we'll be able to take a peek at him okay looks like it's done it's given us eight new suggestions okay so let's take a look at those suggestions if you go to click on suggested here on the right hand side you'll get a list of all of the suggestions that are available to you and you can pick and choose which ones you want which ones you don't want you can delete suggestions that you don't think makes sense you can actually add some suggested questions to be legitimate topics so these are just suggestions at the moment but if you want to make them reality then you would select and don't do this yet but you would select add to existing topics to add this suggested topic to be an actual one now if there's ones in here that you don't think are useful you can come in where it says locate a store but we already have a topic for locating a store so if we didn't want this one we could actually delete this one by hitting the little delete button and you can go ahead and do that click delete next to locate a store under suggested topics and once you do that it should rather quickly go ahead and delete that topic now if there's other ones that we want let's say for example we want that reset password one at the top and we want to use that reset password one and we want to make it an actual topic you can do a couple things one you can look at it so if i hit reset your password here underneath suggested topics you can get a little preview of what this topic would look like so by default this is by the way this is not interactive here this is just a little preview to let you look at it but while you're looking at it here you can see that you can you have one trigger phrase right now again it's suggested that you have five to ten trigger phrases but this at least gives you a little peek at what's available to you uh you can see that the what the message is that's gonna be sent to your user if it ha if it initiates this particular topic and then if you really like it and you want to add this topic you can go ahead and hit add to topics you could also delete it or you could hit add to topics and then begin immediately editing it in our case we're going to go ahead and hit add to topics this tlish blue button here almost green button here to go ahead and add this to our suggested take it out of our suggested topics and make it an actual topic so go ahead and hit add to topics that'll take a few moments and it will take it from the suggested section and it will move it to the existing section so you'll now see six it's down to six suggested topics and i'm up to 14 existing topics if i flip on existing topics here you'll see that that new reset your password topic has now been added and what this does is it now allows my user if they come into my chat and they're trying to log into their portal let's say they purchase something and they forgot their password because they don't purchase things from us on a regular basis they can now log into our cust our power virtual agent or they can interact with our agent and when they interact with our agent they if they type in something like reset your password or if they use the word password it will likely pick up this topic and help them interact with and figure out how they can reset their password now anytime you use a suggested topic it's automatically going to leave that new suggested topic off so you'll see that the suggestion here is turned off so if you want to use that new suggestion you'll want to make sure you go ahead and flip it from off to on so go ahead and click that and you'll notice it'll take a few moments here to turn on that topic once you've done that we are done with module three that's a pretty short one right so this what we learned in this one was how we can actually use and leverage existing web pages to be able to uh build out pre-built topics for us so we in this case we looked at a frequently asked questions page we use that frequently asked questions page to create a really eight different topics for us and then we can pick and choose which of those suggested topics we actually like and want to use so quick module here but at least it gives you an idea of how you can do that little interaction to initiate and create topics all right let's flip back over here to our slides for a little bit and what we're going to transition into now is talking about i would say a little bit more advanced topics what this topic is going to be focused in on is how you can really improve or enhance your chat bot with variables with root topic redirects and with entities so we're going to look at several different things here we're also going to talk about a feature called slot filling and discuss what slot filling is and how it can be useful to you and how you can really optimize your chat bot to leverage slot filling so there's a couple key terms that we're going to get out of this module all right so as far as our schedule we're moving along here uh and we're gonna be again looking at how we can create chat bots that are more intelligent that leverage variables that allow and the whole purpose of variables here is to allow me to pass a value from one part of an interaction to a later part of an interaction so say for example i'm having a conversation with a customer and they say that they would like a refund on their samsung series 7 device if they say samsung series 7 i want to capture that and store it in a variable so that way i can use it later on within the conversation so that's kind of the point of the the variables here is to store information and then use that information later on so you'll see we'll actually going to leverage variables quite a bit in these next set of demonstrations all right now this slide actually just repeats what we just talked about it the the variables allow us to kind of keep and store information and pass it along to later parts of our interaction and then slot filling i mentioned slot filling but haven't discussed it yet so slot filling you can kind of think of as mad libs i'm not sure how many of you played with mad libs as a kid where you had this story and there was a bunch of blanks and you had adjectives and nouns and things like that that had blanks that you had to fill in that's basically what slot filling is slot filling is you have blanks and you need to fill in and plug in phrases or words into those blanks with information that's provided with inside the chat conversation so what slot filling means here is i have blanks or variables that i need to fill so that oftentimes those slots can be used and leveraged as variables and i want to plug information into those variables okay we're also going to look at how you can skip slot filling in some cases and how you can actually skip questions based on the interactions that you have we're going to discuss that a little bit later but there's this this kind of concept of proactive slot filling where you have these variables that need to be filled but rather than asking a question if your user gives you more information than you needed can i take that extra information and actually plug it into various variables or slots later on so that's kind of proactive slot filling that we'll learn about a little bit later all right so we're also going to learn about redirecting topics as well so the idea of redirecting topics is you're not going to build one topic that covers every interaction that you have you're not going to build one topic that's going to handle everything that your company needs to do you're going to create multiple small topics for a couple reasons one it makes it easier for you to maintain so if you needed to come in and edit a topic you're not looking at this really big authoring canvas that's so huge it's difficult for you to interact with but you're also creating multiple topics so that they're more segmented and easy to interact with and you can redirect them so i can have a conversation about lawn maintenance but then very quickly redirect to a conversation or a topic on resetting your password and that can all be done within the same chat interaction but just based on the the conversation that happens within the the the conversation tree it will be able to redirect those conversations rather easily so we're gonna learn about how you can actually manage and redirect topics all right so let's jump into our next one here so our next one's a little bit lengthier not nearly as short as the last one but this one might be one of the most important ones of the class here so it's a pretty in-depth one it's a good one to to be pretty comfortable with so if you need again just a reminder this is on youtube live so if you need to rewind look at something a second time if i go too fast do one element for you go ahead and rewind a little bit and watch it a second time take your time through this one this one's going to be some of the more important details uh even though it's a slightly more advanced than what we've done so far it's pretty critical for you all right so this one is going to be with inside lab number four okay so as you're looking at your class files you're gonna open up lab number four which is improve your chat bot with entities variables and i think the last piece there is with topic redirects so looking at within lab number four the scenario here is actually drawn out for you and i recommend you read some of the first paragraphs within the labs because they do set the scenario pretty well for you within here so i mentioned that slot filling is kind of like the concept of mad libs if you've ever done that as a kid or maybe even sometime recently with your own kids i have some little ones that's why i i definitely remember mad libs it's the idea of taking values and filling in slots or filling in blanks and those slots in this case are often considered variables where i want to fill in some kind of value with inside of those and you have this this idea where you can even kind of proactively pull information that you maybe you get information earlier than you expected and you can store that information earlier and pass it in and fill slots later on so you can even skip questions that you might normally ask we're going to get an experience of that a little bit later but definitely worth reading some of the the prologue here to the lab because it gives you a good overview of this this concept of not only slot filling but proactive slot filling okay so in this lab what we're going to be doing is we're going to be leveraging some variables and we're going to be capturing things like product information store locations even some personal data that we want to collect and store with inside some variables so we're going to be getting to a point where we're going to create a new topic that's going to be focused on a customer that's asking to return a product okay so customers the the the topic relation here is i have a product it's not working i want to return it so that's kind of your business case here and our customers first interaction with us is they leverage our chat bot or power virtual agent to be able to determine how can they return a product okay so that's the goal of this one and what we're going to be doing through this one is we're going to be actually creating this topic from scratch we're not going to copy one like we did previously and we're going to actually make multiple nodes in here to be able to handle this interaction okay all right so first things first we're going to flip back to my web browser and we are going to create a new topic so with inside power virtual agents which we're still looking at we i never left it you're gonna make sure you're looking at the topics page here okay so make sure you're still looking at topics you shouldn't have left it but in case you did go ahead and flip back over to topics and with inside of topics we're going to flip and click on new topic so we're starting a topic from scratch this time all right so once you select new topic we're then going to tell it what do we want to name the topic so we want to name this topic return items so go ahead and give it a name return items okay and i do i'm not going to for interest of time here i'm not going to give it a description but when you're doing this in real real life here you definitely want to provide a pretty thorough description so in case someone comes in here afterwards after you and sees this they know exactly what this uh topic is designed to do okay then the next thing that we're going to do is we're going to create some trigger phrases we'll start with one but again we you really should add five to ten trigger phrases to make this topic really effective but the one trigger phrase that we're going to add is i want to return a product and we'll add that trigger phrase here okay so you can see that one trigger phrase has been added you can remove trigger phrases you can add more trigger phrases again it's recommended that you have five to ten trigger phrases once you've done that go ahead and save this topic so save your work early and often i'll go ahead and hit save in the top right and that will take a moment here to save our topic once it does that we're ready to launch when i got one error here let's see oh the air i know what the air is for um the error is because we have a blank message so don't worry about that too much let me go back so you can see the same thing i'm seeing if you see an error that's okay we're about to correct the error here in a moment i just noticed that and you can click on errors and see where they go don't worry about actually clicking that because we're about to go the same place anyway where i do want you to click on is the go to authoring canvas button right above the air in fact if you do click one error it'll take you to the exact same place so either way it's fine but go ahead and click on go to authoring canvas and when you do it's going to launch the author in canvas which is the same thing we've seen previously that has on the very top any trigger phrases you have right now we just have the one and then what we're going to do is we're going to add in a message so the message here which you can by the way copy and paste from the labs if you're looking at the labs this is on page four of the labs the phrase here that we're gonna use is sorry to hear you're on you're not happy with your purchase so i'll go ahead and type it here can help with that i'll help you with that okay all right so we got our first message that returns back next we want to add a question so we're just kind of greeting the user telling them we're sorry that they're unhappy with their product the next thing we're going to do is we're going to add a question so you'll click the little add node button below the message okay so you'll click the little plus sign here and we're going to ask a question so go ahead and select ask a question here and that'll add in a new question node now what's the question we're going to ask we're going to ask them what was the purchase price because here's what we're kind of digging into our company here i'm kind of making up a rule here just to show you different scenarios of what you might do with inside power virtual agents but here's the rule for our company within our company if we have a company that's a product that sells for more than two thousand dollars then they need to return it to the store you know this is just a made-up rule because i'm making up a rule so i can show you how you can do some conditions and things like that in here if our product has been sold for less than two thousand dollars then you can ship it you can send it back to us you can mail it back to us okay uh part of that maybe you could you could turn that made up rule into a real thing maybe it's that we don't want to have to purchase the shipping insurance on something that's more than two thousand dollars so if we need to know the price of the product they purchased to give them better directions then in our question we're going to ask what was the purchase price of the item you want to return okay so we're asking that question you will see there are some formatting options that you have in here you can add links you can add bulleted list numbered list italics italics i italicize and bold as well so you can you can kind of really format things in here if you wanted to all right so based on our return policy we're going to give them different information back and we also want to validate the value that they plug in so if i ask them something like what was the purchase price of your product and they type in blue instead of a number then obviously i want to be able to validate the type of data that they provide and that's where this identify property comes into play this identify property taps into the entities that you have within side of power virtual agents and so it does a couple things one it will actually validate the values that they're typing in are correct so if they if i ask them how much a product of a price the price of a product was and they say blue instead of 50 or 50 or put a 50 with the dollar sign all of those would work they can actually type even the word 50 as spelled out they can type f-i-f-t-y and that will work too because it's a number power virtual agent is smart enough to say oh you typed in the word 50 and redirect it as the number 50. so it's able to interpret that for you but if they type in something totally different like the color blue for how much the product was then that is where there's a couple validation steps here for you so in the identity property here what we're going to do is we want to ensure that they provide us a number so instead of using the multiple choice option which we had in our previous example we're instead going to flip this to look for a number and so the the identify here again is really designed to help power virtual agents validate the types of values that they're typing in so if they type in blue for that for a number it will likely ask them to try again kind of thing so we're going to use the pre-built number property here and that way it validates that they're typing in an actual number even if they spell out the number it's going to validate it as a number all right the next thing we're going to do is we're going to get our first use of variables and so to use the variable we want to take the value that they type in for this question and store it in a variable so to do that you'll see this option here called save response as and right now it has kind of a blank variable here for us but if you select this you can edit the variable and it has a little pop-up pane on the right-hand side and you can give the variable name you can tell it what's the scope of the variable you can you can play with it quite a bit and you can even use variables across multiple bots if you needed to there's a lot you can do with these now in this case we're going to give the variable a name and we're going to call this one price of purchase price of return so we'll call this purchase price of return okay so that's the name of the variable that we have here and then again you can define what's the scope of the variable so right now this variable is scoped just limited to this topic meaning it can't be used in any other topic and we're going to leave it that way but just so you know you could make it so that this variable could be used across any topic within side of this bot so that's an option as well okay all right so once you've named it purchase price of return go ahead and save you might want to save multiple times while you're working on this but go ahead and save this so it saves the work that we've done thus far okay all right so our variable has been now cr has now been created next now that we have the information about uh how much their purchase price was we now want to redirect the next part of this conversation based on their answer to that so if they say they purchase something that's more than two thousand dollars then i'm going to direct them to locate their closest store remember we did the location of store conversation already so i could redirect that conversation to another topic or if they say hey i purchased something for 200 that's less than 2 000 i'm going to direct them on how they can ship something back okay so let's go ahead and add our next node in here and what we're going to do is we're going to create this condition so it's kind of like an if statement here so we're going to add in a new node below the question right here by hitting the add node button and the node that we're going to add is a condition node okay so when you add a condition node this is basically a split it's splitting our conversation multiple ways when we select this so i'm going to select add a node or add a condition and if you're adding a condition you're always going to have more than one path right it's either this or that or you could add multiple paths and for our scenario we want our paths to look at our variable value so we created this variable to store the information that was replied to our question about the price and we want to look at that variable in our condition to determine how we're going to direct this path so we'll say that if the variable value purchase price of return zoom in on this if the variable value of purchase price of return is let's say less than you could say less than or equal whatever let's say less than if it's less than two thousand dollars then your then part is down here so we would define next what we want to happen if the purchase price is less than two thousand dollars so here's what we would do we'd say um we'd add like a a new message under here so we would add like a new message right here so we would hit the little plus sign to add another node and we would add a message node to tell them okay well if it's less than two thousand dollars here's what you do so we say show a message and the message that we wanna show them is let me unzoom for a moment it's actually in the labs so if you want to copy and paste it from the labs you can it's on page eight and it's this right here you can you can return item or items to my to to buy mail it's kind of oddly worded to contoso returns and then it gives you the address so i'm going to copy this and i'm going to paste it into my message here by the way you can also add any kind of formatting you want so if i really wanted to have the bold text in here in certain areas you could do that you can format it however you want to make it really clear to your users okay all right good deal so if really this kind of ends this part of the conversation it ends this this part of the condition because if the product is less than two thousand dollars we're going to tell them they can they can go ahead and return the item by mail right here and then if we're happy with that if that really should end our conversation then we can tell it that we want to add a new node to end the conversation with a survey okay let me show that one more time so if we're happy with this message that should be the end of all of our conversation that has to do with products less than two thousand dollars then we could add one more final node here sorry my mouse is going a little wonky on me here let me try that again we can add a new node to end the conversation and we want to end with a survey and this would send it to a system topic to end the survey itself all right so that's going to end the conversation with a survey now for our other path we really need to determine what we're going to do with our other condition and we can kind of assume that if it's not less than two thousand dollars then it's obviously more than two thousand dollars so we don't need to kind of define this condition because it's really everything else and so what we're going to do is we're going to tell them and basically point them to our topic about finding the location of the store that they need to return the product to because again our policy is if the product is more than two thousand dollars and they need to return it to a store if it's less they can mail it so if it's more than two thousand dollars then we're going to add another question here so we'll add a new node and the question that we're going to ask is do you know your nearest store location okay now this is pretty straightforward right you're not gonna you're not expecting a complex answer to this question it's really yes or no and when you have a yes or no or a true or false that's when you would use a bullion identify type oh my mouse keeps growing up here we go you would use a boolean type here just like you would in traditional databases or cds they all have boolean types where you can return back true or false values so the answer to this question let me add a question mark here the answer to this question should be true or false so based on that we want a bouillon which you can see right here a positive or negative response is extracted for this and the way that this would appear to your users is it would actually pop up two buttons yes or no so just like we had um in that previous example where we had the different stores and they could select redmond or seattle or bellevue as a button the users are going to have a button response option here that's yes or no to be able to select whether or not they know they're near a store okay so that's it for that one so if they know the store yes or no we now want to take the response and store that in a variable as well so based on whether or not they respond yes or no to this we're going to store that in a variable by selecting save response as variable here and then in the top right you're going to give this new variable a new name and this variable's name is going to be nose store location okay so if they know the store location it'll return back true if they don't know so the store location it'll return back false okay so go ahead and give that variable a name i would recommend go ahead and save while you're at it as well so go ahead and hit save in the top right i should be saving more often than i am right now just to make sure everything gets saved in here but you'll see here now it's going to ask the question and based on the response it's going to store that in a variable just like it did in our previous example okay all right after that question node we're going to add in a second condition the second condition here is going to return back based on if they answer truth true or false or yes or no on that question about if they know their store location so if they do know their store location i'm going to send them down one path if they don't know the store location then i'm going to do a topic redirect to the topic that we created in our previous example remember that previous example we did where we have uh whether they where they can determine what their store location is it's closest to them we're going to redirect to that topic based on that okay so we're going to add in another condition here under our question node right here and this new condition is going to read in our variable just like it did previously we're going to read in our variable that's uh called nose store location okay so no store location is going to return back and if they do know their store location that's going to return back true so you'll see there's two possible responses here true or false that's because we did a boolean type before so we're going to make this one set to true okay and if they do know their location then we don't really need to do anything else we can be done with them and send it off off their way we don't need to really do anything else we could actually send this to end the conversation if we wanted to here so we could say end with a survey okay so if they know their store location they don't need any more information from us if they don't answer yes to that then it's assumed that it's going to go down my right path and the right path is all other conditions which would be you know for example no they don't know their store location so if they don't know their store location then what i want to do is i want to redirect them to the topic that we already created that answers that question this is part of the idea here of creating little segmented topics rather than having one large topic to cover everything i want to have smaller topics that can answer the questions and then i can interconnect them together okay all right so with inside our right path on that condition we're going to add in a reference to another topic so you'll see there's an option here for if they answer no they don't know their store that we want to send them to another topic so you can select go to another topic here and then the topic that we want to send them to is get store locations that's the one that we created or we kind of modified together we made a copy of and we we did our own thing with so we'll select git store locations on that okay all right so we've created this redirect let's go ahead and save this now that we've done that and let's test it out let's see what we've done and verify this is going to work the way we think it's going to work now as we test this one out there's another thing i want to point you to over here on the left hand side there is within this section right here an option to actually monitor the variables so if you want to watch the topic variable values and as they change over time you want to see that you can turn on this option right here to kind of monitor your variable values and see how does it go through your path based on the variable selection you have so i'm going to go ahead and turn that on you can see the two variables that i have and then i'm also going to turn on test your bot so i can actually test this as we go and i can start to ask some questions so if i want to know let's say for example how to return a product i can type in the question how to return a product and just as we did before make sure you have the track between topics turned on so that way you can see how it's flowing between your topic all right so how do i have that i'll hit enter and that'll take us up here's our here's our our topic tracking here i can see here's where we started it gave us a response how did sorry to hear you have you're not happy with your purchase then it asks us the question what was the purchase price of your item and this is where we can actually tell it um you know how much did we pay for this item so that way we can track the flow and maybe we give one example of what it was like what the experience would be like if it was above two thousand two hundred dollars or two thousand i mean and what the experience would be like if it was below two thousand dollars so let's say this first one is two hundred dollars so this first purchase is two hundred dollars so it allows me to mail it back so it gave me information about how i can mail this back now maybe i add a message in here and actually tell the customer that our policy says all products less than two thousand dollars and have to be brought in but here in this case because the product is less than two hundred dollars i told them they can return the item by shipping it here and i can tell them whether it answered the question or not all right so that's kind of one flow of how this would work and you you likely saw as we were going through that flow you i didn't kind of highlight it here but the variable topic tracking here actually showed the changing values in our variables as we went let's try this one more time i'm going to hit the reset button here and flow through this one more time so let's hit reset and this time i'm going to ask again how to return a product all right it's going to ask us how much our product was this time i'm going to say our product was three thousand dollars and it's going to send us down a different path it's gonna say do you know the the nearest store location also notice here that it's storing the variable values below so we're actually able to see how it's flowing through here and what the variables are storing and that they're storing properly and i'm going to say no i don't know the nearest door so i'll hit no and when i say no you'll see the other variable value here and then it does our topic redirect so our topic redirect this time is redirecting to a new topic we are now actually engaged with a new topic here the store git store locations topic has been launched and now i'm interacting and looking at that topic that we created previously so i can tell it that i want to look at the bell view store and then it'll give us information about the bellevue store here okay so that we learned a couple things there we learned one about how we can leverage uh boolean uh identity values and entities we also looked at how we can leverage variables conditional statements and we looked at topic redirects there as well so a lot of fun stuff there that we played around with to learn how to use and leverage these new features all right let's go ahead and hide our bot hide our test bot here down at the bottom left for now and let's learn a little bit more about entities and essentially what i want to do with entities is i want to capture what type of product our customer has okay so let's say for example they're trying to return a particular device and i want to know what type of device they're returning and i maybe also want to be able to provide information about the the basic shipping methods they have available to them so let's actually focus on shipping methods for this one so in this example i want to create a custom entity that stores the different methods that my company ships products so i want to provide the shipping options to them i want to provide and show them that we do expedited shipping we do store pickup it's not really shipping it's more just how they can bring come pick up something at the store and i also do other types of standard shipping as well so to to create this and the whole point of creating this entity is so that it's a little clear to our users whenever they go to ask about shipping we can give them predefined information about shipping the other benefit to doing um an entity here is it gives you two features available to you one called smart matching and what smart matching does is it will do things like automatic it'll correct misspellings so if customers said they wanted expediting expedited shipping but they misspelled expediting because it's a it's a little tougher word it will do spell checking and automatically realize that hey they meant expedited let me make sure that i return back information about expedited shipping even though they didn't type that the other benefit that you have with entities is that you can um create synonyms okay and so synonyms give you the ability to predefined uh synonym words so if somebody says they want expedited shipping but they don't type expedited they type in fast shipping you can create a synonym for the word fast and when they say fast shipping you're telling power virtual agents that they really want expedited shipping so there's a there's several benefits to doing entities here and you're going to see that as we do our example here so let's go ahead and jump into this one here we're going to create a new entity by going over to entities in the top left okay so go ahead and select entities this is a new area we haven't explored yet so we'll select entity here and we're going to create a new custom entity at the top okay and this new custom entity is going to be around product shipping or shipping options okay so create the new custom entity and we're going to call this shipping options that's the name of the entity you should of course give the entity a description so people know what this is if they're coming in to it afterwards and then you also want to ensure that smart matching is turned on this is the feature i mentioned before that basically does grammar checks misspelling checks variations of words it helps without you having to do anything it helps correct issues that your users might have typed things in slightly incorrect okay so make sure that's already turned on it should be on by default then on the right hand side you're going to give it a list of values so you can kind of think of these as like rows in a table so think of an entity as almost like a table and then the list items are like rows with inside that table okay so we want to add in an entity a list item called standard shipping that's one of the possible options that we have so we're going to type in standard shipping here and we're going to add this list item okay so let me zoom in on this for you type in standard shipping as a list item and then click add okay let's go ahead and type in a couple more list items we're going to also type in expedited shipping and then add that one and we're going to type in store pickup in case someone would like an option to have it shipped to the store and then pick it up from the store all right so we'll select and type in store pickup and then click add here again all right so we have our three items within this entity standard shipping expedited shipping and store shipping with those three items now created we can define some synonyms for each of those items so in case a user types in something slightly different we're still able to capture what they meant to type in okay so for standard shipping for example we're gonna add in a synonym called complementary shipping or free shipping let's type in free shipping here and we'll add that as a synonym for standard shipping and so that's that way if they type in free shipping i know empower virtual agents knows they're really talking about standard shipping okay we'll also add in one for complementary shipping case they type that in and then we'll click add for that as well so these two synonyms can be now correlated with standard shipping so even if they type in one of these power virtual agent agents knows they're talking about this okay all right so let's add in a couple more so for expedited shipping let's add in a couple synonyms for that so we'll go add in underneath synonyms for expedited shipping we're gonna add in same day shipping add that one we'll add in same-day guarantee which is kind of similar but we're gonna use the word guarantee here okay okay same day guaranteed delivery we'll use overnight shipping let's get the word fast shipping in there just in case and then we'll add one more for one day shipping and then click add all right so we've got several synonyms created for this one by the way if you're following along the labs this is on page 18 of lab number four all right so we'll go ahead and select that and hit done and now this has actually created several synonyms for expedited shipping so let's do a couple more for store pickup and then we'll be done with the entity here so i'll go ahead and add some synonyms for store pickup and for store pickup we're going to go ahead and type in store pickup with a space just in case kind of covering our bases here we're going to put in here ship to store and we'll also add in in store as another synonym so again the point of the synonyms they could type in this and still get the proper response because we've made sure that they've got that reference smart matching is already turned on so we should be good with this so i'm gonna go ahead and hit save in the bottom right it's behind my face here right now you'll hit save over here and then go ahead and hit that save button all right so once that saves we can now leverage this entity with inside of a topic in fact we're going to create a new topic around shipping options and then we can leverage some of the other skills that we learned about topic redirects to be able to properly pull this in together all right so once this entity saves it looks like it has saved now we're going to go over to topics let's go ahead and close this entity first so in the bottom right go ahead and close this okay and then we're going to go up to the top left to find topics okay and we're going to create a new topic called shipping options so create a new topic here and this new topic will be called shipping options okay then like we mentioned before it's best to add five to ten different phrases we're going to add several phrases this time and rather than just one like we did last time we'll say what are my shipping options we'll say can i have again what remember what trigger phrases are these are what are going to initiate this topic so they need to ask something similar to one of these phrases for this topic to be kicked off so i'll say can i have free store pickup okay let's also add in can i get free shipping okay let's also add into do you provide same-day shipping and then one last one how much does shipping cost that's probably a very important one to have but that integrates in multiple trigger phrases that your users could potentially type in and again as a reminder trigger phrases do not have to be perfect if they type in something like uh you know free store pickup it's going to recognize that they use part of a trigger phrase that does exist here and pull and start initiate this topic to make sure that it's leveraged and used okay all right so once you have added those trigger phrases we're going to go ahead and hit save in the top right so make sure you save before we move on and then we're going to once the save is completed launch the authoring canvas so you'll click on go to authoring canvas right here once you have created those twitter phrases and hit save all right so if you're following along in the labs we're now on to task number three on page 20 yep page 20. and what we're going to do is we're going to uh first we want to add in some kind of message so whenever this whenever this topic is initiated we want to provide some message you'll find on page 20 in the labs that the message we're going to place in here is we provide different shipping options to help you get your order as fast as you want so i'm going to steal this you can take it from the lab if you want you can copy and paste it if you want i'm going to copy this from here rather than typing at all like i said you probably would be a good recommendation to have the labs open as you're going through this class and i'm going to paste that in here we provide different shipping options to pro to help you get your order as fast as you want so that's the first response to this trigger phrase we want to send them some kind of message just to recognize that they're engaged with the proper topic here then we're going to ask a question so the question we want to ask you is which shipping method do you want so we'll add another node here and we'll ask a question and the question we're going to ask is which shipping method do you want okay now remember we created this entity a few moments ago and this is now where we're going to leverage that entity because we want to provide a list of the options kind of like we had buttons before for the the store locations bellevue redmond seattle we want to have buttons for each of those options so we want to have an expedited shipping a standard shipping and in-store pickup kind of thing we want those as buttons so our users can pick those but if they type something different rather than just selecting the buttons which they can do i'm hoping that one of my synonyms will pick up what they type in and then redirect them to one of those three options anyways all right so for the identify section here this is where we're going to select our entity so we'll select and change it from multiple choice options to you're going to actually type and search up at the top here for shipping options okay so as you type it you'll find it'll kind of return itself back here but you're going to search for shipping options and then select that entity that we created okay and then if you want you can actually tell it that you want to select options for the users basically you want to give them these options as check boxes so if you if you choose this select options for users it will allow you to decide which of these options do you want to display so you could actually leverage one entity for multiple use cases so the idea here with the entity is i could select it and maybe that entity is leveraged across multiple topics and so i could just check certain list item values here if i want to be used within this question and then use the same entity in another question and then don't select all the options if i wanted to that's what this is for okay so in this one though i want to go ahead and use each of these so i'm going to go ahead and check each of these entity list item values to be leveraged as part of this question and you can see here it's going to show up as buttons for our users to select okay all right so those are going to show up for our users as buttons to select but i want to take the output of their selection and store it in a variable so i'm going to select the variable option right here and take the output of whatever they type in here as a variable value so let's go ahead and select the variable save response as and then in the top right we're going to rename this variable and we're going to rename it shipping method so come up to the top right rename this variable shipping method okay and then as usual i'll go ahead and recommend that you save pretty pretty frequently since we're already up in the top right let's go ahead and hit save here to make sure that this conversation tree has been saved for what we've done thus far all right so once we get a response we now need to determine how do we want to direct that response if are we going to respond differently based on the shipping option they select probably so in that case if we're going to respond differently then we need to create a condition so in this scenario we're going to go ahead and add a condition node right after our question so we'll add a condition after our question node that we have and we're going to actually have multiple paths that this condition can take so we'll start off with this first one for now but you can add multiple conditions here so you're going to need to add multiple eventually what you'll do to add multiple conditions you can go ahead and do one more here with me you're going to come up to where it says add node and then add another condition node and it basically will spit it out three ways instead of just the two ways we had a moment ago okay so that's what you'll do whenever you have the need to have multiple conditions and we will eventually we'll need to add a third one here as well but for the time being let's just go ahead and work with the expedited shipping and then the store pick up and then we'll work on we could we could almost assume that the last condition is all others or we may want to actually have a specific condition for our final option there our final option being standard shipping okay so under the conditions we're going to leverage the shipping method variable and we'll select the variable here called shipping method and we're going to say when the shipping method is equal to this time when it's equal to expedited shipping then we want to go down this path when the shipping method is equal to store pickup then we want to go down this path and then again you can choose whether or not it makes sense to add a another node here to handle the standard shipping i think it does make sense because you don't want to assume they're going to click the buttons they could actually type in a value different from what you have as buttons listed so in that scenario you would want to actually add a fourth option here so we're going to add one more condition okay and in this fourth condition are really the that's kind of third in order and this third condition we're going to add this as a shipping method and it's going to be standard shipping this fourth one that we have way over on the right hand side this is if they type in something that we're not able to interpret so if they type in uh you know 27 when we're asking them about shipping methods then we'll like the power virtual agents will direct them down to this fourth condition that's for all other conditions and that's where you might want to send them to a live agent or something like that okay all right in fact we're going to go ahead and do that so if they type in something other than these first three options i want to send them to and transfer them to a live agent so to transfer them to a live agent here let me go ahead and close my variable menu here so see a little better okay and by doing that they basically typed in something that our age our virtual agent is not able to interpret and so we want to send them to a live person okay and you can actually plug in a message here of what you want to send to the live person so it could give them a little context of why they're getting this this message all right good deal so for the remaining conditions we want to send some kind of a message to our users and you're definitely going to want to have your labs open for this but this the the pdf open for this one because we're going to do some copy and pasting here but we want a message after each one of these condition nodes so we're going to add in a message here we're going to add in a message here and we're going to add in a message here because we're going to have some different information to provide to them depending on what they uh select as far as the shipping method okay the thing you want to look at here when you're looking at the labs i'm going to draw drag them over here for a moment is um really between page 24 and 25 i guess it starts on page 25 you're going to copy this message and paste it into the message that's going to be sent to your users so for expedited shipping we want to send them this for store shipping we want to send them this for standard shipping we want to send them this and so you can kind of see what we're going to end up copying and pasting in here so for expedited shipping we'll paste this in you'll notice the formatting is not perfect immediately so you can actually fix it in here that's nice that it actually has some formatting capabilities built into the message nodes here so i can tell it that i want to send this back with these bullet points you can even bold the text so really draw their attention on certain areas of the text here i can bold this oop not paste let's do bold there we go uh so your you can enjoy expedited shipping at ten dollars bold that and you can bold anything else in here that you might think is relevant that you really want to draw their attention to okay so that's kind of baked in here you have the ability to do some formatting then for our store pickup we're going to copy and paste from again page 25 the message that's provided in the lab oh thank you matt i appreciate you putting that in the chat for us so we're bolding certain areas here just so it draws their attention to the key elements that they we really want them to see and then finally for standard shipping we'll go ahead and bring that one in as well i'm trying to copy and paste it myself here so i'll paste this in here and you can of course bold certain elements of the text so that way it stands out to your end users all right good deal so we've got those three messages that we're bringing back we're going to wrap it up wrap up this part of the conversation with a survey so depending on which thing they selected they got the information they needed and we're going to send them to a survey to make sure that they are happy with the results it is always recommended that you end with a survey so that way you can get those analytics returned back and you'll know whether or not you're getting your your actual eight your actual bot is performing the way it should perform so always end with a survey is unless you're transferring them to a live person ending it with a survey actually brings back some analytics for you to review later all right so i'm going to add in at the bottom here end the conversation and end with a survey okay and remember you don't have to do that multiple times you can actually connect all three of these messages to the same output and so just a reminder of how we did that before let me zoom in on this for you you'll hit the plus sign and you'll see this little pink dot here that pink dot you're going to drag that pink dot on top of the other dot and then it kind of merges all these together so you don't have to do it multiple times so same thing here with standard shipping i'll hit the little dot drag the pink dot on top of the end of conversation okay so that way it just saves you some time you don't have to constantly redo the same thing over and over and over here all right so let's test this out let's see how this bot's going to work before we do let's make sure we save it if we don't save this then all the work we've done won't actually show so make sure you go to the top right and go ahead and save the changes that we've done thus far all right and then we're going to launch the test your bot in the bottom left that we've done a couple times now all right so we'll launch the test to bot make sure that track between topics is turned on and we're going to initiate a conversation here so here's how we'll start this we're going to ask what are my shipping options oh and by the way you may want to show the variables so let's turn on the variables here let's say what are my shipping options now you'll see based on the topic that we've created we've now created two on our own we copied one previously but we've created two on our own and in this one it does bring back the different options it's leveraging the entity that we created it's giving us the different options that we can select from here we could select expedited shipping if we wanted here here go ahead and select that and it's going to return back the information for expedited shipping perfect looks great you can then tell whether or not you the question was answered let's go ahead and say yes and then it sends us to a survey so good interaction that you have here nice capabilities for being able to interact with the solution that we did here okay and at the whole time you could actually see the variable interaction that we had was displayed in the top there as well so let's try one more though let's go ahead and reset this conversation and let's again start with what are my shipping options okay and then what i'd like to do this time is kind of take a different path here and i want to show you how synonyms work so rather than selecting one of these buttons so we have these nice buttons here we could optionally select but let's say my user doesn't select those options instead they type in the word fast shipping they can do that they can type in rather than using it but when they type in fast shipping it's going to leverage the synonyms that we created on that entity and we're able to actually see it return back the same information for expedited shipping even though they didn't type that in so the synonyms here help to be able to define this properly all right let's reset one more time so go click the reset button on the top again this time we're going to ask the question totally different and i want to show you how that proactive slot filling works so we talked about proactive slot filling earlier in the slides a reminder of what proactive slot filtering does a slot slot fitting does is it's going to automatically take a value that my user has and plug it in so my user so my bot doesn't have to ask a question that my user already answered so if we were to ask the question do you have fast shipping i would expect my bot not to ask the question um about what kind of shipping you want i should be able to skip that part right if they've already told me they want fast shipping so let's let's test this out again so in this case we've cleared or we've reset our bot and we're going to ask the question this time do you have fast shipping and if this were to use that proactive slot filling then it would skip the question asking about what type of shipping they want and go straight to the information about expedited shipping and it did so if you look here we asked the question do you have fast shipping if you look at the topic tracking on the right hand side it actually skipped the question which shipping method do you want because we already answered that question with inside of our first interaction and it went straight down to provide the information for expedited shipping that's pretty great service right i didn't even have to ask additional questions power virtual agents here was smart enough to interpret what it was that i wanted to uh get to and jump straight to the most pertinent information here so really really cool uh capability here all right so we got about 20 minutes left of our day here and there is going to be some stuff left over so just a reminder we have pre-recorded this class with all of the completed class available to you so um we provided that matt if you don't mind providing the link to the um to the form to fill out so that they can actually have the full class uh that would be great i would appreciate that and what we're going to do to wrap up with the last 20 minutes is talk a little bit about some best practices and optimization of building your chat bot so we got enough time for that one thing i will note here before kind of getting away from our demo here is there is some piece that we're not going to have as much time for that i do want to at least highlight and it has to do with uh power automate so power automate and we'll talk about it through the slides at the very least power automate has some great interaction with inside of power virtual agents so even though we're not going to have a ton of time to look at it uh during our live session right now what i would like you to do i would love for you to do is after our live session ends i want you to do my lab 5 and lab six and make sure you do it with the login that we created for you that login that we created for you and if you remember in the very beginning of our live session we actually walked you through how to import a solution and how to um take that solution and and uh import the flows from that solution and we got the power app all set uh labs five and six really go deeper into that and they walk you through how you can leverage power automate flows so kind of get you a picture of what that looks like if i wanted to actually add in one of those flows which you are already set up to do you could leverage them by adding in a let's actually go down uh let's see here let's see right here there it is so i was looking for the little plus sign is what i was trying to find here where it says add node you'll see that there's this option here to call an action and this is really where power automated excels so calling an action allows you to pass in variables from your power virtual agent interaction into power automate and then really once you get to power automate that extends your capability far beyond what you can do just singularly inside of power virtual agents so if i click on call on action notice that i have several power automate flows available to me that i can interact with so i could leverage this return an item one i can leverage this get order info by email you can even create flows so if you hit if you click on the create a flow button it will launch power automate for you and it'll allow you to create a flow by launching it directly from withinside power virtual agents so it's a really powerful part of it again labs five and six did get deeper into that and i would very very much recommend you do that i actually go over at least one of these in the recordings as well so take a peek at those labs after we finish our live recording the way i would want to finish it if i got into one of those labs i wouldn't be able to finish it and it'd feel rushed and i don't want to rush you guys so take a peek at five and six later lab number nine is definitely optional uh what lab number nine is is it's more theory or discussion around topic design and in best practices and optimizations so i do want to spend the last bit of time that we have together at least talking about some optimizations that you can do because we have enough time for that we won't do the lab but i do recommend you look at lab9 later on okay so let's do this let's flip back over to our slides for a bit and what we're going to do is we're going to talk through the power automate integration a bit and then we're also going to talk through some optimization steps that you can do within power virtual agents as well all right so let's talk about if you've never used power automate what it it is we've talked briefly about power automate earlier in our session about it being a workflow automation tool and so the purpose of this workflow automation tool is to make it so that remedial tasks or tasks that are are really best suited for an automation rather than someone manually doing it power automate gives you the ability to automate those types of tasks it's a great tool it's very widely used it has integrations with power apps it has integrations with sharepoint it has integrations with power bi it really has integrations into hundreds of different data sources even beyond just those couple tools i just mentioned so you have a lot of different integrations that are available to you when you're working within leveraging power automate so it's a very very cool tool and we by the way at pragmatic works have um several classes on power automate we have an introduction to power automate class that we've just recently updated and we have an advanced power automate course that we will have updated by the beginning of next week actually so we even have some classes that cover the entire power platform and how all these items work together now for power automate if it's new to you it's really designed for this purpose of connecting to data sources uh creating automations or creating flows and then you can create or edit those flows either from your web browser or you can do it uh additionally from your mobile device so you can actually work on creating power automate flows directly from your mobile device uh very easily there's a power automate application that allows you to create and edit flows you can even build in things like approvals so if i want to before before integrating or before adding certain amounts of rows into a data source or before i add a record into a data set i can have an approval process that says yes or no that's that's okay to do and i can have that approval process send to groups of users or one user that that actually approves the the inserting of that individual road that comes in or or whatever you want you can actually make approvals not necessarily data bound but you can make it bound by other elements as well all right so power automates really powerful for for each of these different kind of integrations and it has hundreds of templates that are pre-built pre-defined for you that allow you to connect with and use different scenarios that other people have come up with so if you're not really sure how power automate can work for you yet take a look at some of the templates that are available with inside power automate and it'll give you a good grasp of what you can do there's hundreds of them um probably bordering on thousands of them now at this point that you can leverage and use and they're constantly adding in new data connectors to make it so that you can do more with power automate so we've talked about the data connectors there's there's tons of them available but even if there's a data connection that you want that's not listed you can build your own custom data connectors you can connect to data that's in the cloud you can connect to data that's on premises so if you have data that's not in the cloud yet that's okay you can actually still use that data with inside power automate by leveraging something called the data gateway and the purpose of the data gateway is to connect or wire up your data that's not in the cloud into a cloud service like power automate okay so if you ever needed to kind of interconnect data that's not in the cloud to the cloud power uh uh the the data gateway is the way to do that and that same data gateway is used in other power platform tools like power apps and power bi as well okay all right so the key thing here to know is that the power platform as a whole integrates really smoothly together the data connectors that you have in power automate carry over to power apps as well as power virtual agents because you have that ability to wire in power automate into your power virtual agents you really have a lot of great capability to extend what you can do and that's that's really the whole purpose of this power automate integration into power virtual agents is to extend the capability of what power virtual agents can do and to make it more actionable to be able to get something from your users that they need and not only be able to give them a yes or no answer or give them a response but also act on it and actually do something with it for instance you can actually make it so that if i get a complaint about a product that i send a teams message to someone on my product team so that they immediately see that information about what the complaints are that are being sent to our users so some really interesting integration that you have there all right so the integration we've talked about with our chat bots are huge you can have location based services as well so power automate gives you the ability to actually determine if someone is in a particular location it's able to spot what that where that person is and give them information that's specific to their location you can do things like two factor authentications built-in you can also do things like make appointments for users and actually send those appointments directly to a calendar and you can even integrate in with the ai capabilities that power automate has so if you want to scan like a picture of a receipt and pull out the data from that picture you can do that power virtual agent's extremely powerful and that's why i recommend of course following up with a more in-depth class on power automate specifically so that way you can get a little deeper into it all right so we're gonna hop over lab number two talk a little bit more about some other next steps getting into some more advanced topics here as we start to wrap up in our last 10 minutes authentication is definitely a more advanced topic but the idea of authentication here is giving your chat bot the ability to authenticate to third parties and so we're mainly just going to talk about this i'll hop over and show you where you can learn more about it but i do want to at least tell you how you can set something like that up so i gave the example earlier today of maybe a chat bot that's been integrated into microsoft teams but within that chat bot that's in microsoft teams i wanted to be able to connect into and authenticate to salesforce.com so you can actually do that you can set up an authentication with inside your chat bot so it prompts the user to put in their username and password it authenticates off to that third party and then returns back information from that third parties api so some really cool capabilities to authenticate to those third-party uh apis and then provide it all within side that's the chat bot your user never has to leave the chat bot to be able to authenticate to those third parties all right so i think we've really and what i just said i basically talked through most of this already but it allows you with inside of your conversation tree to actually have steps where you can inject the authentication in this you can add this basically call an action very similar to what we did with power automate you can also call an action to an authentication to another third party and then again this gives you the ability to leverage those api capabilities of that third party it really one key thing here is it does it here to all oauth 2 standard capabilities so if you're familiar with working with oauth 2 then it kind of sticks in that same kind of wheelhouse there and then it also can leverage your azure active directory as well so it has the ability to tie into that and make authentication to these third parties a little easier all right so what i'd like to show you very briefly before we move off to handing off to third parties or handing off to agents is how and where you would need to go to learn more about authentication all right so if you're interested in setting up authentication to third parties that is something that would be done under the manage section on the left hand side so if you look over on the left hand side you'll find manage with inside power virtual agents and then you'll also find authentication okay so if i select authentication this is where you can see i'm probably not going to spend a ton of time on because there's a lot of data points to fill in but if you're really interested in learning how to do this authentication to third parties i would recommend learning up sorry reading up on this section here it says learn more about configuring authentication and this will has a lot of details about what you would plug into each one of these different points within side the authentication configuration section here so this is where you'll plug in things like your tokens to to your third-party apis your client ids this is likely i mentioned that power virtual agents is all about allowing your citizen developer or your subject matter expert to create these conversations and this probably is not for the citizen developer this is where you're starting to get into uh how do i set up authentication of third parties that's more for your developer to come in and start to help you with okay so you wouldn't necessarily as a citizen developer or as a subject matter expert on how your business runs be plugging in things like authentication to a secret key and token authentication that sort of thing but i do think it's important that you know where this is so you know how that authentication can be set up once the authentication is set up here's how you would use it with inside of a topic so let's go ahead and look at a topic here for a moment you do not need to follow me on this guys just watch but with inside of a topic in the same place that we added in the powerapps flow integration here it goes in the same place that we added in the action to go to a flow you would also see a step here for authenticating as well now i haven't set up an authentication so when this does pop up you're not going to see an option to authenticate to your third party but if you had set up authentication to a third party you would see another section in here that's specific for authentication okay so i just want to at least show you where that integration would occur if you were doing it within side of power virtual agents okay let's hop back over here yeah nobody believes this is live but you get a shout out to brian lee all right nobody believes i'm live wow okay so a shout out to brian lee is that what you said all right this is real this is this is real life this is uh thank you brian lee for attending hopefully he's actually here and not just a shout out for somebody else all right so um the last piece here that we're going to do our not last piece but the last few pieces here we're going to talk about is handing off to a support agent so power virtual agents does have the ability to hand off to a live person and that's what the support agents piece is all about here it works best when you're integrating in with dynamics so if you're using dynamics dynamics uses a feature called omni channel that's kind of their their chat integration their uh the service hub kind of capabilities when you integrate in with dynamics it's microsoft so obviously they make that integration really smooth and easy if you're not using microsoft and you're not using dynamics for a live chat to talk to a live person then there are uh capabilities and integrations for those other platforms they just don't make it as smooth and as easy so for for our company for example we use a different kind of live chat tool so we would have to integrate using another method and i'll show you where that's at as well so this section is going to talk about omnichannel a little bit again omnichannel is a good tool with inside dynamics 365 for being able to integrate with a live in an in-person per uh customer service representative and so this just continues to talk about omni channel a little bit i'm not going to go super deep in the omni channel that's definitely a little bit of a tangent topic here so let me show you where you would set up integration with a live person so if you wanted to transfer this to a live person there is a little bit of setup you need to do first you'll find that setup up in the top right hand corner so if you click on the settings icon here you'll see there's an option here called transfer to agent and you can just watch this part don't actually click with me on this i'm just showing you this because we're down to five minutes or less here so just watch but if you click on transfer to agent this is where you would wire up whether or not you're using dynamics omni channel which is the dynamics version of kind of this this live live handoff to a live human agent or if you're bringing your own engagement hub your own service hub some companies call it you would select this to be able to configure the integration with your own live chat that you've chosen to use so this is where you would go to set up the configuration and wire it up but once you have it wired up you'll then use things like the transfer to agent option here and then you'll also use it when it comes to the escalation node so to show you where that's at there is a system topic in here called escalation this escalation node has a bunch of different trigger topics built into it to be able to get you to a live person so get your customer to talk to a live person if you ever hit that escalation node then it's going to transfer you to whatever your live chat feature is what your live chat tool is okay so that's kind of the idea of transferring to a live person the way i'd like to end with the last few minutes we have here is to talk about some best practices okay and so i want to do that in a couple ways um there is a section in here there's a lot of slides in here that we unfortunately just don't have time to talk about all the slides but what they do discuss in these slides is some best practices and i think it'd be helpful to go over that with our last few minutes here so let's talk about some guidelines to trigger phrases because the biggest obstacle that you're going to have is defining proper trigger phrases that actually get hit because you maybe in the beginning don't know what your users are actually going to type into your live chat or to your chat bot so defining trigger phrases and defining proper trigger phases is really important so there's some good guidelines in the deck in the power powerpoint deck i'd recommend you take a peek at but i do want to go over some of them with you here with the last few minutes one is you want to make sure that you have very clearly scoped trigger phrases your trigger phrases should not veer into other topics is basically what i'm trying to say you shouldn't have a trigger phrase that could really apply to multiple topics if you do that could cause some confusion with inside power virtual agents on which topic they should direct your customers to so be very concise with the trigger phrases that you have as i mentioned before you should have roughly five to ten trigger phrases that you've defined as part of your solution and each of those trigger phrases should be semantically different in some way they shouldn't basically be just rephrasing one article uh what one one small word in there they should be somewhat different between each of the trigger phrases to kick off and be effective and you should use words that your customers use right you don't you don't have even though this is a automated system you don't have to make it talk like a robot and so as you send messages to your users as you use trigger phrases make them actually interact with your customers like they would want to be interacted with and then i mentioned also kind of avoid highly ambiguous trigger phrases avoid ones that can be confused across multiple topics so let's take an example let's say we're looking at our return an item topic that we created and a couple key things to point out here you really want to make sure that your description has a goal what's the purpose of your topic and make that theory clear and then you also like we said have five to ten trigger phrases built in make them short you don't wanna have trigger phrases that are blonde and ten words they should be fairly short and concise and then you also wanna make sure that those trigger phrases are like i said semantically different they shouldn't be basically the same thing just with one word different they should be fairly significantly different you also should avoid things like articles or adding articles doesn't really help essentially here you might add in pluralization adding and pluralization doesn't really help so even if you do make these changes like add in products versus just product that's not really making a huge difference you can do it if it's just not really helping anything to do it so you're kind of wasting your time and then finally uh we talked about avoiding ambiguous phrases the reason for that and we'll kind of wrap up on this is you you don't want power virtual agents to be confused on which topic should be hit so in the scenario you see on the screen here i have two topics one called return an item one called cancel and order they're both using a trigger phrase that uses the phrase cancel or cancel order and so it's a little confused on how it should actually be able to handle that so there's definitely a lot of good information here i would recommend kind of taking a peek at the deck a little bit more there's a lot of slides in there a lot of good information but for today if you have some time to continue with the class i would recommend that you keep going forward with labs five and six those were ones that we didn't get to but they're pretty good in showing you how you can integrate in power automate into power virtual agents uh lab number nine which is later on also goes through some best practices and then if i can give you one tip here to kind of wrap up on i definitely recommend that you take your time before you jump into the technology whiteboard your thoughts out or what my my actual preference is to use sticky notes so i would get a sticky note and list out my topics on a sticky note so i have a topic for each sticky note and then underneath those topics start to think through different trigger phrases that i would have and then use sticky notes below that to even have things like um what are the different things that i want to have i want to have a question that asks how does your lawn look i want to have a ques a message that i send back to them about i'm sorry to hear that the plan things out ahead of time so use use some time ahead of time to plan before you just jump into the technology and that tends to make things a lot more successful if you can plan ahead you can generally make the technology do what you want if you jump straight into the technology you oftentimes will feel bound by what the what you perceive the technology can do but start planning first and then jump into this later a couple things to follow up with as well i definitely recommend i'll bring up once more that you sign up for our trial of our on-demand learning which has uh even more of this class that you've been sitting in today recorded already on there for free so if you sign up for the trial at the events page here it will send you an email with your login information later you may want to check your junk or your spam to make sure you get it if you do not get that information about your trial you can email me and i will give you my information right here oh it's in the chat window brian put it in the chat window already trials in the chat window perfect so that's it for today hopefully you guys enjoyed this we're going to be doing more of these sessions coming up starting in october we're going to be doing a session on azure data services and so look for that to come soon we're going to be doing kind of a three hour overview of azure data services and that's going to be really focused on you know i'm just getting started with azure there is a lot that goes into azure like if you were to have someone ask the question what's azure that's like saying what's microsoft it's it's such a big loaded question that we're going to spend our next learn with the nerds session in october talking about how you can get that understanding of all the data services within azure there's far more than just data services in azure but we're gonna be focused on that and then in december we're gonna be we're also looking at doing a session on dax dax is the query language for power bi so if you're interested in learning more about dax we'll be doing more sessions and every other month essentially and they'll all be free so we look forward to seeing you there soon and thank you so much for joining me today hope you enjoyed the class talk to you soon thanks you
Info
Channel: Pragmatic Works
Views: 87,836
Rating: undefined out of 5
Keywords: bots, chatbots, how to build a chatbot, building a chatbot, power virtual agents, microsoft, intro to chatbot, pragmatic works, devin knight, chatbot demo, beginner to chatbot, intelligence, power virtual agents demo, power virtual agents tutorial, chatbot tutorial, intelligent bots, conversational bots
Id: nYxf8ndIBE0
Channel Id: undefined
Length: 183min 31sec (11011 seconds)
Published: Thu Aug 27 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.