def METHOD_NAME(self):
    """Connect to the RabbitMQ server and start listening for messages."""
    self._connection = pika.BlockingConnection(
        pika.ConnectionParameters(
            host=self.config.rabbitmq.host,
            port=self.config.rabbitmq.port,
            virtual_host=self.config.rabbitmq.vhost,
            credentials=pika.credentials.PlainCredentials(
                self.config.rabbitmq.user,
                self.config.rabbitmq.password,
            ),
        )
    )
    self._channel = self._connection.channel()
    self._channel.exchange_declare(
        exchange=EXCHANGE, exchange_type=EXCHANGE_TYPE, durable=True
    )
    self._channel.queue_declare(queue=QUEUE, durable=True)
    self._channel.queue_bind(
        exchange=EXCHANGE, queue=QUEUE, routing_key=ROUTING_KEY
    )
    logger.info(" Listening for messages...")
    self._channel.basic_consume(QUEUE, self.msg_received_callback, auto_ack=False)