docs: async def listener(self, channel):
          """
          Single-channel listener
          """
          while True:
              message = await self.channel_layer.receive(channel)
              if not message.get("type", None):
                  raise ValueError("Worker received message with no type.")
              # Make a scope and get an application instance for it
              scope = {"type": "channel", "channel": channel}
              instance_queue = self.get_or_create_application_instance(channel, scope)
              # Run the message into the app
              await instance_queue.put(message)