Publish a message to the queue.

        :param function on_message: Function to call upon recieving a message
        :param str queue: The queue to publish to

def consume(self, on_message, queue):
        """
        Publish a message to the queue.

        :param function on_message: Function to call upon recieving a message
        :param str queue: The queue to publish to
        """
        self.channel.queue_declare(queue=queue, durable=True, exclusive=False,
                                   auto_delete=False)
        self.channel.queue_bind(queue=queue, exchange=self._exchange,
                                routing_key=self._routing_key)
        self.channel.basic_qos(prefetch_count=1)
        # Setup up our consumer callback
        self.channel.basic_consume(on_message, queue)
        # This is blocking until channel.stop_consuming is called
        # and will allow us to receive messages
        self.channel.start_consuming()