In the last week support for solutions has been added to Power Virtual Agents finally giving it ALM capabilities. Here is a quick post on how to add chatbots to a solution, how to modify deployed chatbot topics, and the impact of importing new versions of a solution. From the Power Apps Portal, you now have the option to add existing chatbots to your solution. This works for new chatbots however any existing bots need to be upgraded before they can be added to a solution. Details on Power Virtual Agents solutions support can be found here.
Here we are going to discuss the steps involved for Chatbot Development:
From the Power Virtual Agents Portal, I created a new chatbot which I called “Solution Bot” in my development environment. To this chatbot, I added a user topic called Order Tracking. Of the out of the box Lesson Topics, I deleted the Lesson 3 topic and turned the topics Lesson 1 & 4 off
I then navigated to the Power Apps Portal and created a new solution in my development environment. Once I saved I was able to add my chatbot to the solution.
I exported the solution as a managed solution and imported it into my test environment. The chatbot ran as expected and the topics that were turned off in the development environment were imported and configured off.
It is possible to modify the Topics in the environment where the managed solution containing the chat bot was deployed. You will get the warning messages below when you attempt to edit and save a “managed” topic. There is no way to prevent a topic from being modified.
It is also possible to add your own user topics to the deployed chatbot and this is a good option to extend an imported chatbot. You need to be aware you cannot tell from the topics page which topics are managed or unmanaged. The modified date will show which topics were changed since the solution was imported.
When you attempt to import a new version of your managed solution you can decide if it should maintain or overwrite any unmanaged customizations. Neither of these options have any impact on your custom topics. So if you have added your own topics to a managed chatbot importing a new version of the solutions has no impact on custom user topics. This is consistent with how solutions work when deploying applications.
Support for solutions is a very welcome ALM, Application lifecycle management, improvement to Power Virtual Agents. You can now create your Power Virtual Agents chatbot in your development environment and deploy this in a managed solution to your test and production environments. You do however need to be aware you cannot prevent customizations to your deployed chatbot. This could lead to challenges if trigger phrases changes in production get overwritten by a subsequent import. I would envisage that eventually support to split trigger phrases from topics will be added to Power Virtual Agents.