<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 async def _on_message(self, channel, body, envelope, properties) -> None: """ Fires up when message is received by this consumer. :param channel: Channel, through which message is received :param body: Body of the message (serialized). :param envelope: Envelope object with message meta :type envelope: aioamqp.Envelope :param properties: Properties of the message :return: Coroutine object with result of message handling operation """


        subscribers = self._get_subscribers(envelope.routing_key)
        if not subscribers:
            logger.debug("No route for message with key '%s'", envelope.routing_key)
            return

        body = self._serializer.deserialize(body)

        for subscriber in subscribers:
            # Check later if ensure_future can be applied here
            await subscriber.on_message(body, envelope.routing_key)

        await self._channel.basic_client_ack(envelope.delivery_tag)