Python Telegram Bot Ответ на конкретное сообщение
Только учусь работать с питоном. Подскажите, как админ может прислать в ответ определенное сообщение, с учетом того, что пользователь будет постоянно присылать сообщения.
@bot.message_handler(content_types=['text'])
def buttons(message):
#Пользователь выбирает кнопку с вопросом
if (message.text == 'Запрос'):
bot.send_message(message.chat.id, text="Напиши свой запрос")
bot.register_next_step_handler(message, send_info)
bot.register_next_step_handler(message, start_menu)
...
@bot.message_handler(content_types=['text'])
def send_info(message):
key = telebot.types.InlineKeyboardMarkup()
key1 = telebot.types.InlineKeyboardButton(text='Принять', callback_data='accept')
key2 = telebot.types.InlineKeyboardButton(text='Отклонить', callback_data='reject')
key.add(key1, key2)
#Вопрос приходит админам
bot.forward_message(ADMIN_CHAT, message.chat.id, message.id)
bot.send_message(ADMIN_CHAT, 'Примем в работу?', reply_markup=key)
@bot.callback_query_handler(func=lambda call: True)
def callback_worker(call):
if call.data == "accept":
bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text='Отработан')
bot.send_message(message.chat.id, 'Ваш запрос {???????????} отработан')
Ответы (1 шт):
Автор решения: web developer
→ Ссылка
После отправки сообщения методом sendMessage возвращаются следующие данные:
https://api.telegram.org/bot<TOKEN>/sendMessage?chat_id=123456&text=SO Example
{
"ok": true,
"result": {
"message_id": 80,
"from": {
...
Вам нужно будет сохранить где message_id-нибудь.
Затем используйте reply_to_message_id параметр из sendMessage , вы можете ответить на это сообщение следующим образом:
https://api.telegram.org/bot<TOKEN>/sendMessage?chat_id=123456&text=Reply&reply_to_message_id=80