Задать вопрос

Как правильно реализовать телеграм бота который основывается на диалоге?

Интересно, как реализовывать бота, у которого ответы зависят от текущего состояния.
К примеру первый этап, это выбор тематики, бот отображает кнопки с возможностью выбора.
Второй этап это подгружение картинки, бот ожидает от пользователя фотографию.
Третий этап - текст. Бот ожидает текст статьи от 180 символов.

И каждый из этих этапов изалирован, во втором этапе ты не можешь подгрузить тему, а в третьем загрузить картинку.

Я примерно представлял, шо такое можно реализовать через стейт машину, что у пользователя на момент времени своё состояние, но может есть какое-то каноничное решение?
  • Вопрос задан
  • 37 просмотров
Подписаться 1 Средний Комментировать
Ответ пользователя Стефан К ответам на вопрос (2)
@MEDIOFF
Python Developer
А чем FSM то не устраивает? Можете свой велосипед попробовать изобрести конечно, но боюсь больно на FSM похоже выйдет

P.S: Можете попробовать просто в редис или куда то еще записывать текущий этап пользователя и проверять его везде
Ответ написан