Как указать несколько типов данных, которые будет принимать хэндлер

Мой хэнлер

Каким образом сделать, чтобы он принимал не только types.Message, но и Фото, Видео и ВидеоЗаметки(кружочки в телеграмме)


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

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

Вам не нужно менять тип Message так как это получает бот.
Из совета могу дать, не делать регистрацию хендлеров таким образом, так как это ломает ваше понимание кода.
Пример получения фото.

@dp.message_handler(content_types=types.ContentTypes.PHOTO)
async def photo_handler(msg: types.Message):
    photo = msg.photo[-1].file_id

Пример получения фото и/или видео.

@dp.message_handler(content_types=[*types.ContentTypes.VIDEO, *types.ContentTypes.PHOTO])
async def photo_handler(msg: types.Message):
    video = msg.video.file_id if msg.video else None
    photo = msg.photo[-1].file_id if msg.photo else None
→ Ссылка