code: def run(self):
          
          self._setUp()
  
          naming = 'skunkworks.lbs.%s.%s.%s' % (settings.ENVIRONMENT_STAGE, \
              self.service_name.lower(), self.message_type.lower())
  
          self.channel.queue_declare(queue=naming, durable=True, exclusive=False, auto_delete=False)
          self.channel.exchange_declare(exchange=naming, type="direct", durable=True, auto_delete=False,)
          self.channel.queue_bind(queue=naming, exchange=naming, routing_key=naming)
  
          self.channel.basic_consume(queue=self.queue, no_ack=True,
                 callback=self._on_message_received,
                 consumer_tag=self.__class__.__name__)
          try:
              while True:
                  self.channel.wait()
          finally:
              self.channel.basic_cancel(self.__class__.__name__)
docs: Consume message from the Advanced Message Queuing Protocol
          (AMPQ) compliant broker as soon as they are queued, and call
          the instance method ``__on_message_received`` that the
          inheriting class must have implemented.