python-roborock 5.23.0__tar.gz → 5.24.0__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-5.23.0 → python_roborock-5.24.0}/PKG-INFO +1 -1
- {python_roborock-5.23.0 → python_roborock-5.24.0}/pyproject.toml +1 -1
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/rpc/v1_channel.py +8 -2
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/home.py +32 -3
- {python_roborock-5.23.0 → python_roborock-5.24.0}/.gitignore +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/LICENSE +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/README.md +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/broadcast_protocol.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/callbacks.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/cli.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/const.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/b01_q10/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/b01_q10/b01_q10_code_mappings.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/b01_q10/b01_q10_containers.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/b01_q7/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/b01_q7/b01_q7_code_mappings.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/b01_q7/b01_q7_containers.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/code_mappings.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/containers.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/dyad/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/dyad/dyad_code_mappings.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/dyad/dyad_containers.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/v1/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/v1/v1_clean_modes.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/v1/v1_code_mappings.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/v1/v1_containers.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/zeo/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/zeo/zeo_code_mappings.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/zeo/zeo_containers.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/device_features.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/README.md +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/cache.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/device.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/device_manager.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/file_cache.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/rpc/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/rpc/a01_channel.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/rpc/b01_q10_channel.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/rpc/b01_q7_channel.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/a01/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/button_light.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/child_lock.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/clean_history.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/command.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/common.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/consumable.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/do_not_disturb.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/dust_collection.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/map.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/network_info.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/remote.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/status.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/vacuum.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/volume.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q7/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q7/clean_summary.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q7/map.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q7/map_content.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/common.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/traits_mixin.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/child_lock.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/clean_summary.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/command.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/common.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/consumeable.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/device_features.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/do_not_disturb.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/dust_collection_mode.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/flow_led_status.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/led_status.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/map_content.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/maps.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/network_info.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/rooms.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/routines.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/smart_wash_params.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/status.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/valley_electricity_timer.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/volume.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/wash_towel_mode.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/transport/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/transport/channel.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/transport/local_channel.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/transport/mqtt_channel.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/diagnostics.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/exceptions.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/map/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/map/b01_grid_layers.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/map/b01_map_parser.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/map/b01_q10_map_parser.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/map/b01_q10_overlays.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/map/map_parser.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/map/proto/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/map/proto/b01_scmap.proto +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/map/proto/b01_scmap_pb2.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/mqtt/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/mqtt/health_manager.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/mqtt/roborock_session.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/mqtt/session.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/protocol.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/protocols/__init__.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/protocols/a01_protocol.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/protocols/b01_q10_protocol.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/protocols/b01_q7_protocol.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/protocols/v1_protocol.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/py.typed +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/roborock_message.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/roborock_typing.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/util.py +0 -0
- {python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/web_api.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-roborock
|
|
3
|
-
Version: 5.
|
|
3
|
+
Version: 5.24.0
|
|
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 = "5.
|
|
3
|
+
version = "5.24.0"
|
|
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"
|
|
@@ -204,8 +204,14 @@ class V1Channel(Channel):
|
|
|
204
204
|
|
|
205
205
|
@property
|
|
206
206
|
def is_mqtt_connected(self) -> bool:
|
|
207
|
-
"""Return whether MQTT connection is available.
|
|
208
|
-
|
|
207
|
+
"""Return whether MQTT connection is available for the device.
|
|
208
|
+
|
|
209
|
+
This requires the MQTT session to be connected to the broker and
|
|
210
|
+
the subscription to the device's topic to have successfully
|
|
211
|
+
been established (to handle cases where the device is offline
|
|
212
|
+
or deleted).
|
|
213
|
+
"""
|
|
214
|
+
return self._mqtt_channel.is_connected and self._mqtt_unsub is not None
|
|
209
215
|
|
|
210
216
|
@property
|
|
211
217
|
def rpc_channel(self) -> V1RpcChannel:
|
|
@@ -18,10 +18,12 @@ the current map's information and room names as needed.
|
|
|
18
18
|
import asyncio
|
|
19
19
|
import base64
|
|
20
20
|
import logging
|
|
21
|
+
from collections.abc import Callable
|
|
21
22
|
|
|
22
23
|
from roborock.data import CombinedMapInfo, MultiMapsListMapInfo, NamedRoomMapping, RoborockBase
|
|
23
24
|
from roborock.data.v1.v1_code_mappings import RoborockStateCode
|
|
24
25
|
from roborock.devices.cache import DeviceCache
|
|
26
|
+
from roborock.devices.traits.common import TraitUpdateListener
|
|
25
27
|
from roborock.devices.traits.v1 import common
|
|
26
28
|
from roborock.exceptions import RoborockDeviceBusy, RoborockException, RoborockInvalidStatus
|
|
27
29
|
from roborock.roborock_typing import RoborockCommand
|
|
@@ -36,7 +38,7 @@ _LOGGER = logging.getLogger(__name__)
|
|
|
36
38
|
MAP_SLEEP = 3
|
|
37
39
|
|
|
38
40
|
|
|
39
|
-
class HomeTrait(RoborockBase, common.V1TraitMixin):
|
|
41
|
+
class HomeTrait(RoborockBase, common.V1TraitMixin, TraitUpdateListener):
|
|
40
42
|
"""Trait that represents a full view of the home layout."""
|
|
41
43
|
|
|
42
44
|
command = RoborockCommand.GET_MAP_V1 # This is not used
|
|
@@ -66,6 +68,7 @@ class HomeTrait(RoborockBase, common.V1TraitMixin):
|
|
|
66
68
|
accuracy.
|
|
67
69
|
"""
|
|
68
70
|
super().__init__()
|
|
71
|
+
TraitUpdateListener.__init__(self, logger=_LOGGER)
|
|
69
72
|
self._status_trait = status_trait
|
|
70
73
|
self._maps_trait = maps_trait
|
|
71
74
|
self._map_content = map_content
|
|
@@ -100,6 +103,7 @@ class HomeTrait(RoborockBase, common.V1TraitMixin):
|
|
|
100
103
|
_LOGGER.warning("Failed to parse cached home map content, will re-discover: %s", ex)
|
|
101
104
|
self._home_map_content = {}
|
|
102
105
|
else:
|
|
106
|
+
self._notify_update()
|
|
103
107
|
return
|
|
104
108
|
|
|
105
109
|
if self._status_trait.state == RoborockStateCode.cleaning:
|
|
@@ -202,6 +206,7 @@ class HomeTrait(RoborockBase, common.V1TraitMixin):
|
|
|
202
206
|
map_flag := self._maps_trait.current_map
|
|
203
207
|
) is None:
|
|
204
208
|
_LOGGER.debug("Cannot refresh home data without current map info")
|
|
209
|
+
self._notify_update()
|
|
205
210
|
return
|
|
206
211
|
|
|
207
212
|
# Refresh the map content to ensure we have the latest image and object positions
|
|
@@ -212,10 +217,26 @@ class HomeTrait(RoborockBase, common.V1TraitMixin):
|
|
|
212
217
|
map_flag, combined_map_info, new_map_content, update_cache=self._discovery_completed
|
|
213
218
|
)
|
|
214
219
|
|
|
220
|
+
def add_update_listener(self, callback: Callable[[], None]) -> Callable[[], None]:
|
|
221
|
+
"""Register a callback when the trait has been updated.
|
|
222
|
+
|
|
223
|
+
Overridden to immediately execute the callback with the current state if populated.
|
|
224
|
+
"""
|
|
225
|
+
unsub = super().add_update_listener(callback)
|
|
226
|
+
if self._home_map_info is not None:
|
|
227
|
+
callback()
|
|
228
|
+
return unsub
|
|
229
|
+
|
|
215
230
|
@property
|
|
216
231
|
def home_map_info(self) -> dict[int, CombinedMapInfo] | None:
|
|
217
232
|
"""Returns the map information for all cached maps."""
|
|
218
|
-
|
|
233
|
+
if self._home_map_info is None or self._maps_trait.map_info is None:
|
|
234
|
+
return self._home_map_info
|
|
235
|
+
return {
|
|
236
|
+
mi.map_flag: value
|
|
237
|
+
for mi in self._maps_trait.map_info
|
|
238
|
+
if (value := self._home_map_info.get(mi.map_flag)) is not None
|
|
239
|
+
}
|
|
219
240
|
|
|
220
241
|
@property
|
|
221
242
|
def current_map_data(self) -> CombinedMapInfo | None:
|
|
@@ -235,7 +256,13 @@ class HomeTrait(RoborockBase, common.V1TraitMixin):
|
|
|
235
256
|
@property
|
|
236
257
|
def home_map_content(self) -> dict[int, MapContent] | None:
|
|
237
258
|
"""Returns the map content for all cached maps."""
|
|
238
|
-
|
|
259
|
+
if self._home_map_content is None or self._maps_trait.map_info is None:
|
|
260
|
+
return self._home_map_content
|
|
261
|
+
return {
|
|
262
|
+
mi.map_flag: value
|
|
263
|
+
for mi in self._maps_trait.map_info
|
|
264
|
+
if (value := self._home_map_content.get(mi.map_flag)) is not None
|
|
265
|
+
}
|
|
239
266
|
|
|
240
267
|
async def _update_home_cache(
|
|
241
268
|
self, home_map_info: dict[int, CombinedMapInfo], home_map_content: dict[int, MapContent]
|
|
@@ -251,6 +278,7 @@ class HomeTrait(RoborockBase, common.V1TraitMixin):
|
|
|
251
278
|
await self._device_cache.set(device_cache_data)
|
|
252
279
|
self._home_map_info = home_map_info
|
|
253
280
|
self._home_map_content = home_map_content
|
|
281
|
+
self._notify_update()
|
|
254
282
|
|
|
255
283
|
async def _update_current_map(
|
|
256
284
|
self,
|
|
@@ -283,3 +311,4 @@ class HomeTrait(RoborockBase, common.V1TraitMixin):
|
|
|
283
311
|
if self._home_map_content is None:
|
|
284
312
|
self._home_map_content = {}
|
|
285
313
|
self._home_map_content[map_flag] = map_content
|
|
314
|
+
self._notify_update()
|
|
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-5.23.0 → python_roborock-5.24.0}/roborock/data/b01_q10/b01_q10_code_mappings.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/data/b01_q10/b01_q10_containers.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/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
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/__init__.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/button_light.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/child_lock.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/clean_history.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/command.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/consumable.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/do_not_disturb.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/dust_collection.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q10/network_info.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q7/__init__.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q7/clean_summary.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/b01/q7/map_content.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/clean_summary.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/device_features.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/do_not_disturb.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/dust_collection_mode.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/flow_led_status.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/network_info.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/smart_wash_params.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/traits/v1/wash_towel_mode.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/transport/local_channel.py
RENAMED
|
File without changes
|
{python_roborock-5.23.0 → python_roborock-5.24.0}/roborock/devices/transport/mqtt_channel.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
|