ESPC 2022 – Creating Power Virtual Agent Chatbots for Microsoft Teams – By Vlad Catrinescu

In todays’ session, Vlad gave an amazing session (As Usual) covering how to create Power Virtual Agents, and deploy them within MS Teams.
What is PVA
Power Virtual Agents (PVA) empowers teams to easily create powerful bots using a guided, no-code graphical interface without the need for data scientists or developers.
PVA is part of the PowerPlatform Suite. It is a SaaS products, which means Microsoft will take care of all the back end, infrastructure and mechanics behind the scene. We just worry about the business logic.
Goals ?
Empower your teams
Allow “everyone” in your organisation to build bots, without knowledge of any programming or AI skills. Ooops sorry IT Admins 😛
Reduce Cost & Improve customer satisfaction
Bots run 24/7, with no time off. They can be a good approach to free your Helpdesk team for example from the repetitive and most boring tasks, and make sure your users will always have a go to end point whenever needed.
Integration
Power Virtual Agents integration with other Power Virtual Agent Platform applications
- Power Automate
- Power Apps
Which means, they can be used to start business process (approval, create tasks, do stuffs)
Note: The fact that PVA can integrate with the other PowerPlatform tools, means we can improve the user experience and actually action some of their request instead of just surfacing links and texts responses (e.g. Create a helpdesk ticket, leave requests …etc.).
We should always try to keep the user there as much as possible.
How can you build PowerVirtual Agents?
Two experiences are offered to the users:
Web App
If you decide to use PVA and take advantage of the full experience, you might be tempted to use the web app for that. For the full experience, you will need a licence to use the PVA. more on licences later.
Within Microsoft Teams
Free! yes, PVA within Teams is free (as long as you have a licence to use Teams 😂), however there are some limitations such as:
- Using only standard connectors.
- The bots you build can only be surfaced and accessed from MS Teams.
Licensing
Capability | Select Microsoft 365 subscriptions | Power Virtual Agents subscription |
---|---|---|
Deploy bot to channels | Microsoft Teams | Any channel supported by Power Virtual Agents |
Power Automate connectors | Standard connectors available for flows triggered from Power Virtual Agents | Premium connectors available for flows triggered from Power Virtual Agents |
Web security | Secure access enabled by default, no ability to generate secrets to enable secure access | Ability to generate secrets and turn on or off secure access as wanted by the bot author |
Use Microsoft Bot Framework skills | Not available | Ability to extend Power Virtual Agents bots with Microsoft Bot Framework skills |
Use a Power Virtual Agents bot as a Bot Framework skill | Not available | Use a Power Virtual Agents bot as a skill |
Integrate Microsoft Bot Framework dialogs | Not available | Develop custom dialogs with Bot Framework Composer |
Hand off bot conversation to a live agent | Not available | Trigger hand-off to a live agent |
Demo takeaways
An amazing demo by @Vlad Catrinescu as usual, with loads of energy.
During today’s demo, Vlad went into the journey of creating a Power Virtual Agent, able to raise leave requests and trigger a power automate for approval/notification. The process was very simple when you know the basics.
The fundamentals
- First, Install the Power Virtual Agents app in Teams, this should be available from the Teams Store, if not, please ask your IT Admins to enable it first.
- When you lunch the PVA app in teams, you will have three tabs. Home (with some reading content, and links), List of bots, List of Teams
Create a Chat Bot
First, Select the Team, where the bot will live.
Click “New Bot” and provide the Name of the Bot & Language.
Important, Power Virtual Agent Chat Bots can only support one language.
So if you want to distribute your bot in 3 different languages, you will have to deploy three different versions of the bot.
Topics
The most important part of your PVA. By default PVA will come with initial 4 topics and 8 systems topics.
Each topic will have a trigger phrase(s).
Topics can also be created from web pages, or CSV files, in which case the content will be crawled and topics will be suggested from what has been found.
You will probably spend most of your time in this space defining the logic of your topic.
Messages
Are just responses, usually texts (you can include images), not sure about adaptive cards. But messages won’t have any inputs.
If you want to capture additional information from your users, you will need to add a question to your topic.
Questions
You can ask your users to provide some information to drive the conversation and guide the bot to which section it needs to jump to.
Each question will generate an output variable, which you can Power Virtual Agent use in your bot logic or to call actions (flows, oops I mean Power Automates).
Built in variables
As the bot will be running inside Teams, all the users have already been authenticated, so things like User.Displayname, is a built in variable.
Branching
As its name stand for, you can branch to different sections of your topic based on certain logic. Usually driven by responses provided or selected by the users.
Live Debugging
If you want to test the chat bot, you can do so from the same interface you build your bots in.
It will highlight the step(s) your bot has traversed and allow you to quickly debug an unexpected behaviour.
Publishing
Once you have completed your bot design, make sure:
- Rename all the untitled topics
- Deactive the default, unused topics.
- Edit the system topics (default answers …etc.)
When you want to publish you have two options regarding how you want to make your bot available.
Availability Options
- Share the bot with a small group of users, so they can test it before publishing to your entire organisation
- Share with everyone within your organisation.
Finally
The bot will be published in the same way as any other Power Apps for Teams, which means, you will need to ask your Teams Admin to approve the application.
Analytics
After you publish your PVA chat bot, you might be interested in checking the analytics and usage metrics of your bot.
The analytics screen gives you valuable information such as
- Total sessions
- Engagement rate
- Resolved
- Escalated
- Abandoned
- Different rates.
References:
Pricing: https://powervirtualagents.microsoft.com/en-us/pricing/
Get Access to PVA: https://learn.microsoft.com/en-us/power-virtual-agents/requirements-licensing-subscriptions
Licensing 😒: https://learn.microsoft.com/en-us/power-platform/admin/pricing-billing-skus
Vlad’s Talk Tech :https://vladtalkstech.com/