169 похожих чатов

У меня такая проблема. Пользователь отправляет боту фотографии - для

этого у меня зарегистрирован message_handler
dp.register_message_handler(im_handler, content_types = types.ContentType.PHOTO)

Проблема в том, что функция im_handler, если я правильно понял - вызывается на каждую фотографию в отдельности. То есть отправлено мне например 4 фото в одном сообщении - она вызовется 4 раза.

Мне же нужно сразу знать, сколько фотографий отправлено. Как это можно сделать? Или еще лучше - как получить функцию, принимающую сразу массив из всех фотографий, а не 4 раза по одной

16 ответов

23 просмотра

Извини, что отвечаю на довольно старое сообщение Пытаюсь воссоздать твой пример с получением медиа группы с помощью arq MRE: https://paste.aiogram.dev/visivozevo.py Мне кажется, я как-то неправильно воркер запускаю, ибо если зарегистрировать в dp.startup.register() запуск, ругается, что event loop is currently running

Mikhail Smolnikov
Извини, что отвечаю на довольно старое сообщение П...

Ты не должен запускать воркер в том же процессе что и бот Запускай отдельно от бота

Спасибо, работает)

https://gist.github.com/prostmich/b449eaa6392f85e072d8e0aabdfe3c76 BOT_TOKEN конечно же лучше вынести в отдельный файл, и потом импортировать

Mikhail Smolnikov
screenshot Спасибо, работает)

кхем пахнет мидлварью на сбор альбома, arq тут чё даёт?

Mikhail Smolnikov
https://gist.github.com/prostmich/b449eaa6392f85e0...

photos = await redis.zrangebyscore( f"media_group:{media_group_id}", float("-inf"), float("+inf"), ) ?

Denis 🐍|👑 | darling! 🥰
photos = await redis.zrangebyscore( f"...

Получает отсортированную zrange по скору

Mikhail Smolnikov
Получает отсортированную zrange по скору

А как арк понимает что фотографии в альбоме закончились

Aleksandr Danilov 🇺🇦
А как арк понимает что фотографии в альбоме законч...

Арк не понимает этого, просто таска последняя отработала и новая уже не создалась

Denis 🐍|👑 | darling! 🥰
кхем пахнет мидлварью на сбор альбома, arq тут чё ...

Просто как себя поведет твой мидлварь, если вдруг сеть отвалится или бот упадет? А тут консистентность данных соблюдается, всё в редиске хранится

Mikhail Smolnikov
Просто как себя поведет твой мидлварь, если вдруг ...

можно сделать чтобы мидлварь пихала данные в редис))) ну а если серьёзно, то если сеть отвалится, ты всё равно альбом нормально не обработаешь и скорее всего придётся попросить юзера отослать его по-новой

Разработчики редиса именно этот смысл в это и вкладывали

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта