Working with Power Virtual Agents for Teams
I recently discovered that Power Virtual Agents is available as part of your Teams licence. This immediately captured my interest, as up to then, I believed that you could only licence Virtual Agents at a cost of $1,000 per month for 2000 sessions. The paid-for licence can be run across multiple channels, like your website, mobile apps, slack, Facebook etc. At a cost of 50c a session, you can see how the bill could clock up. If however, you deploy your agent within your Teams tenant, you can get a bot experience for your organisation at no additional cost.
So why is this useful? This is what I think.
A bot chat has the power to be a very natural experience for users to interact with technology.
If you are an organisation that is already using Teams, then you are providing users with bot functionality in an environment that they are already familiar with.
As an IT professional, I get asked all sorts of questions/requests that I can probably automate, but can't necessarily be deligated to an end-user to run.
Power Virtual Agents can run Power Automates and logic apps. (and this is the key point)
Basically, I am totally on board with a technology that I can quickly automate some activities that I can then expose to users via an Agent. That empowers them to run those activities themselves, from within a tool that they have continuously open. (Teams)
Before we build a bot, which is a really easy job, let's have a look at some of the activities I can do via my own bot. Introducing, GraBot! (Yes Irish speakers, I am aware of what I actually called my Bot). If I pop into my Team chat, I can start a conversation with GraBot. A quick hello, and I get the following response.
So I can straight away see some of the tasks that I can ask GraBot to do for me. Let's ask it to refresh a PowerBI data model. I type process (I could also have typed refresh and a few other options as well), and I get the following response.
I select which model and then I get this response.
Easy right? Now imagine that this is an end-user, who maybe has updated a spreadsheet that is input into a PowerBI model, and they are under time pressure to get their reporting ready. As soon as they have done their updates, they call you and ask, "Can you refresh the model?". You now either have to explain to them how to do it via PowerBI (if they have permissions), or you have to log in to PBI and kick off that refresh. Instead, your response can be "Ask GraBot to do that".
Let's look at what else it can do. How about my timesheet? I log my hours in a SharePoint list. It isn't difficult, it doesn't take long, but somehow that launching of a browser, and connecting to the list just feels a couple of clicks too many that I end up putting off. Meanwhile, Teams is just there and always open. Let type time (or timesheet, log hours etc)
Now I try to log my time on the day I work it, but that doesn't always work out, so I have to ask for the date. I can then have a conversion like the following with GraBot. (As an aside, my response of "Today" didn't require any sort of programming to understand. Once I set up the response to be of type date, the bot just recognised Today and converted it into today's date in my SharePoint list.)
I know, I could just log in directly via my SharePoint list, and I still can. The bot doesn't stop me from doing things the original way, it just plugs in (with some minor config) and gives me another way of interacting with the task. This is where I think a Bot in teams is a very interesting concept. I am a big fan of immersive and empowered experiences for users. Let have a quick look at some of my other tasks. Let's create a user in my AAD.
And finally, let's send a tweet. (Which you can see here)
So wrapping this blog up, I frankly love this idea and I am going to start using agents in teams whenever possible for my own business and on customer sites. I think once people start using agents in this way, then all sorts of simple/repetitive tasks can be low coded and rolled out to users.
In my next blog on this topic, I am going to dig into how you can start building your own bot.
Thanks for reading and stay safe.