python-roborock 7.8.0__tar.gz → 7.8.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {python_roborock-7.8.0 → python_roborock-7.8.2}/PKG-INFO +1 -1
- {python_roborock-7.8.0 → python_roborock-7.8.2}/pyproject.toml +1 -1
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/web_api.py +33 -4
- {python_roborock-7.8.0 → python_roborock-7.8.2}/.gitignore +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/LICENSE +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/README.md +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/broadcast_protocol.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/callbacks.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/cli.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/const.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/b01_q10/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/b01_q10/b01_q10_code_mappings.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/b01_q10/b01_q10_containers.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/b01_q7/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/b01_q7/b01_q7_code_mappings.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/b01_q7/b01_q7_containers.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/code_mappings.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/containers.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/dyad/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/dyad/dyad_code_mappings.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/dyad/dyad_containers.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/mower/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/mower/mower_code_mappings.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/mower/mower_containers.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/v1/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/v1/v1_clean_modes.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/v1/v1_code_mappings.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/v1/v1_containers.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/zeo/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/zeo/zeo_code_mappings.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/zeo/zeo_containers.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/device_features.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/README.md +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/cache.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/device.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/device_manager.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/file_cache.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/rpc/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/rpc/a01_channel.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/rpc/b01_q10_channel.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/rpc/b01_q7_channel.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/rpc/v1_channel.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/a01/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/a01/device_feature.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/button_light.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/child_lock.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/clean_history.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/command.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/common.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/consumable.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/do_not_disturb.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/dust_collection.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/goto.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/map.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/maps.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/network_info.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/remote.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/status.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/vacuum.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/volume.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q7/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q7/clean_summary.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q7/map.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q7/map_content.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/common.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/traits_mixin.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/child_lock.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/clean_summary.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/command.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/common.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/consumeable.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/device_features.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/do_not_disturb.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/dust_collection_mode.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/flow_led_status.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/home.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/led_status.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/map_content.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/maps.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/network_info.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/obstacle_photos.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/rooms.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/routines.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/smart_wash_params.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/status.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/valley_electricity_timer.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/volume.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/wash_towel_mode.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/transport/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/transport/channel.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/transport/local_channel.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/transport/mqtt_channel.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/diagnostics.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/exceptions.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/map/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/map/b01_grid_layers.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/map/b01_map_parser.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/map/b01_q10_map_parser.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/map/b01_q10_overlays.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/map/b01_q10_render.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/map/map_parser.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/map/proto/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/map/proto/b01_scmap.proto +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/map/proto/b01_scmap_pb2.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/map/room_colors.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/mqtt/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/mqtt/health_manager.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/mqtt/roborock_session.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/mqtt/session.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/protocol.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/protocols/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/protocols/a01_protocol.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/protocols/b01_q10_protocol.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/protocols/b01_q7_protocol.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/protocols/v1_protocol.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/py.typed +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/roborock_message.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/roborock_typing.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/testing/__init__.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/testing/a01_simulator.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/testing/b01_q10_simulator.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/testing/channel.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/testing/cloud.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/testing/simulator.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/testing/v1_simulator.py +0 -0
- {python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/util.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: python-roborock
|
|
3
|
-
Version: 7.8.
|
|
3
|
+
Version: 7.8.2
|
|
4
4
|
Summary: A package to control Roborock vacuums.
|
|
5
5
|
Project-URL: Repository, https://github.com/python-roborock/python-roborock
|
|
6
6
|
Project-URL: Documentation, https://python-roborock.readthedocs.io/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "python-roborock"
|
|
3
|
-
version = "7.8.
|
|
3
|
+
version = "7.8.2"
|
|
4
4
|
description = "A package to control Roborock vacuums."
|
|
5
5
|
authors = [{ name = "humbertogontijo", email = "humbertogontijo@users.noreply.github.com" }, {name="Lash-L"}, {name="allenporter"}]
|
|
6
6
|
requires-python = ">=3.11, <4"
|
|
@@ -38,6 +38,10 @@ BASE_URLS = [
|
|
|
38
38
|
"https://ruiot.roborock.com",
|
|
39
39
|
]
|
|
40
40
|
|
|
41
|
+
# Fallback user agreement version, used only if the latest version cannot be fetched.
|
|
42
|
+
DEFAULT_AGREEMENT_MAJOR_VERSION = 14
|
|
43
|
+
DEFAULT_AGREEMENT_MINOR_VERSION = 0
|
|
44
|
+
|
|
41
45
|
|
|
42
46
|
@dataclass
|
|
43
47
|
class IotLoginInfo:
|
|
@@ -292,6 +296,34 @@ class RoborockApiClient:
|
|
|
292
296
|
|
|
293
297
|
return code_response["data"]["k"]
|
|
294
298
|
|
|
299
|
+
async def _get_agreement_version(self, country: str) -> dict[str, int]:
|
|
300
|
+
"""Get the latest user agreement version for the given country.
|
|
301
|
+
|
|
302
|
+
The login endpoint rejects a stale agreement version with code 3006. The
|
|
303
|
+
current version differs per server and per country, so it must be looked
|
|
304
|
+
up rather than hardcoded. Falls back to the previously hardcoded values
|
|
305
|
+
if the lookup fails so that login is never blocked by this request.
|
|
306
|
+
"""
|
|
307
|
+
try:
|
|
308
|
+
base_url = await self.base_url
|
|
309
|
+
agreement_request = PreparedRequest(base_url, self.session, {"header_clientlang": "en"})
|
|
310
|
+
response = await agreement_request.request(
|
|
311
|
+
"get",
|
|
312
|
+
"/api/v3/app/agreement/latest",
|
|
313
|
+
params={"country": country},
|
|
314
|
+
)
|
|
315
|
+
if response is not None and response.get("code") == 200:
|
|
316
|
+
data = response.get("data") or {}
|
|
317
|
+
major = data.get("majorVersion")
|
|
318
|
+
minor = data.get("minorVersion")
|
|
319
|
+
if isinstance(major, int) and isinstance(minor, int):
|
|
320
|
+
_LOGGER.debug("Using user agreement version %s.%s for %s", major, minor, country)
|
|
321
|
+
return {"majorVersion": major, "minorVersion": minor}
|
|
322
|
+
_LOGGER.debug("Unexpected agreement version response: %s", response)
|
|
323
|
+
except RoborockException as err:
|
|
324
|
+
_LOGGER.debug("Could not fetch latest user agreement version: %s", err)
|
|
325
|
+
return {"majorVersion": DEFAULT_AGREEMENT_MAJOR_VERSION, "minorVersion": DEFAULT_AGREEMENT_MINOR_VERSION}
|
|
326
|
+
|
|
295
327
|
async def code_login_v4(
|
|
296
328
|
self, code: int | str, country: str | None = None, country_code: int | None = None
|
|
297
329
|
) -> UserData:
|
|
@@ -334,10 +366,7 @@ class RoborockApiClient:
|
|
|
334
366
|
"countryCode": country_code,
|
|
335
367
|
"email": self._username,
|
|
336
368
|
"code": code,
|
|
337
|
-
|
|
338
|
-
# dynamic https://usiot.roborock.com/api/v3/app/agreement/latest?country=US
|
|
339
|
-
"majorVersion": 14,
|
|
340
|
-
"minorVersion": 0,
|
|
369
|
+
**await self._get_agreement_version(country),
|
|
341
370
|
},
|
|
342
371
|
)
|
|
343
372
|
if login_response is None:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/b01_q10/b01_q10_code_mappings.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/data/b01_q7/b01_q7_code_mappings.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/a01/device_feature.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/button_light.py
RENAMED
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/child_lock.py
RENAMED
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/clean_history.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/consumable.py
RENAMED
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/do_not_disturb.py
RENAMED
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/dust_collection.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q10/network_info.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q7/clean_summary.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/b01/q7/map_content.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/device_features.py
RENAMED
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/do_not_disturb.py
RENAMED
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/dust_collection_mode.py
RENAMED
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/flow_led_status.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/obstacle_photos.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/smart_wash_params.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-7.8.0 → python_roborock-7.8.2}/roborock/devices/traits/v1/wash_towel_mode.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|