From c8d1327beeae1ab5a770afc4106534f77c3e131a Mon Sep 17 00:00:00 2001 From: Jakob Schlyter Date: Thu, 11 Dec 2025 08:41:11 +0100 Subject: [PATCH 1/2] Do not ensure token for calls to gestalt --- ttls/client.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/ttls/client.py b/ttls/client.py index b4ac5cd..5581ed6 100644 --- a/ttls/client.py +++ b/ttls/client.py @@ -213,9 +213,10 @@ async def detect_api_version(self) -> int: self._api_version = None return None - async def _post(self, endpoint: str, **kwargs) -> Any: + async def _post(self, endpoint: str, ensure_token: bool = True, **kwargs) -> Any: await self.get_api_version() - await self.ensure_token() + if ensure_token: + await self.ensure_token() _LOGGER.debug("POST endpoint %s", endpoint) if "json" in kwargs: _LOGGER.debug("POST payload %s", kwargs["json"]) @@ -237,9 +238,10 @@ async def _post(self, endpoint: str, **kwargs) -> Any: else: raise e - async def _get(self, endpoint: str, **kwargs) -> Any: + async def _get(self, endpoint: str, ensure_token: bool = True, **kwargs) -> Any: await self.get_api_version() - await self.ensure_token() + if ensure_token: + await self.ensure_token() _LOGGER.debug("GET endpoint %s", endpoint) headers = kwargs.pop("headers", self._headers) retry_num = kwargs.pop("retry_num", 0) @@ -334,7 +336,7 @@ async def get_firmware_version(self) -> Any: return self._valid_response(await self._get(endpoint)) async def get_details(self) -> Any: - return self._valid_response(await self._get("gestalt")) + return self._valid_response(await self._get("gestalt", ensure_token=False)) async def is_on(self) -> bool | None: mode = await self.get_mode() From 1e17ebb2809fb0179f8ea79bf1a56eb6db9fdfb1 Mon Sep 17 00:00:00 2001 From: Jakob Schlyter Date: Thu, 11 Dec 2025 09:02:25 +0100 Subject: [PATCH 2/2] Rename ensure_token arg to require_token --- ttls/client.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ttls/client.py b/ttls/client.py index 5581ed6..9807084 100644 --- a/ttls/client.py +++ b/ttls/client.py @@ -213,9 +213,9 @@ async def detect_api_version(self) -> int: self._api_version = None return None - async def _post(self, endpoint: str, ensure_token: bool = True, **kwargs) -> Any: + async def _post(self, endpoint: str, require_token: bool = True, **kwargs) -> Any: await self.get_api_version() - if ensure_token: + if require_token: await self.ensure_token() _LOGGER.debug("POST endpoint %s", endpoint) if "json" in kwargs: @@ -238,9 +238,9 @@ async def _post(self, endpoint: str, ensure_token: bool = True, **kwargs) -> Any else: raise e - async def _get(self, endpoint: str, ensure_token: bool = True, **kwargs) -> Any: + async def _get(self, endpoint: str, require_token: bool = True, **kwargs) -> Any: await self.get_api_version() - if ensure_token: + if require_token: await self.ensure_token() _LOGGER.debug("GET endpoint %s", endpoint) headers = kwargs.pop("headers", self._headers) @@ -336,7 +336,7 @@ async def get_firmware_version(self) -> Any: return self._valid_response(await self._get(endpoint)) async def get_details(self) -> Any: - return self._valid_response(await self._get("gestalt", ensure_token=False)) + return self._valid_response(await self._get("gestalt", require_token=False)) async def is_on(self) -> bool | None: mode = await self.get_mode()