Session Management

How exactly bot session is managed?
Is bot session initiated at the time I access bot?
And how it differentiates between two users accessing same bot?

Detailed reference would help.

1 Like

Anything on this?
It will be helpful.

Neha Sheikh

@nehamsheikh, A bot session is the conversation a unique user had with a bot over a period of time. So even for the same bot as the users accessing the bot are different, the session will be separate for the users.

Here’s how the session is calculated. The calculation of the session is based on the idle time of user with the bot. Assume, user had a conversation with the bot for 10 mins and then idle for 15 mins. Later on the 16th min, user dropped a message again to the bot. The conversation user had from the 1st min to the 10th min will be treated as a session.

Even in the case, user didn’t send message to the bot after the 15 mins idle time, a scheduler on the platform which runs daily at regular intervals would look up for conversations which are idle for more than 15 mins and convert them to sessions.

Can we customize the session timeout for Bot?
I need to match it with my application’s timeout.

No, the way sessions are created is managed by platform itself and this is not configurable by the developers.

Hello, @Subrahmanyam.

I have a concern with Facebook sessions. As of now, I can still continue with the session I have left ongoing even after a day. Does that mean that in channels such as Facebook Messenger, chatbot cannot really identify when a user actually left the chat for a while thus keeping the session beyond 15 minutes?

If this was a limitation with, our workaround is to create a util script that checks the timestamp of the last active session/interaction and compare it to the current timestamp. And if the time difference is still within 15 minutes, then can still retain the entities saved otherwise they will be deleted as well as the current intent is also discarded.

Thanks for the help!



Hi @marck.abias,

We apologize for the delay.
We will discuss this with our team and get back to you.

Yoga Ramya.

Hi @marck.abias,

We apologize for the delay in response.

In Facebook messenger, the session ends for every 15mins of Idle time.
If the last session has ended with a message from bot asking for user input for an entity, then

Case 1: The user can resume the chat with the entity value and continue the previous session conversation.

Case 2: The user can give any utterance which ends the conversation of the previous session and starts a fresh conversation accordingly.

This is the current behaviour of the Facebook messenger chat session.

Kindly let us know if you need any further clarification on the above.

Yoga Ramya.

1 Like

Hi @yogaramya.mendu,

Thank you for the reply.

So if stopped replying in the middle of an intent, I can still continue that even after 15 minutes as long as it ended with an open entity request?

I can’t quite differentiate the session ending in 15 minutes and the session that still allows me to continue a particular intent even after 15 minutes as long as it has ended with the bot asking for an input for an entity. Shouldn’t the session be killed all together at that time?

Thank you in advance.

Is this applicable for MS teams ?

@yogaramya.mendu Could you Please clarify how the session timeout happens when a bot is integrated with teams. Because i initiated a conversation . I between i left. After 3 hours again i continued the conversation , still the flow continues. How this session timeout handled in teams. Please shed some light on this.