I’m working on a use-case with Rasa where I will have a conversation with some chronological order, some decision making slots, and then several “modules”. I’ve read through pretty much all of the rasa documentation but I’ve been struggling with what I will need to do to get this flow to work. A great example of this is lets say that my bot is telling a short fairy tale story. The bot sends the story broken up as individual messages with some custom code using reminders so that it will continue typing messages of the story if the user doesn’t respond within x seconds. However, if the user does respond within x seconds, they might want to ask some question about what was previously said regarding the story. If thats the case, then I can run a custom action to retrieve that information and give clarifying information/details. This is all easy enough to understand and implement. However, I do not want the user to be able to enter some intent that triggers some completely other story such that my bot never finishes telling the story. So, in essence, I want to have some stories that can get clarifying information for the “module” that the bot is executing inside of but not be able to input an intent that ends this story early. Figuring this out is crucial to my use case and without a solution I don’t think I’d be able to use Rasa so any help is greatly appreciated.
You should use forms and look at the financial-demo bot which has good examples of allow the user to switch context or preventing them from doing so. You’ll find example stories here
The thing is my flow is different than forms. I’m not strictly getting info from the user. In the example above, it is more about the bot speaking through dialogue than getting any specific info from the user.
bump