Telegram Bot: инициировать разговор по нажатию кнопки встроенной клавиатуры

Я новичок в этой разработке бота Telegram, и я разрабатываю бот, который использует Conversationhandler и несколько состояний, чтобы поговорить с пользователем и получить ответ.

Поскольку бот будет работать в групповом чате, я заканчиваю разговор после каждого ответа. таким образом, бот не будет "слушать" другие сообщения в групповом чате, и ожидается, что пользователь снова инициирует команду "говорить"

Пример кода приведен ниже,

updater = Updater(config['telegram'][token_key])  # Live

# Get the dispatcher to register handlers
dp = updater.dispatcher
conv_handler = ConversationHandler(
    entry_points=[CommandHandler('start', processquery)],

    states={
        QUERY: [MessageHandler(Filters.text,
                               processquery,
                               pass_user_data=True),

                MessageHandler(Filters.command, processquery, pass_user_data=True)
                ]
    },

    fallbacks=[RegexHandler('^Done$', done, pass_user_data=True)]
dp.add_handler(conv_handler)

dp.add_handler(CallbackQueryHandler(buttoncallback))

Теперь для конкретного варианта использования у нас будут встроенные кнопки клавиатуры вместе с сообщением,

Поскольку после каждого сообщения диалог завершается "ОКОНЧАНИЕ", после нажатия кнопки, как я могу снова " тихо " начать беседу и прослушивать пользовательский запрос без какой-либо команды?

Я использую библиотеку python-telegram-bot.

0 ответов

Другие вопросы по тегам