Elliot94:
So I am developing a rasa calm chatbot for interacting with a simulated robot of sorts. I ask it to move objects and once it has all the required slots, it will trigger a custom action. However, if I interrupt a ongoing flow, it behaves weirdly and sets slots automatically.
Here is an example: user : move the brush
robot: Where would you like me to move the brush to?
user: move the can from the kitchen to the dining room
robot: Moving brush from bedroom table to dining room table
Let’s continue with move object no location.
Ok, I am updating object to can respectively.
Where would you like me to move the can to?
Here move object no location is the name of the flow when the user does not specify the source location of the object. For something like “move the cup to the kitchen” and I have a custom action that determines the location of the cup and all that. In the above example, the brush location is determined to be bedroom table which is correct, but nowhere did I set a destination to dining room table
Here’s the end2end from the inspector:
- user: move the brush
- utter: utter_ask_destination_location
- user: move the can from the kitchen to the dining room
- utter: Moving brush from bedroomtable to diningroomtable
- utter: utter_flow_continue_interrupted
- utter: utter_corrected_previous_input
- utter: utter_ask_destination_location
You might need to implement session management or context resetting to handle interruptions more effectively, ensuring correct slot filling and responses.