Rasa chatbot to detect user idle time

Hi,

I am relatively new to Rasa. I am trying to figure out how to implement the use case that chatbot can initiate a conversation when it detects user idle time is longer than X minutes?

I checked the documentation for Reminders and External Events. But I felt this is not for our use case.

It seems this use case needs chatbot to track user chat interval and if the interval is longer than X minutes, chatbot utter back a message.

Are there any suggestions?

Thanks, Shirley

Welcome to the community @ShirleyAtMist

I’d use reminders with the flag kill_on_user_message=True which would remove the reminder when the user sends a message.

The alternative would be to handle this in the frontend of your application? Which channel do you want to use?

This is also an issue that I’m looking at solving.

For the reminders with kill_on_user_message, how would we create that reminder on every message that the user sends? Is there an action we can hijack?

It would be preferable for us to be able to handle this using something that already exists, like reminders, rather than introducing a dependancy on something like Redis to handle this in the channel implementation.

For future refernces. As to some action that can be hijacked @rudi combination of action_session_restart and session_expiration_time could help probably.
Docs: Default Actions