docs: def get_devices(self) -> list:
          """Return list of VeSync devices"""
  
          if not self.enabled:
              return None
  
          self.in_process = True
  
          response, _ = helpers.call_api(
              '/cloud/v1/deviceManaged/devices',
              'post',
              headers=helpers.req_headers(self),
              json=helpers.req_body(self, 'devicelist')
          )
  
          if response and helpers.check_response(response, 'get_devices'):
              if 'result' in response and 'list' in response['result']:
                  device_list = response['result']['list']
                  outlets, switches, fans = self.process_devices(device_list)
              else:
                  logger.error('Device list in response not found')
          else:
              logger.error('Error retrieving device list')
  
          self.in_process = False
  
          return (outlets, switches, fans)