Hi there! I’m trying to solve a problem and could use some crowd sourcing on this one!
I want my bot to be a little more interactive and leave the user feeling heard. One thing I’d like to implement is the option to allow the user to respond without forcing it.
For example:
(Inside active form)
Bot : Where are you travelling to?
User: LAX
Bot : Nice, I hope you have fun!
----PAUSE TO GIVE USER CHANCE TO RESPOND----
Bot: When would you like to go?
From here the user can say something like “thanks!” , but I don’t necessarily want to force this action. If the user doesn’t respond in a few seconds the bot should know to continue with the next slot. I tried implementing a sleep function but in the rasa shell it doesn’t let me type during the sleep so I’m not sure this is the way to go.
Perhaps with an Event? Does anyone know how to do something like this? Thanks!
Thanks so much for answering so quickly!! Can you confirm the reminder will keep me inside the active loop of the form? How do I schedule a reminder to trigger the next slot in the form?
Hmm… right. Inside the form this is tricky. Sorry I missed that.
You could use a custom action to ask for the next slot that says the “Nice, I hope you have fun!” and then schedules a reminder in 10 seconds. When the reminder triggers, it simulates that the user sent a message with a certain intent. This would then have to re-start the form via a rule.
This might be complicated. If you can’t find a way there, perhaps you can define rules instead of a form.