Hi, I’m currently working on rasa that could work for form application, for example: filling leave form. In the domain file, I have the leaves form, slot and story defined as below PS: the time slot is for Duckling, and it will processed to dates string list [‘01/01/2021’, ‘02/01/2021’] in the validation_leaves_form
slots: time: type: any influence_conversation: false dates: type: list influence_conversation: true leave_type: type: text influence_conversation: true
leaves_form: required_slots: dates: - entity: time type: from_entity leave_type: - entity: leave_type type: from_entity
- story: Apply Leave Affirm steps: - intent: apply_leave - action: leaves_form - active_loop: leaves_form - slot_was_set: - dates: true - action: action_confirm_dates - intent: affirm - action: leaves_form - active_loop: null - action: confirm_leave
What I’m trying to do here is the user could ask for leave application, the bot would activate the form and ask the date, when user input a list of dates, it should trigger custom action ‘action_confirm_dates’ for confirmation, if user say yes, the form continue.
But the actual case that I encountered was it never trigger the ‘slot_was_set’ event, the conversation is broken when user filled in dates and leave_type, it goes to default fallback.
I was tried the format that given from rasa-x historical conversation which defined as below.
- slot_was_set: - dates: - 01/01/2021
With this, it actually works sometimes, but the custom action will only trigger after the form is deactivated, which is different as what it stated in the documentation. While most of the time when I retrain it later without any changes, it goes broken again. I have no idea what is going on here.
Since I couldn’t find any example for List type slot and slot_was_set event in story, I got stuck here for weeks. Am I getting something wrong?