Decode all lightlevels

This commit is contained in:
Thomas Lovén 2022-10-17 20:49:16 +02:00
parent 5dd7dd331b
commit a7ecb054c1
3 changed files with 13 additions and 14 deletions

View File

@ -50,7 +50,6 @@ async def get_site_data(username, password, siteId):
return site_data return site_data
async with ClientSession(base_url=API_BASE_URL, headers=headers) as session: async with ClientSession(base_url=API_BASE_URL, headers=headers) as session:
session_token = await _login(session, username, password) session_token = await _login(session, username, password)
_LOGGER.debug("Session token: %s", session_token)
session.headers["X-Parse-Session-Token"] = session_token session.headers["X-Parse-Session-Token"] = session_token
details = await _get_site_details(session, siteId) details = await _get_site_details(session, siteId)
site_data = details site_data = details
@ -59,10 +58,8 @@ async def get_site_data(username, password, siteId):
async def get_sites(username, password): async def get_sites(username, password):
async with ClientSession(base_url=API_BASE_URL, headers=headers) as session: async with ClientSession(base_url=API_BASE_URL, headers=headers) as session:
session_token = await _login(session, username, password) session_token = await _login(session, username, password)
_LOGGER.debug("Session token: %s", session_token)
session.headers["X-Parse-Session-Token"] = session_token session.headers["X-Parse-Session-Token"] = session_token
sites = await _get_sites(session) sites = await _get_sites(session)
_LOGGER.debug("Sites: %s", sites)
return sites["result"] return sites["result"]

View File

@ -55,7 +55,7 @@ class PlejdMesh():
def _disconnect(arg): def _disconnect(arg):
if not self.connected: return if not self.connected: return
_LOGGER.error("_disconnect %s", arg) _LOGGER.debug("_disconnect %s", arg)
self.client = None self.client = None
self._connected = False self._connected = False
if disconnect_callback: if disconnect_callback:
@ -73,7 +73,7 @@ class PlejdMesh():
_LOGGER.warning("Error connecting to Plejd device: %s", str(e)) _LOGGER.warning("Error connecting to Plejd device: %s", str(e))
else: else:
if len(self.mesh_nodes) == 0: if len(self.mesh_nodes) == 0:
_LOGGER.warning("Failed to connect to plejd mesh - no devices discovered") _LOGGER.debug("Failed to connect to plejd mesh - no devices discovered")
else: else:
_LOGGER.warning("Failed to connect to plejd mesh - %s", self.mesh_nodes) _LOGGER.warning("Failed to connect to plejd mesh - %s", self.mesh_nodes)
return False return False
@ -99,10 +99,12 @@ class PlejdMesh():
async def _lightlevel(_, lightlevel): async def _lightlevel(_, lightlevel):
_LOGGER.debug("Received LightLevel %s", lightlevel) _LOGGER.debug("Received LightLevel %s", lightlevel)
for i in range(0, len(lightlevel), 10):
ll = lightlevel[i:i+10]
deviceState = { deviceState = {
"address": int(lightlevel[0]), "address": int(ll[0]),
"state": bool(lightlevel[1]), "state": bool(ll[1]),
"dim": int.from_bytes(lightlevel[5:7], "little"), "dim": int.from_bytes(ll[5:7], "little"),
} }
_LOGGER.debug("Decoded LightLevel %s", deviceState) _LOGGER.debug("Decoded LightLevel %s", deviceState)
if self.statecallback and deviceState is not None: if self.statecallback and deviceState is not None:

View File

@ -44,7 +44,7 @@ class PlejdDevice:
self._dim = None self._dim = None
def __repr__(self): def __repr__(self):
return f"<PlejdDevice(manager, {self.address}, {self.BLE_address}, {self.data}>" return f"<PlejdDevice(<manager>, {self.address}, {self.BLE_address}, {self.data}>"
pass pass
@property @property