feat: use newer eufy device api
This commit is contained in:
parent
76aafc32a6
commit
f38fa9ca54
|
|
@ -132,29 +132,29 @@ def get_eufy_vacuums(self):
|
||||||
phone_code=self[CONF_COUNTRY_CODE],
|
phone_code=self[CONF_COUNTRY_CODE],
|
||||||
)
|
)
|
||||||
|
|
||||||
items = device_response["items"]
|
items = device_response["devices"]
|
||||||
self[CONF_VACS] = {}
|
self[CONF_VACS] = {}
|
||||||
for item in items:
|
for item in items:
|
||||||
if item["device"]["product"]["appliance"] == "Cleaning":
|
if item["product"]["appliance"] == "Cleaning":
|
||||||
try:
|
try:
|
||||||
device = tuya_client.get_device(item["device"]["id"])
|
device = tuya_client.get_device(item["id"])
|
||||||
_LOGGER.debug("Robovac schema: {}".format(device["schema"]))
|
_LOGGER.debug("Robovac schema: {}".format(device["schema"]))
|
||||||
|
|
||||||
vac_details = {
|
vac_details = {
|
||||||
CONF_ID: item["device"]["id"],
|
CONF_ID: item["id"],
|
||||||
CONF_MODEL: item["device"]["product"]["product_code"],
|
CONF_MODEL: item["product"]["product_code"],
|
||||||
CONF_NAME: item["device"]["alias_name"],
|
CONF_NAME: item["alias_name"],
|
||||||
CONF_DESCRIPTION: item["device"]["name"],
|
CONF_DESCRIPTION: item["name"],
|
||||||
CONF_MAC: item["device"]["wifi"]["mac"],
|
CONF_MAC: item["wifi"]["mac"],
|
||||||
CONF_IP_ADDRESS: "",
|
CONF_IP_ADDRESS: "",
|
||||||
CONF_AUTODISCOVERY: True,
|
CONF_AUTODISCOVERY: True,
|
||||||
CONF_ACCESS_TOKEN: device["localKey"],
|
CONF_ACCESS_TOKEN: device["localKey"],
|
||||||
}
|
}
|
||||||
self[CONF_VACS][item["device"]["id"]] = vac_details
|
self[CONF_VACS][item["id"]] = vac_details
|
||||||
except:
|
except:
|
||||||
_LOGGER.debug(
|
_LOGGER.debug(
|
||||||
"Vacuum {} found on Eufy, but not on Tuya. Skipping.".format(
|
"Vacuum {} found on Eufy, but not on Tuya. Skipping.".format(
|
||||||
item["device"]["id"]
|
item["id"]
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ class EufyLogon:
|
||||||
return requests.request("GET", setting_url, headers=eufyheaders, timeout=1.5)
|
return requests.request("GET", setting_url, headers=eufyheaders, timeout=1.5)
|
||||||
|
|
||||||
def get_device_info(self, url, userid, token):
|
def get_device_info(self, url, userid, token):
|
||||||
device_url = url + "/v1/device/list/devices-and-groups"
|
device_url = url + "/v1/device/v2"
|
||||||
eufyheaders["token"] = token
|
eufyheaders["token"] = token
|
||||||
eufyheaders["id"] = userid
|
eufyheaders["id"] = userid
|
||||||
return requests.request("GET", device_url, headers=eufyheaders)
|
return requests.request("GET", device_url, headers=eufyheaders)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue