I'm calling a Power Automate flow from PVA with a bunch of input variables, some of them marked optional.
However, I can't see how this should affect the bot logic in any way, and I wonder if it is a bug, by design or if I missed something.
Here is my observation:
When adding the flow as an action to any dialog, I have to set all parameters of the flow, regardless if they marked optional or not.
+ there is no visual indication at all.
This results in Power VA jumping between topics until all variables have been collected.
Sample
Input parameter marked optional:
The flow used in Power VA
No indication that this is optional, nor can I add the flow without setting an input variable (bug/by design?)
If I leave the variable empty (not collected in any previous dialog), when invoking the flow, Power VA calls the sub dialog where the variable is defined and asks the user to provide it. This is, of course, breaking the modeled dialog flow, and I don't see any way around it.
My expectation would be:
1) We don't need to pass any variable when the flow input field is marked optional
2) or, Power VA passes an empty value instead of calling the sub dialog and trying to collect the variable from the user
Please note that I'm using global variables. I haven't had the chance to see if the behavior is the same for local dialog variables.
I considered to model two flows with different interfaces to work around this issue, but unfortunately, Power VA doesn't let me assign the output to the exact same variable, which makes consequent dialogs a mess with a lot of conditions.
The lack of ability to set variables without user input makes many things very complex. I hope this will come as a feature soon.
Any advice?
Thanks
Solved! Go to Solution.
Hi @BenAffleck ,
Unfortunately, it's not possible yet.
We already submit an idea inside the Ideas portal, to allow users to send optional inputs.
You can vote in it: https://powerusers.microsoft.com/t5/Power-Virtual-Agents-Ideas/Allow-PVA-to-send-NULL-values-to-Powe...
Hi @BenAffleck ,
Unfortunately, it's not possible yet.
We already submit an idea inside the Ideas portal, to allow users to send optional inputs.
You can vote in it: https://powerusers.microsoft.com/t5/Power-Virtual-Agents-Ideas/Allow-PVA-to-send-NULL-values-to-Powe...
Hello @renatoromao ,
Thank you for your response! I've voted for the idea.
This is a big limitation. Do you see any feasible workaround?
The only thing I could think of is to copy the flow and define a reduced interface. Then copy the topics and use the different flows.
Even in this case, it all becomes very complex, as the output variables can't be merged into one global variable, causing the subsequent flow facing the same issue. Thus, we have to copy both the flows and the topics to have two fully dedicated branches, just because of one 'optional' parameter. Maintenance would become a nightmare.
The ability to set variables without a user prompt would solve most of this issues, but I think this feature is also far away.
What are your thoughts? Did I miss any clever way?
Thanks
Hi @BenAffleck ,
Unfortunately, we don't have any way to do a workaround 😞
I agree with you!
I think that it's a big challenge inside the Microsoft team because this automation use another tool (Power Automate) and this feature needs to be done together with the Power Automate team.
I hope that soon we will receive this feature available.
Adding...
You can follow this page: https://docs.microsoft.com/en-us/power-platform-release-plan/2020wave2/power-virtual-agents/planned-...
Thanks again, @renatoromao
I agree. We need this.
However, I see several options that wouldn't require the Power Automate team to jump in IMO.
1) The Power Automate Power VA Trigger already provides the information which parameters are required and which are marked as optional. Thus, we could "skip" Power VA to invoke the dialog to collect variables from the user, when not in the list of mandatory fields.
2) We should have a "set variable" step (same as 'call an action), so we could easily assign a default value to the variable before passing it to the flow. This way we could either work with defaults or set pseudo values like "not collected" and evaluate in the flow. Very easy, yet very powerful.
3) Assigning the output of two different flows to the same bot variable would help a lot (could be combined with #2). At least it would make subsequent dialogs easier, and we could work with different copies of the flow having different fixed interfaces.
IMO, none of the above (maybe just #1) would require and major modification in Power Automate.
In that sense, it is not the lack of respect for optional parameters, it's the lack of ability to set variables to any value without user input. I would vote that feature higher, as it would also unblock this issue.
Any more thoughts before I start making copies of all flows and dialogs? 🙂
Thanks
Any update from MS on this issue? I met the same issue recently,
1 the VA will still ask user questions to collect all input parameters to trigger Automate action even some of the parameters are already made optional in Automate flow, and questions for these optional parameters shouldn't be asked to user under some conditions.
2 Set variable is still not supported in VA, with that I can set a default value to these optional parameters under some conditions then the VA will not ask user for those invalid questions.
Keep up to date with current events and community announcements in the Power Virtual Agents community.
A great place where you can stay up to date with community calls and interact with the speakers.
User | Count |
---|---|
5 | |
3 | |
2 | |
2 | |
2 |