Middleware для пересланных сообщений, aiogram 2

Всем привет! У меня возникла сложность с написанием middelware для пересланных сообщений. Вся суть в том что, если человек скидывает сразу несколько пересланных сообщений боту, то они должны считаться как одно сообщение и дальше идти обрабатываться. Ломаю,ломаю голову, но не могу догнать как сделать. Вот есть что то похожее на media_group, но даже с ним не получается понять как это реализовать под forward_message, помогите чем сможете, буду благодарен

class AlbumMiddleware(BaseMiddleware):

    album_data: dict = {}

    def __init__(self, latency: Union[int, float] = 0.01):
        
        self.latency = latency
        super().__init__()

    async def on_process_message(self, message: types.Message, data: dict):
        if not message.media_group_id:
            return

        try:
            self.album_data[message.media_group_id].append(message)
            raise CancelHandler() 
        except KeyError:
            self.album_data[message.media_group_id] = [message]
            await asyncio.sleep(self.latency)

            message.conf["is_last"] = True
            data["album"] = self.album_data[message.media_group_id]

    async def on_post_process_message(self, message: types.Message, result: dict, data: dict):
        
        if message.media_group_id and message.conf.get("is_last"):
            del self.album_data[message.media_group_id]```

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