Как указать несколько типов данных, которые будет принимать хэндлер
Каким образом сделать, чтобы он принимал не только 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
