Instead of the half-baked conversation system based on a database, implement a per-conversation associative map of values that is loaded and stored on files (identified by Telegram chat ID).
Make it extensible, allowing users to plug in database storage if needed.