docs: def scheduler(self, sleep_time=0.2):
          """Starts the scheduler to check for scheduled calls and execute them
          at the correct time.
  
          Args:
            sleep_time (float): The amount of time to wait in seconds between
              each loop iteration. This prevents the scheduler from consuming
              100% of the host's CPU. Defaults to 0.2 seconds.
  
          Returns:
            None
  
          """
  
          while self.listening:
              # If we have any scheduled calls, execute them and remove them from
              # our list of scheduled calls.
              if self.scheduled_calls:
                  timestamp = time.time()
                  self.scheduled_calls[:] = [item for item in self.scheduled_calls
                                             if not self.time_reached(timestamp, item)]
              time.sleep(sleep_time)
  
          logger.info("Shutting down the call scheduler...")