Задать вопрос
@Mikhail_Ryt
Изучаю язык Python

Как установить последовательность хандлеров при создании телеграмм-бота [pyTelegramBotAPI]?

Добрый день!
Не могу понять как установить последовательность хандлеров.
Принцип работы бота:
1) /start
2) выберите категорию: игры, книги, музыка.
3) Напишите название. (здесь не важно, что пишет человек, ответ один.)
4) спасибо за обращение!
В самом коде первый хандлер содержит категорию "Игры" (если начать общение с ботом со слова "Игры", то проблем с циклом не возникает), а если написать боту "Книги" или "Музыка", то бот сразу отвечает "Спасибо за обращение".
Подскажите пожалуйста как правильно реализовать этот цикл, чтобы сообщения боту не перехватывались только первым хандлером? (Добавил скрин)
5d2400073445c910520570.png
  • Вопрос задан
  • 500 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 2
Все кроме 1го сообщения - текст. Текст должен обрабатываться одним хендлером. Уже в нем нужно определять, какой текст указал пользователь.

По поводу последовательности - реализуйте хранение сессии для каждого пользователя. Можно обойтись для начала простым словарём id_пользователя => номер_шага. Просто увеличивает счётчик успешных шагов после ответа ботом на каждый и проверяйте в своём хендлере для текста, чтобы понимать какой сейчас у пользователя вопрос и что ему отвечать
Ответ написан
Комментировать
@Mikhail_Ryt Автор вопроса
Изучаю язык Python
Спасибо за ответ.
Но у меня не получается поместить все if в один хандлер. Хотелось бы посмотреть это на примере.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Greenway Global Новосибирск
от 150 000 ₽
SPA2099 Москва
До 100 000 ₽
HR Prime Москва
от 300 000 до 3 800 000 ₽