Chatbot response on wrong user input

Trying my hands on facebook messenger chatbot implementation.

The bot is integrated to facebook pages and interacts to user via a series of options and preset carousel templates which the user can select, good examples ICYMI are CNN and Poncho bots on messenger.

We have a scenario where our bot prompts the user to enter some details ,lets say , his year of birth.

The conversation is as follows :

Bot : Welcome Dude,what do you want to read today (horoscope) (news) (recipes)

User : ...selects horoscope...

Bot : Please enter your year of birth

User : ABCDEF

Bot : ??

At this point , IMHO we have two options since the user has entered an invalid input, we validate the user input against the expected input and say

Bot : Err.... that is not a valid year, can you try again?

or

Bot : Oops, that is something that i dont understand . You could rather try any of these (horoscope) (news) (recipes)

Which would be more apt for the given scenario in the conversational thread?

First option would hold the user in place till he enters the proper year . Which i feel i kind of detrimental in case he wants to break off voluntarily.

Choosing the second could break the thread and make the user start all over again , which could cause some annoyance.

Question -

  • Should the bot wait on the user till the user enters a expected input ?

  • Or, should the bot just acknowledge the wrong input and show user other options?

Awaiting your suggestions !