Get appliance code from serial number
This commit is contained in:
parent
9f130e2e85
commit
9971fe95e2
@ -98,6 +98,13 @@ class HonAppliance:
|
||||
def nick_name(self) -> str:
|
||||
return self._check_name_zone("nickName")
|
||||
|
||||
@property
|
||||
def code(self) -> str:
|
||||
if code := self.info.get("code"):
|
||||
return code
|
||||
serial_number = self.info.get("serialNumber", "")
|
||||
return serial_number[:8] if len(serial_number) < 18 else serial_number[:11]
|
||||
|
||||
@property
|
||||
def commands_options(self):
|
||||
return self._appliance_model.get("options")
|
||||
|
@ -76,18 +76,19 @@ class HonAPI:
|
||||
"macAddress": appliance.mac_address,
|
||||
"os": const.OS,
|
||||
"appVersion": const.APP_VERSION,
|
||||
"series": appliance.info["series"],
|
||||
"code": appliance.code,
|
||||
}
|
||||
if firmware_id := appliance.info.get("eepromId"):
|
||||
params["firmwareId"] = firmware_id
|
||||
if firmware_version := appliance.info.get("fwVersion"):
|
||||
params["fwVersion"] = firmware_version
|
||||
if code := appliance.info.get("code"):
|
||||
params["code"] = code
|
||||
if series := appliance.info.get("series"):
|
||||
params["series"] = series
|
||||
url: str = f"{const.API_URL}/commands/v1/retrieve"
|
||||
async with self._hon.get(url, params=params) as response:
|
||||
result: Dict = (await response.json()).get("payload", {})
|
||||
if not result or result.pop("resultCode") != "0":
|
||||
_LOGGER.error(await response.json())
|
||||
return {}
|
||||
return result
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user