Как завершить активный разговор с ботом Telegram и начать новый, используя определенные ключевые слова в PythonPython

Программы на Python
Ответить
Anonymous
 Как завершить активный разговор с ботом Telegram и начать новый, используя определенные ключевые слова в Python

Сообщение Anonymous »

Я создаю бота Telegram с помощью python-telegram-bot и использую ConversationHandler для управления беседами. Вот моя настройка обработчика:

Код: Выделить всё

python

conv_handler = ConversationHandler( entry_points=[CommandHandler("start", start)], states={
CHOOSING: [MessageHandler(filters.TEXT & ~filters.COMMAND, choose)],
ECHO: [MessageHandler(filters.TEXT & ~filters.COMMAND, echo)], },
fallbacks=[CommandHandler("cancel", cancel)] )
Бот работает должным образом: пользователи могут перемещаться между состояниями ВЫБОР и ECHO. Однако я хочу прервать текущий разговор и начать новый на основе нового сообщения, отправленного пользователю.
Например, если пользователь находится в процессе ВЫБОРА
Например, если пользователь находится в процессе ВЫБОРА code> и отправляю через бота такое сообщение:

Код: Выделить всё

python

keyboard = ReplyKeyboardMarkup([["Confirm", "Cancel"]], resize_keyboard=True, one_time_keyboard=True)
await send_message_to_user( context, post_creator_user_id, "Please take action to confirm or reject the request.", keyboard=keyboard )
Я хочу, чтобы новый диалог обрабатывал ответы на основе кнопок «Подтвердить» и «Отменить». Как только пользователь выберет один из этих вариантов, предыдущая беседа должна завершиться и начаться новая.
Как я могу :
  • Сбросить текущее состояние разговора при отправке нового сообщения?

    < li>Начать новый поток беседы с помощью опций «Подтвердить» и «Отменить»?


Подробнее здесь: https://stackoverflow.com/questions/792 ... w-one-usin
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»