python-roborock 5.28.1__py3-none-any.whl → 5.29.0__py3-none-any.whl

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-roborock
3
- Version: 5.28.1
3
+ Version: 5.29.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/
@@ -8,7 +8,7 @@ roborock/diagnostics.py,sha256=YIc7BhC6Cy6W2a6hykvfSRPG8NpLrPZCc_7jTX2Zdho,5091
8
8
  roborock/exceptions.py,sha256=t2YvfSRMymZPtdPV238itjxVJTaTq5-uBL_EM5FTlfg,3159
9
9
  roborock/protocol.py,sha256=eNUL6UGmtSdfsGM1mlYjmorukGGudV45iKXUA7a-Qa8,20193
10
10
  roborock/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- roborock/roborock_message.py,sha256=e7gDnBhv2RkG3G2eXmoNVnt5aUWWlLEA3i5LTIBFBy8,7349
11
+ roborock/roborock_message.py,sha256=ZYtn7MXuIILU6u6a-XuB_wG3LaRIiqNv5bWo9ueqbjQ,8064
12
12
  roborock/roborock_typing.py,sha256=Rwx0c0oZCMY-4O8VMLnFSO_OUNb_D59cyG_ktZTZoZI,17134
13
13
  roborock/util.py,sha256=mjw329ujLjoWPPAr9mG0VZstaVL06dmVvNnYACB-Pxk,1650
14
14
  roborock/web_api.py,sha256=M_A4PiRK5cwkoT3oS8fvglOU97s1jpWKuuCxeeCiF_E,37507
@@ -117,8 +117,8 @@ roborock/testing/channel.py,sha256=59ulziyc816-D5Kj4DCO68vAzTeg11QMCOW7kVOVIMw,6
117
117
  roborock/testing/cloud.py,sha256=VPABpq9-SUy1FAPVkh0U0Xw-yWIbEx3xZZ8gy9BUVFs,11122
118
118
  roborock/testing/simulator.py,sha256=g8ZUWVSjgAzuRRxWOCeOq-7deodyEItwUpqEw9RzCmQ,4347
119
119
  roborock/testing/v1_simulator.py,sha256=TQ2PsRoP_4kJvVn-Tm532ByHuaCKltsVjvTa2Ju4PAo,14407
120
- python_roborock-5.28.1.dist-info/METADATA,sha256=timjYcEHy66gNnz7Aa2dRv_4eGWIOfmE2TkgQeB53ec,5281
121
- python_roborock-5.28.1.dist-info/WHEEL,sha256=lCkmxWfQsSc9CfIClYeavTdQeEX2toPqufh9gI35EQA,87
122
- python_roborock-5.28.1.dist-info/entry_points.txt,sha256=EvC1nMqi9ZXKgZnqlNXA33v_3nzgPNjnM0mzWlrehnY,47
123
- python_roborock-5.28.1.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
124
- python_roborock-5.28.1.dist-info/RECORD,,
120
+ python_roborock-5.29.0.dist-info/METADATA,sha256=idOzS4c9md520AvXk8QFc33rFP-RB2FHbt45zGDrjhI,5281
121
+ python_roborock-5.29.0.dist-info/WHEEL,sha256=lCkmxWfQsSc9CfIClYeavTdQeEX2toPqufh9gI35EQA,87
122
+ python_roborock-5.29.0.dist-info/entry_points.txt,sha256=EvC1nMqi9ZXKgZnqlNXA33v_3nzgPNjnM0mzWlrehnY,47
123
+ python_roborock-5.29.0.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
124
+ python_roborock-5.29.0.dist-info/RECORD,,
@@ -274,6 +274,9 @@ ROBOROCK_DATA_CONSUMABLE_PROTOCOL = [
274
274
  ]
275
275
 
276
276
 
277
+ MAX_PAYLOAD_REPR_LEN = 1024
278
+
279
+
277
280
  @dataclass
278
281
  class RoborockMessage:
279
282
  protocol: RoborockMessageProtocol
@@ -282,3 +285,18 @@ class RoborockMessage:
282
285
  version: bytes = b"1.0"
283
286
  random: int = field(default_factory=lambda: get_next_int(10000, 99999))
284
287
  timestamp: int = field(default_factory=lambda: get_timestamp())
288
+
289
+ def __repr__(self) -> str:
290
+ payload_repr = "None"
291
+ if self.payload is not None:
292
+ if isinstance(self.payload, (bytes, bytearray, str)) and len(self.payload) > MAX_PAYLOAD_REPR_LEN:
293
+ r = repr(self.payload[:MAX_PAYLOAD_REPR_LEN])
294
+ quote = r[-1]
295
+ payload_repr = f"{r[:-1]}...{quote} (length: {len(self.payload)})"
296
+ else:
297
+ payload_repr = repr(self.payload)
298
+ return (
299
+ f"RoborockMessage(protocol={self.protocol}, payload={payload_repr}, "
300
+ f"seq={self.seq}, version={self.version!r}, random={self.random}, "
301
+ f"timestamp={self.timestamp})"
302
+ )