Как создать многопользовательского бота в Telegram на Python?
Пишу Телеграм-бота на питоне. Использую pyTelegramBotApi.
В целом всё готово, но при тестировании понял что если 2 пользователя одновременно начнут пользоваться - возникает путаница и баги. Необходимо как-то добиться многопользовательского режима.
Знаю что можно с помощью БД, с помощью текстового файла или даже с помощью словарей для хранения данных пользователей.
Предполагаю что может помочь и многопоточность или разделение на процессы, хотя сомневаюсь, я пока что новичок, но мысли просто такие есть, поправьте если ошибаюсь.
В целом меня интересует логика. Ну запишу я ID пользователя и какой-то статус в таблицу, а что с этим делать ? Как разделить сессии пользователей чтобы они не пересекались и получить эффект многопользовательского режима?
Есть такой патерн программирования - конечный автомат.
Если кратко - в боте стоит создать хеш таблицу в которой будет храниться id и текущая операция пользователя. https://youtu.be/X49LG8JhcGQ
Надеюсь, что здесь можно вставлять ссылки на ютуб. Этот парень делал тг бота для ржд. У него применен этот патерн и есть полу рабочий код на гите( слегка устарел). Подсмотри у него