Для того чтобы добавить возможность обратной связи через кнопку в Telegram боте, написанном на Python с использованием библиотеки python-telegram-bot
, вам понадобится выполнить следующие шаги:
1. Добавьте кнопку для обратной связи в сообщение, которое отправляет ваш бот пользователю. Например, кнопку "Обратная связь" с текстом "/feedback".
from telegram import InlineKeyboardButton, InlineKeyboardMarkup keyboard = [[InlineKeyboardButton("Обратная связь", callback_data='feedback')]] reply_markup = InlineKeyboardMarkup(keyboard) update.message.reply_text('Для обратной связи нажмите кнопку ниже:', reply_markup=reply_markup)
2. Обработайте нажатие на кнопку "Обратная связь" и предоставьте пользователю возможность отправить обратное сообщение.
from telegram.ext import CallbackQueryHandler def feedback_callback(update, context): chat_id = update.effective_chat.id context.bot.send_message(chat_id=chat_id, text='Опишите ваш отзыв или вопрос:') dispatcher.add_handler(CallbackQueryHandler(feedback_callback, pattern='feedback'))
3. Добавьте обработчик для получения обратной связи от пользователя.
def message_handler(update, context): chat_id = update.effective_chat.id text = update.message.text if text.startswith('/feedback'): context.bot.send_message(chat_id=chat_id, text='Спасибо за ваш отзыв!') # Добавляем обработчик сообщений dispatcher.add_handler(MessageHandler(Filters.text & (~Filters.command), message_handler))
Таким образом, вы добавите возможность обратной связи через кнопку в вашем Telegram боте, написанном на Python с использованием библиотеки python-telegram-bot
. Не забудьте настроить обработку уведомлений по нажатию кнопок и обработчиков сообщений, чтобы бот правильно реагировал на действия пользователей.