Как получить сообщение от пользователя и отправить такое же с reply_markup?

Бота делаю через aiogram. Бот должен получить сообщение и отправить его же с определённым reply_markup. Сообщение может быть как текст, фото, документы и т.д. Как это сделать?


Ответы (2 шт):

Автор решения: Serviswriter

Сделай несколько хендлеров на отлов всех типов данных, по одному хендлеру на каждый тип данных, потом пиши соответствующий месседж ансвер и приклепляй маркап.

@router.message(F.text)
async def echo(message: types.Message) -> None:
    await message.answer(text=message.text, reply_markup='вставь маркап')

Используй соответствующие методы messege.answer_document, message.answer_animation. Также тебе придётся передавать соответствующие типы данных в декоратор и в функцию.

→ Ссылка
Автор решения: mlt_melt

Присмотритесь к методу copy_message

await bot.copy_message(chat_id= *id чата, куда пересылаем вообщение*, 
                       from_chat_id=message.from_user.id,
                       message_id=message.message_id,
                       reply_marpkup= *объект клавиатуры*)

Подробно можно почитать в документации - https://docs.aiogram.dev/en/stable/api/methods/copy_message.html

→ Ссылка