Power Virtual Agents allows anyone, regardless of their technical expertise, to create intelligent chatbots capable of resolving common issues. It integrates seamlessly with Power Automate, Microsoft's tool for creating automated workflows between apps and services.
IT support has developed into a crucial component of any modern organization as we become more reliant on digital tools and remote work. Yet, it can be daunting due to the amount of manual work involved, especially for large organizations. Thankfully, Microsoft’s Power Platform is here to simplify things.
This blog post will guide you through creating a self-service IT support bot using Power Virtual Agents and Microsoft Teams, particularly focusing on managing devices enrolled in Microsoft Intune. This blog will be followed by another post with a device management app with Power Apps, powered by Microsoft Teams and Azure AD.
Power Virtual Agents allows anyone, regardless of their technical expertise, to create intelligent chatbots capable of resolving common issues. It integrates seamlessly with Power Automate, Microsoft's tool for creating automated workflows between apps and services. I wanted my bot to be capable of automatically starting conversations and managing devices enrolled in Microsoft Intune.
To create and manage Power Virtual Agents chatbots in Teams, you need:
For this blog post, I have created a few common topics that are the most common support requests for managing devices enrolled in Intune. You can add additional scenarios such as Feature Update, Bitlocker Key, on-demand Sync, and much more.
Let’s get started!
Microsoft's Power Virtual Agents allows you to create topics to help guide conversations with users. Topics are essentially dialog trees that your bot can follow based on keywords or phrases provided by the user. Here's how to create new topics.
Message
node to send messages to the user.Question
node to ask something to the user.Condition
node to create conditional paths in your conversation.Call an action
node to connect with Power Automate flows, which allow you to connect to external systems.End with survey
node to close a conversation and ask for feedback.Let's take an example of the Greetings topic. This is the first topic, which will initiate the dialog between your user and the Bot. Here, I have modified the sample topic in my bot.
First, I modified the trigger phases, so that the conversation can start. You can also modify the index.html file to let the Bot automatically start the conversation.
Next, I incorporated a "question" node where the bot greets the user by their name and provides them with a list of options for which the bot can offer assistance.
Depending on the user's selection from the response options, I have implemented conditions to guide the conversation to the relevant topics. For instance, if a user chooses "Device Compliance", the bot will then direct the conversation toward the "Device Compliance" topic.
To achieve this transition, you need to have the topics created and configured.
Revisiting the example, let's assume the user chooses "device compliance". In this scenario, the bot transitions the conversation to the "device compliance" topic. Within this topic, I've also incorporated triggers so that if users need to verify the compliance of their registered device, they can directly access this topic.
To foster a more productive conversation, the bot is programmed to inquire about the specific device platform for which the user wishes to check compliance. This is a useful feature, considering it's common for a user to have multiple devices.
Now we're at the point where you'll be interacting with Graph APIs. Based on the user's chosen platform, I've stored the response in a variable that's then utilized within Power Automate. I've employed the "call an action" node to invoke the Power Automate flows configured to execute this sequence.
To ensure an interactive conversation, I've incorporated conditions to capture the user's response. For example, we can determine whether the user needs to be redirected to a service desk agent for additional support, or whether they are satisfied with the assistance they've received.
Let's consider a different scenario, such as a Passcode Reset. Since the passcode reset command is exclusively applicable to iOS and iPadOS devices, the bot will autonomously verify any such devices the user has registered in Intune and will display the device details. The user is then prompted to enter the device ID for the device that needs unlocking.
If the device unlock attempt is unsuccessful, the conversation is then routed to a readily available Service Desk agent for further assistance. The design as below:
The combination of Power Virtual Agents and Power Automate can significantly streamline IT support and device management. Not only does it automate many manual tasks, but it also ensures users get immediate help when needed, and IT administrators have the tools they need to manage devices effectively.
I hope this walkthrough inspires you to explore how Microsoft’s Power Platform can transform your organization. Remember, every organization is unique, so feel free to tweak the steps to best suit your needs. Happy building!