0:00
Welcome to my session
0:04
So I'm pretty excited to be part of this C-Shop Power Platform Virtual Conference
0:12
So I don't want to sound repetitive, but it's always an honor to have the chance to spread my knowledge about Power Platform
0:19
So it's been hard, a tough time because of the pandemic. so working from home I know that is something that could be tough yes indeed but it's helping
0:33
me to have enough time to invest not only developing with a power platform but also
0:40
to invest time participating in this kind of events so thank you Simon so thank you everyone
0:46
who made that possible you really made an amazing job putting a lot of speakers worldwide in a
0:52
simpler way and arranging an amazing schedule. So thank you again. What I'm going to talk about
0:59
today is about power virtualization, but not in no-depth or a simple low-code perspective. I'm
1:09
going to go deeper and I'm going to show you how the pro-depths are trying to handle the reality
1:17
of the business cases and how the no-dep and the pro-dep profiles are meeting together
1:23
using the Power Virtual Agents. In this case, I'm going to talk about bot framework
1:28
I'm going to talk about skills. But let me first quick pass through my introduction because you guys did an amazing work
1:38
I've never had an introduction like this. So I think there is nothing left to introduce from myself
1:43
Just follow me on social media. I also have a blog, unfortunately, in Spanish
1:49
Of course, there is Bing and Google to use as a translator
1:54
And also, I'm a member of the Women for Technical Talks initiative
1:58
We try to put women from around the world, Spanish-speaking women from around the world
2:05
and support them to participate in events like this as speakers, to do the first steps in the speaker world
2:14
So I really love this initiative. I'm really having so much fun. And the second initiative, you can also follow us in social media, is the Power Quiz. It is in Spanish as well. And what we do is we hold a monthly competition quiz where people around the world, Spanish-speaking people around the world, is competing to each other to win Amazon vouchers
2:41
So it is also amazing. I'm having so much fun and I'm also one of the co-hosts
2:47
So going straight to the topic itself that I'm going to introduce to you today
2:54
I know that these kind of sessions sometimes could get a bit boring
3:00
So I always try to do something different. And I want to talk to you, as I say before, I'm going to introduce a theoretical part
3:06
So the half part of my session will be pure theoretical because it is neat
3:11
So I need to introduce to you what is a skill, how we develop a skill, but also because there are some prerequisites that we will need to fulfill
3:22
And also because there are some requirements that we need to meet
3:26
So that's why I always try to do something theoretical at the beginning and then we will move to something practical
3:31
And because the theoretical part could be a bit boring, I always try to present it in a more dynamic way
3:38
So in this case, I'm going to introduce it like a video game. So I'm going to introduce you the main character of our video game
3:46
It is the Power Virtual Agent chatbot. What is a Power Virtual Agent chatbot
3:51
It is a character on the Power Platform video game platform that is capable to interact with
3:58
people as a real agent, but in fact, it is an automated agent
4:02
So it is capable to maintain conversations with our employees, with our customers
4:09
But in fact, there is nobody behind. It is an artificial intelligence chatbot who is trying to handle the conversation and trying to solve the main need itself
4:21
So this main character is capable of many things, but it's provided with two main and more important weapons
4:29
So these weapons are integration with Microsoft Teams and all the manual channels
4:35
So it means that with just a click, we can provide and we can deploy our power virtualization
4:41
whenever we need. So we can deploy it on Teams, but we can also have our power virtualization integrated in
4:48
our website, omni-channel or whatever we will need. So the second weapon that our main character has is Power Automate
4:57
Power Automate is one of the childs of the Power Platform. I know that there were other sessions about it. And we use Power Automate. So we merge and we mix our powers to provide the ability to the Power Virtual Asian to automate actions on behind, on the background
5:17
So we are able to automate actions like sending emails, accessing information, starting approvals
5:25
But we are also capable to access information across our organization. So whatever this information is and the Power Virtual Agent is allowed to access, we access this information using the Power Automate
5:40
However, this is not enough, because sometimes we'll face some special levels in our video game
5:47
that our Power Virtual Agent won't be able to solve by itself
5:52
So on those secret levels, advanced levels, however you would like to call them
5:59
we will need some extra power. And for this, Microsoft provides to us the ability to connect our Power Virtual Agent
6:08
with the real engine behind that is the bot framework. Because as always in the Power Platform
6:15
there is always more powerful on behind. And in this case, in the case of the Power Virtual Asian
6:21
we have bot framework that is the chatbot developing framework that we have in Asia
6:28
So that's what Microsoft is providing to us, a way that we can enhance, improve our character
6:36
providing to him, I will say, improved weapons or even more powerful weapons
6:43
which could be the situations where we won't have enough with Power Automate
6:49
and we will need to cover these scenarios with bot framework. For example, if we need to book a flight and we are providing the availability
6:57
to book flights via our power ventilation, we will need to call an API
7:03
And to call an API is a premium connector within the Power Automate
7:07
And perhaps this is not something that we are meeting in our business case scenario
7:14
We will need a skill. I'm going to introduce the skills of both framework to do that
7:20
Another situation could be a legacy system where we don't have access
7:25
And through a gateway we will need that So we can use something developed in Asia in order to achieve that So how does it work And a skill is a small bot of bot framework that is capable to do actions
7:40
So it is a conversation flow that it has normally a main goal, a main objective
7:47
So we just use this skill in order to meet the requirement that we will need
7:52
So this skill is developed by a pro-dep. Why? Because this is bot framework. And even there is a way and I'm going to show to you an enhanced way to don't have the so you don't have or you don't need coding skills
8:11
It is an enhanced way to do that. But the ability that is giving Microsoft is to develop a black box that is stored in Asia
8:21
And in any case, our no-depth profiles, so our citizen developers can integrate these black boxes in order to improve the character, our Power Virtual Asian
8:34
So almost all of the bot framework skills can be integrated with Power Virtual Asians
8:40
There are some restrictions, but there are quite just a few. Every time that we connect a skill with Power Virtual Asian, we are just connecting as an action
8:57
And this is a recommendation. Even a skill could be a whole topic itself
9:02
I recommend to keep it as simple as possible. So if you need a functionality that you can achieve via power platform, then develop this black box, but keep this black box as simple as possible. Otherwise, you are losing control of the whole flow conversation, and the citizen developer will not have the clear perception of what is happening on this black box
9:28
Also, because we have some scenarios that an API management could be solved or because there are some flows that we are developing behind that they are capable enough to solve our scenarios
9:47
Keep in mind that from time to time, we are having too many flows on our system
9:53
And perhaps these flows, yeah, they are capable to solve our problems
9:58
So they meet the requirements. But these flows are quite complex to maintain
10:02
So please move that to a skill. A skill will be better and also will be more understandable to be maintained
10:11
And also we isolate the developing stuff. than the real designing. So we are isolating what is the developing phase
10:22
in our chatbot and the design phase in our chatbot. Also, because there's something amazing
10:29
that you can achieve with the skills that we are still not capable to do with Power Virtualization
10:34
is that we can send images, videos, adaptive cards. And this is something that will still take time
10:42
with Power Virtualization. So go ahead and try to create a skills with bot framework and to integrate that
10:50
So what I'm going to show you right now is just a few limitations that we'll have
10:55
I will explain to you. I'm not going to explain how a skill is developed
11:00
I think that it is something pure of bot framework. So this is not a bot framework session
11:06
What I'm going to show you is a demo skill that Microsoft has published on the skill GitHub
11:15
I'm going to show you how to integrate it with Power Virtual Asian because the documentation is good from Microsoft, but it's not good enough
11:25
So there are quite things that you must take into account, and I will be happy to explain it to you
11:31
And honestly, it would have been great if someone previously could solve me and could have explained to me
11:40
Because you will see that there are few things, but these things are the key
11:46
And I'm going to show you that. So I'm going to show you how to deploy a skill on Asia and how to integrate it with Power Virtual Asia
11:54
And I'm going to introduce you to the Bot Framework Composer. The Bot Framework Composer is the middle term between ProDeb and NodeDeb
12:01
So I'm going to introduce you a new tool that for sure will be your next best friend
12:07
Okay, let's go ahead and I continue with this skills capability that we have in Power Virtual Asian
12:15
And this skills capability have some requirements or pre-requirements that we must meet
12:24
Sorry. So the first one, of course, I need an Asia subscription. It sounds trivial, but it doesn't
12:30
So many of our customers doesn't have Azure subscription because they work purely in the Microsoft modern workplace scenarios in the tenant
12:40
So take into account that if you want to develop the skill, you must need an Azure subscription
12:45
Second, that you will need both framework and SDK 4.7 minimum. I know that we have even higher, but minimum 4.7
12:54
and important, the skill cannot have input arrays as input or output. Why this is a big
13:04
thing that you must be aware of? Because it is so typical in the skills to have output
13:11
to have arrays as outputs. When we just imagine, just figure out when we do an API call and we
13:19
receive a response, a JSON. And this JSON is an array of objects that could be weather predictions
13:28
flights, available flights, available receipts, whatever. It is always an array. So be aware of
13:34
that we cannot have as an input and output of our skill, we can have arrays. So the next thing is
13:42
that the manifest version, the proved manifest version that is working is the 2.0. I know that
13:48
we already have the 2.1. But you might go into an errors if you are working with a 2.1, because
13:55
there are some options that poor virtual agent is still not happy to deal with. So I don't recommend
14:00
you to try it. Keep it simple, 2.0. And the last thing, the bot composer skills are good. So I'm
14:10
going to show you that there is a way to create skills using the bot composer. However, they are
14:16
not 100% support. And that's a big sign in front of the integration. What does it mean? I can
14:26
develop Q&As. I can develop Luis recognizing using my bot framework skills via Visual Studio. Okay
14:36
so coding, I can do it. I can publish it in Visual in Asia, sorry. And this will, with no doubt
14:43
will work in Power Virtualization. So perfect. The problem is that if you do that using the
14:50
Bot Framework Composer that this is the middle term as I explained to you I going to show it to you between the ProDep and the NoDep you will run into some limitations And these are the Q and the LUIS recognizer
15:06
and other recognizers that are provided within the Composer. Why? I have no clue, honestly, because it does not make sense
15:15
But I don't know, somehow the Composer is deploying the services that the Power Virtualization is still not capable to handle
15:22
So if you want to go with Luis or you want to go with Q&A, just keep it in the coding way
15:30
So I will show it to you, Visual Studio. If not, feel free to go ahead with PodComposa
15:36
And something important before to go to action and show to you how to do it, I really want to thank Arafat Tensin
15:47
He is an AI MVP, and he was someone who one year ago when Microsoft announced the availability of skills for Power Virtual Asian, he was one of the MVPs who raised the hand and said, okay, that's perfect, but you write down no documentation about it
16:07
So he struggled with everything and he tried to help the people via forums, via blog, to deal with all of the problems that you will see you could face with the manifest
16:19
So thank you, Rafat. Without you, I think that the bot developers couldn't be ready right now to work with Power Virtual Agents
16:28
So thank you so much. Okay, so I'm going to move to my visual studio to show you the first case
16:36
And for that, I'm going to stop sharing my screen. I'm going to stop the presentation
16:43
I'm going to open that. And now, yes, I'm going to share
16:50
I'm going to move you here. Otherwise, I can't see you. Perfect
16:55
And now what you are seeing is my Visual Studio. So first approach
17:00
I am a bot framework developer. I have developing skill. In this case, it is a skill that recommends to me playlists within Spotify
17:12
Perfect. So this skill, it is also available on the Microsoft GitHub
17:19
It is quite different, but a copy of this skill or a version of this skill is available
17:26
So please feel free to go to GitHub, to go to the Bot Framework Components library that
17:32
Microsoft has published in GitHub. And here you will find a lot of skills code using C Sharp and try to download these skills and try to publish them to Asia
17:45
This is one of the recommendations that I can give you if you are not familiar enough with bot framework
17:52
OK, so one thing that I need to take into account is there are two important files that I need to deal with
18:01
One is the manifest. And the second is the app settings. These two files, just look for them
18:09
These will be the important ones. So I'm going to move to Asia
18:14
And I'm going to show you how a typical, how will be the typical journey to publish this skill
18:24
So I'm going to create a resource group. I already have some resource groups, right
18:28
Yes. So I'm going to create a resource group or reuse one
18:33
So I can create just one. In this case, I'm going to reuse it
18:38
And within this resource, what I will need to create is an app web bot
18:46
Let me see if I can create it. If not, I will directly create a resource
18:57
Perfect. There are two different resources in terms of bot framework. We have the web app bot and we have the bot channel registration
19:07
which are the difference between these two. The web app bot is to host the hold bot configuration and files and everything
19:20
So once you publish the bot there, you can access the bot outside from any portal
19:26
or any access that you might have. the bot channel's registration is something different
19:31
So you have your own bot hosted anywhere, even in your computer
19:37
And then what you are doing is just a registration, a public registration via Asia
19:43
in order to have this bot available to be connected with any service that you might have
19:50
So be aware of that these two different apps are different, of course, and be aware which one you will need
19:58
So in this case, I'm going to create a web app bot
20:01
Let's call it C-sharp. Bot power, I don't know
20:11
So I'm going to create it within my subscription. And I'm going to choose one of the resource groups
20:16
In this case, whatever, I'm going to choose the bots apps. And yes, it will deploy to me a simple Echo bot
20:25
whatever I'm going to republish my bot. So I don't care. Okay, perfect. One car premium messages
20:34
application insights, I really don't need them. And it will automatically create my app and my
20:40
password. Perfect. So what we are doing right now is providing an bot resource, it will take a while
20:46
So once we have created, we will move first of all, we need the URL where this resource is published, and we will need the app
20:59
This is something that we need to configure the manifest. And after that, I will need the app ID again
21:05
I will need the secret app ID. And I will need something important in this case that will be the Power Virtual Asian ID
21:13
So let me check if that has been created
21:23
I don't know within which one I have created. I think bots one. It will take a while, right
21:29
Yes. So let's wait. Just likely it won't take so long. Perfect
21:39
Thank you. So once I have this resource, within this resource, what I have is the configuration
21:46
Here I have the app ID and something important is this URL
21:52
This URL, you must put it on your manifest. So I come back here
21:58
I select within the endpoint, I select the API messages URL and I will need the app ID
22:08
For do that, I go to manage because this is something that you will need manually to do
22:14
The first thing is because I can get the secret ID, I want to create a new one
22:19
So I copy that. I come back to my Visual Studio. I go to the app settings And what it says secret or password app I set that one And the next thing
22:35
I'm going to do is moving to branding. Something that you must take into account is that when you
22:40
are publishing a bot within an Azure resource, you must fulfill this. Otherwise, it will work
22:49
but Power Builder Relation won't be capable to call your bot. So here, what you will need, you will need the URL of your bot
22:59
So which is the URL? That is the URL where my bot is stored
23:06
So I'm going to put that. And here you can just write down any website that it will, that could meet the requirements
23:20
So I'm going to save that. And the last thing, last but not least, of course, I'm going to overview and I'm going to copy the application ID
23:30
Once I copy the application ID, I need to replace it into two sites
23:35
One here and the second one on the app settings. Perfect. And I just save it
23:44
Once I want to publish, I go back here. And with the right click, I go to publish
23:49
I apologize because perhaps this is shown. Yeah, it is shown in Spanish, but I'm going to translate every step
23:56
So I go, I click to initiate. I select Asia. I click to next
24:01
And then I select Asia app servers. I click to next. I select my subscription
24:07
I select the group of resources. I don't remember here. I select the bot resource, and then I select where I know that my bot is going to be stored
24:19
and where I'm linking and which resource I'm linking my skill with
24:23
Once I finish, I can just click publish. I'm not going to publish because it takes quite a long
24:29
It is deploying all the packages. So that's not the important part here
24:33
because this won't work without a second step. Once we have configured our Azure resource
24:42
we must be aware of that now this bot is published in Asia
24:48
Perfect. It will work. But we need somehow to link it with Power Virtual Asian
24:54
So now I'm going to the Power Virtual Asian that I have created
24:58
This is a simple test bot. I even didn't change, right? Yes, I even didn't change
25:03
any of the topics. And I move to skills. Once I move to skills, I need to copy the ID of the bot
25:12
This is something important because otherwise this won't work. Even if you have here an asterisk saying
25:19
yeah, everyone can call this bot and everyone can use it, you must specify the power ritualization
25:25
Otherwise, a power ritualization won't recognize this app as allowed. So take it into account
25:31
And the second thing that we will need to do is when we add the skill, and this is something that I'm going to show you apart
25:40
So in the second scenario, I will need to provide the skill manifest
25:45
The skill manifest normally, if you are coding, so if you are working with bot framework directly, you will find it if you go here, you just copy the URL
25:57
and this will be manifest in singular because by default, the structure of what framework it is in singular
26:10
And then, so the manifest that you would like to use, the manifest 1.0, 1.1 or 2.1 if you have it
26:17
So just the manifest, I don't know, the name that you might have
26:21
JSON and then boom, next. And that's all if you're working from Visual Studio
26:27
Of course, every change that you might do here, remember always to publish it with the lower color
26:35
Otherwise, the Power Virtual Agent won't recognize the bot as allowed. So that's one approach, which are the pros and the contours
26:46
Pros, you have more control of everything that is happening. You have more control of the configuration itself
26:52
Of course, the contrast, you must know how to develop in bot framework
26:58
And that is something that I understand that someone that is moving through the journey from a no-dep and is converting itself or herself or himself, sorry, to a pro-dep, it is an estupa to must start learning bot framework
27:17
For that journey and for that approach, Microsoft start with the Bot Composer, second scenario that I'm going to show you
27:25
So I close everything and I open my Bot Framework Composer. What is Bot Framework Composer
27:33
If you are familiar with Power Automate, if you are familiar with Power Virtualization
27:42
So if you're familiar with the flow structure itself, so with the flow chart, if you have the feeling that you can deal with most all of the expressions of Power Automate, if you have the feeling that even if you are not a pro-deb, you feel yourself comfortable with the whole low code, I will say, that there isn't a Power Platform
28:08
I really encourage you to try out Bot Framework Composer. You just download it from Microsoft website
28:16
It's completely free. You don't need a license at all till you want to publish the bot
28:22
So what I'm going to show you right now is from zero to the end
28:26
how we create a skill with Bot Framework Composer and how we publish it in Power Virtual Asian
28:32
One scenario that I'm going to cover is something that I already introduced to you
28:36
We are not allowed with power virtualization to send to our end user adaptive cards
28:44
And I think that this is a must nowadays because, I mean, if you want to interact, if you want
28:52
to provide an enhanced experience for your user, an adaptive card is a must go
29:00
So I think that this is a scenario that, again, even if you have no idea of artificial intelligence
29:06
you never deal with Louise, I will recommend, I will encourage you to start with this scenario
29:13
So no words. I will go ahead. I know that I really like to explain everything. Sorry
29:20
There are times that I don't know how to find my words and there are times that I'm
29:24
explaining myself too much. I know. I want to create a new bot. And in this case
29:30
I'm going to create it from a template, from the responding with cards template
29:35
Once I create it, this will be my skill that will show adaptive cards
29:43
This is how my skill will look like. And this skill, as a coding skill could be
29:49
will be stored on my computer. Okay? So I click okay. And one thing that is providing Composer to us
29:58
is an already predefined structure of our skill. So what is doing this skill? What is doing is printing adaptive cars
30:07
So next thing, because I think I'm running in time for the first time in my life
30:13
I'm not wasting time. One thing I want to show you, okay, I'm developing a bot
30:21
I'm using the Bot Framework Composer because I feel confident enough, but I don't want to publish
30:28
the bot till I can test it. And for that, we have the bot framework emulator. So I think that there
30:37
are only one emulator stored in this computer. Yeah. So I have the bot framework emulator
30:43
where I can test my bot from the composer, even from Visual Studio. I didn't test it, but
30:49
this will work again. And I can directly start the bot. And then I will show you what this skill does
30:56
So I click to starting bot. It takes a while to deploy the bot on the emulator
31:07
And this is a good way if you are not confident enough if the whole scenario is working
31:13
So please first test it and then deploy it. It's asking me for permission
31:18
I'm going to load it. And it says that it's running. No, you don't have to install any update
31:26
and I'm going to please test in emulator now. Now, again. So what I'm doing right now is testing the skill itself
31:38
So the skill, it has a welcome message. So once I post any message that the user is posting
31:45
the skill has already a list of options that the user can choose within
31:51
So I can choose which kind of adaptive car I want to see
31:55
So anytime I post a message, it shows up the options again
32:02
And what it's doing is simple showing the multiple, sorry, adaptive cars options that we have
32:11
Simple skill, honestly. Okay, I'm going to stop testing and stop the bot itself
32:20
Otherwise, if you don't stop it, you can publish it, take it into account
32:24
And once I publish it, I'm going to do some arrangements. Why
32:29
And that's something that you must take into account if it's your first experience with bot framework
32:36
When you work with Power Automate, you call the flow. And once the flow has finished, the action finished
32:43
and the next step of the flow chart of the power virtualization continues
32:48
If you're working with a skill from bot framework, this skill could take as long as you want
32:58
So this skill could have as many sub-actions, multiple branches, and even sub-topics as you want
33:07
till you decide that the skill stops executing. And this is something that, as you saw, this skill is just running all the time
33:18
So every time I push something, the scale is showing up the options again
33:22
I have to choose an option, then it's showing up the options again. So somehow I want to provide the availability to the user to stop it
33:31
And it will be a good chance to show you that this is easier as you may expect
33:37
So these are the options that we have. We can see all the cards
33:41
We can see video cards, login adaptive cards. And I'm going to show another option that is just finish
33:50
This option will allow the user to stop this non-ending looping. And I'm going to inform to the looping itself, to the switch options itself, that there is a new option
34:06
This is the finish option. And once I introduce this new option, let me see if it has..
34:17
I didn't, right? Yes. Exactly. And once I introduce this new option, a new branch is created
34:27
And what I'm going to do is whenever the user selects the option finish, just stop the skill
34:36
Stop the skill and come back to whatever or whoever called you
34:41
In this case, the power virtual agent. And that is something that please be aware of
34:46
If you are creating skills, the music skill had the same problem
34:51
So there is an end dialogue. Always when you develop a skill, you must have an end dialogue
34:57
Otherwise, it will execute as a non-ending loop. Okay, so we have our configuration
35:03
And next thing I'm going to do is to publish. To publish I could publish it in a really created Asia as I did before but I going to show you how to create an Asia resource from here from the Composer so you don have to do it from the Azure dashboard
35:21
So I don't know, I'm going to call it Power Tenant Profile
35:25
I don't have so much imagination, honestly. I'm quite simple. And then it asks me which kind of publishing profile is that
35:38
there is an option that is to publish directly from Power Virtual Asian
35:43
Honestly, I know that from Power Virtual Asian, you can open the Composer
35:47
It allows us to create a skill. But then if you try to publish it, I really try it out, honestly
35:54
And I put a lot of efforts. I know that there is not so much people in the world trying this
36:00
So we are still facing some configuration problems. Perhaps this is still on preview
36:06
but let's keep it simple and we are going to create a web app again do you remember as we
36:12
did before directly from the asia board so i'm going to create a new one it asked me the
36:18
subscription you can see the main differences here and now i'm going to create a new subscription
36:23
within my asia a new um sorry a new resource within my asia um it saves me that is already
36:35
exist version two. Okay, and now the locations I don't care because I really not going to use any LUIS or Q&A
36:48
and be aware of that optionally and pre-defined it, it selects multiple and optional applications
36:57
that will be deployed on behind in parallel, but we don't need them for this simple case of use
37:04
So use case, sorry. I clicked on. It is creating the Asia resource
37:12
And because I'm already locked in using my Asia profile, is everything doing them behind
37:18
So I don't have to do anything by myself. So once this..
37:27
Oh, because I have already reached the maximum. Let me try it again
37:34
Yes, perhaps I have created too many. But it's still here. Okay, let me remove one because honestly I don't need so many
37:45
But there are so many skills that I have created by myself
37:51
And this is just an Asia Tennis description. I hope this will allow me to publish the skill itself
38:01
Okay, so it's been deleted. I'm going to close the emulator and coming back here. Okay. So once I have done that
38:11
the next step I'm going to do that, I'm going to do is, do you remember that I need the
38:17
app ID, the secret ID? Do you remember that we did it on Visual Studio? So on the Visual Studio
38:27
scenario, we have to repeat it again. So that is something that is not pre-filled by default
38:32
so you have to do it. And you must be aware of that. So it's not everything so easy
38:40
Okay, I see that it could not create the profile. It always, let me publish it
38:54
I'm going to delete the original one because it could not create
38:58
We are still on time, so I'm not worried. I'm going to delete that
39:11
It's always the same. You must pay. Okay. So I think it will be enough
39:18
It's deleting the resource. And I think that we can go ahead. So I'm going to create a Power Tenant profile
39:26
Well, I need the web app resource inside. I'm going to create a new Azure resource because I don't want to mix the resources for every demo I do
39:36
This will be the C Sharp demo skill. Whatever you would like to know better in terms of distance
39:51
I'm going to unselect everything. So no pain. And I'm going to create it done
39:58
Hopefully, it will allow me to create the resource, hopefully. Otherwise, I will need to reuse the old one
40:09
Come on. So the next step, as I was saying, is we need to configure the public URL again
40:18
and we need the app ID and the secret app ID in order to configure the bot because this is something that by default isn done is not done So yes Okay So what I going to do is I going to create a new manifest
40:38
Remember, we will stay on the 2.0 manifest. This will be the version 1.0
40:44
The publisher name will be Power Tenant. And I'm going to next
40:50
The endpoints. This is something that please be aware of. This is by default
40:54
you must always create a default. Here we can put the description
41:00
show multiple adaptive cards. This is the endpoint that our chatbot has
41:09
And yes, perfect. We need the SharePoint URL. Sorry, we need the endpoint URL
41:15
To do that, I come back to the resources. Hopefully we have the new resource here
41:21
Yes. Into this resource, we have our C Sharp resource. And within this C Sharp resource, I have my URL
41:31
And this is the messaging URL endpoint that I must establish here
41:37
The next thing I need is the app ID. So I come back here
41:42
I go to, sorry, to configuration. I go to manage. and first thing I'm going to do is go to overview and to copy the app id. So again this is something
41:57
that we we have to do and I will take that because I will need it. I will need the url where my
42:03
where my resource is stored. So I'm going to click next. I'm going to publish the skill itself
42:09
I'm going to publish a simple skill that I have and I'm going to create save
42:16
And please don't have a long manifest. Otherwise it will be difficult for you to remember
42:22
which was the name. So just keep it manifest 2.0. And now you don't allow me to put
42:33
okay, so then just skill manifest together. and save. So once we have created that, I come back to my resource. I go to branding. Remember
42:47
we have to fill these fields. So HTTPS portal.office.com. HTTPS, sorry. I'm going to copy that
43:00
and I'm going to save it. And important, I will need the secret. So I'm going to create a new
43:08
secret and copy it. And next thing I will need to do is I go back to my manifest, I can edit the
43:20
manifest still, you go to next, yes, generate. And everything that I have here is the manifest
43:28
itself that it will work. So please be aware of that everything is correct. In this case
43:35
we have our endpoints. We have, if we could have some activities, some other outputs
43:43
inputs, in this case, it's quite simple. So we have everything and this is the skill manifest
43:50
Perfect. Next thing I'm going to do is I need somehow to provide the ability to call power to be to call this skill from power virtualization
44:03
virtualization. So as you remember, we have these allowed colors that we must fill. So I come back
44:11
to my, my power virtualization, I copied ID, I come back here. And between these brackets, I
44:20
insert the ID, and it's automatically safe, I don't have to do anything. And important, now what I have
44:28
to do. Hopefully I didn't miss anything. I have to publish the bot in order to make it available
44:34
So the configuration of the skill itself will be available for anyone, in this case for Power
44:39
Virtual Agent, to be called. So cross your fingers. I hope it works. And in these five minutes left
44:48
I have. The next thing I will do is to come back here and add the skill. So I just copy the URL
44:59
sorry. I come back here. I had the URL. And in this case, if you are using the Bot Framework
45:08
composer the manifest will be on manifest and will be on a skill manifest dot json so uh is
45:19
still publishing the bot sometimes it takes too long come on i hope fully yes perfect let's see
45:33
if it working I think it was skill manifest Yeah perhaps it still not published Okay let me check again The publish was done We have the manifest itself
45:54
I just want skill manifest.json, right? So what I'm going to do is to see if I can access to the
46:03
manifest, still manifest.json. Okay, so the resource has been published
46:17
but it seems that it's being still published. It could take a while
46:28
Yeah, this is the demo of, How would you say it? It's the demo experience
46:34
Sometimes it works. Sometimes, yeah, this is the on-live situations now. Perfect
46:44
So now that it's live, now I can try again. And hopefully it will work
46:52
And I will show you how to call the skill. Oh, my God
46:58
Actions are missing. Yeah, perhaps there is something. I still have time. Come on, Mar, just take a look
47:12
If not, there is another way. Edit, Power Tenant. There is a default. Yes
47:21
Perhaps because I missed to generate it. Next. Yes. And to publish it
47:27
Okay, in between, I'm going to share with you some thoughts about it
47:34
Okay, so in this case, there is a good chance to improve our Power Virtual Asian
47:40
There is still some issues with the manifest itself. So anytime that you are doing that and you are having these errors from Power Virtual Asian
47:50
look at the documentation of Microsoft and look for the error. Otherwise, the errors itself are really difficult to understand
48:01
So my recommendation is to do that. And you can call after that
48:07
Let me see if it's published. No, it's taking too long. I am really sorry because I know that there is a second and next session
48:16
But I'm just introducing to you. So what you will need to do is go directly with the topics
48:23
And instead of calling a power automate action, you will have the viability
48:29
So it will appear here. I am really sorry because it took too long
48:34
It will appear to you the skills that you have deployed. And at any time, you can add the action within your conversation
48:42
Be aware of the end dialogue status. So be aware of when the skill starts and when the skill finishes
48:50
And that's all, Simon. I'm really sorry because it took too long. It seems that it is finished, polished, but it is thinking too long, so go ahead and just cut me off
49:04
I know that you must continue. Yay! So as I told you, once you have the skill, come on, it will be ready to be used to any Power Virtual Asian
49:37
So you can add as many Power Virtual Asian, as many allowed colors as you want
49:43
So that's the good point here. You don't have to recreate the flow
49:47
You know that if the bots are in different solutions, you must recreate the flows and it will populate too many flows
49:55
So in this case, the skill is unique and you just need to call it from here
50:02
So here you have your skill. You just need to close that
50:09
And I don't know, this is a simple case. So store hours to trigger this conversation
50:17
And once you trigger the skill, the skill will start working, will show you the options, and bam, you will have the availability to, in this case, to show any adaptive card
50:33
and that's not possible as I mentioned. That's not possible. And in any case, you can continue triggering the action
50:41
till you decide to finish the skill and then the power regulation continues
50:48
Woo! On time. So that's all for today