code: def wait(self, timeout=None):
          
          if not self.socket_client.isAlive():
              self.socket_client.start()
          self.status_event.wait(timeout=timeout)
docs: Waits until the cast device is ready for communication. The device
          is ready as soon a status message has been received.
  
          If the worker thread is not already running, it will be started.
  
          If the status has already been received then the method returns
          immediately.
  
          :param timeout: a floating point number specifying a timeout for the
                          operation in seconds (or fractions thereof). Or None
                          to block forever.