code: async def disconnect(self):
          
          if not self._watch_stopped.is_set():
              log.debug('Stopping watcher task')
              self._watch_stopping.set()
              await self._watch_stopped.wait()
              self._watch_stopping.clear()
  
          if self.is_connected():
              log.debug('Closing model connection')
              await self._connector.disconnect()
              self._info = None
docs: Shut down the watcher task and close websockets.