Start chat bot from between the chat flow

I am developing a chat bot using Rasa. The problem is if the session gets closed in between due to say internet connectivity problem or accidental closure of web page etc, the next time the user comes to the chat bot window I want to be able to restart the conversation from where he left off before the disconnection.

If I am able to store maybe the public IP mapping locally with a timeout (say 20 mins), if the next request comes from the same IP can I switch to a particular state?

Problem here is I want to repeat first 2-3 questions like ‘I am talking to person Mr.X?’ to confirm I am talking to the same person and then switch to maybe the last question he left off (say 5th question).

To keep it simple, ask question 1 and 2, then switch to question 5 directly skipping question 3 and 4 because he had previously answered it. I have stored the answers to it in a database.

Any suggestions or pointers are appreciated.