Hi everybody, i’m new in rasa so please be patient with me
The thing is that i was working in a BOT and in the 1.10 version i was able to change dynamically the requested slots in the required_slots method of the form actions based in a conditional and the validations work by temselves.
When i made the update to the new version i read in the docs that the new way to implement this kind of form is by using a custom action and in a github post (Custom action class for validating slots with one custom action · Issue #6819 · RasaHQ/rasa · GitHub) i read that for making the validations is needed to run the validations methods inside the run method of the action maybe i don’t understood it well. So i make this action with the validatios methods with the idea of request the slots depending of the slot_nit_conditional value and making the validation of all the needed slots.
i’m almost sure that is not well implemented but i didn’t found the corret way of implement the validations and the conditional slot request in the same action one of the problems with my custom action if i understod well is that the active_loop ends whan all the slots are filled so the form nevers makes the validation of the second slot in the case it is requested and the second issue is that even if i the condition is not True (in this case the required_slots only contain “slot_client_id”) the BOT also ask me for the second slot i’m sure this is a logic problem in my code but could’nt found the correct way of implementing this form. In the domain i have the form declaration in this way.
The validation methods are inside the same class of the run method in all the cases, maybe this is not important but i’m working in Ubuntu 20.04 and with a Python venv with Python 3.7.9 installed.
i’m trying to use the validation methods that i already have since version 1.10, so the returns of the methods looks like these.