pymammotion 0.0.52__tar.gz → 0.0.54__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.

Potentially problematic release.


This version of pymammotion might be problematic. Click here for more details.

Files changed (108) hide show
  1. {pymammotion-0.0.52 → pymammotion-0.0.54}/PKG-INFO +1 -1
  2. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/device.py +0 -2
  3. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/devices/mammotion.py +20 -2
  4. {pymammotion-0.0.52 → pymammotion-0.0.54}/pyproject.toml +2 -2
  5. {pymammotion-0.0.52 → pymammotion-0.0.54}/LICENSE +0 -0
  6. {pymammotion-0.0.52 → pymammotion-0.0.54}/README.md +0 -0
  7. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/__init__.py +0 -0
  8. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/aliyun/__init__.py +0 -0
  9. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/aliyun/cloud_gateway.py +0 -0
  10. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/aliyun/cloud_service.py +0 -0
  11. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/aliyun/dataclass/aep_response.py +0 -0
  12. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/aliyun/dataclass/connect_response.py +0 -0
  13. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/aliyun/dataclass/dev_by_account_response.py +0 -0
  14. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/aliyun/dataclass/login_by_oauth_response.py +0 -0
  15. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/aliyun/dataclass/regions_response.py +0 -0
  16. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/aliyun/dataclass/session_by_authcode_response.py +0 -0
  17. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/aliyun/tmp_constant.py +0 -0
  18. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/bluetooth/__init__.py +0 -0
  19. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/bluetooth/ble.py +0 -0
  20. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/bluetooth/ble_message.py +0 -0
  21. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/bluetooth/const.py +0 -0
  22. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/bluetooth/data/__init__.py +0 -0
  23. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/bluetooth/data/convert.py +0 -0
  24. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/bluetooth/data/framectrldata.py +0 -0
  25. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/bluetooth/data/notifydata.py +0 -0
  26. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/const.py +0 -0
  27. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/__init__.py +0 -0
  28. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/__init__.py +0 -0
  29. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/enums.py +0 -0
  30. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/excute_boarder_params.py +0 -0
  31. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/execute_boarder.py +0 -0
  32. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/generate_route_information.py +0 -0
  33. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/hash_list.py +0 -0
  34. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/location.py +0 -0
  35. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/mowing_modes.py +0 -0
  36. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/plan.py +0 -0
  37. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/rapid_state.py +0 -0
  38. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/model/region_data.py +0 -0
  39. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/mqtt/__init__.py +0 -0
  40. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/mqtt/event.py +0 -0
  41. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/mqtt/properties.py +0 -0
  42. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/mqtt/status.py +0 -0
  43. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/data/state_manager.py +0 -0
  44. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/event/__init__.py +0 -0
  45. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/event/event.py +0 -0
  46. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/http/_init_.py +0 -0
  47. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/http/http.py +0 -0
  48. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/__init__.py +0 -0
  49. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/commands/__init__.py +0 -0
  50. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/commands/abstract_message.py +0 -0
  51. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/commands/mammotion_command.py +0 -0
  52. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/commands/messages/__init__.py +0 -0
  53. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/commands/messages/driver.py +0 -0
  54. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/commands/messages/media.py +0 -0
  55. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/commands/messages/navigation.py +0 -0
  56. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/commands/messages/network.py +0 -0
  57. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/commands/messages/ota.py +0 -0
  58. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/commands/messages/system.py +0 -0
  59. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/commands/messages/video.py +0 -0
  60. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/control/__init__.py +0 -0
  61. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/control/joystick.py +0 -0
  62. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mammotion/devices/__init__.py +0 -0
  63. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mqtt/__init__.py +0 -0
  64. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/mqtt/mammotion_mqtt.py +0 -0
  65. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/__init__.py +0 -0
  66. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/common.proto +0 -0
  67. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/common.py +0 -0
  68. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/common_pb2.py +0 -0
  69. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/common_pb2.pyi +0 -0
  70. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/dev_net.proto +0 -0
  71. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/dev_net.py +0 -0
  72. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/dev_net_pb2.py +0 -0
  73. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/dev_net_pb2.pyi +0 -0
  74. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/luba_msg.proto +0 -0
  75. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/luba_msg.py +0 -0
  76. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/luba_msg_pb2.py +0 -0
  77. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/luba_msg_pb2.pyi +0 -0
  78. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/luba_mul.proto +0 -0
  79. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/luba_mul.py +0 -0
  80. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/luba_mul_pb2.py +0 -0
  81. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/luba_mul_pb2.pyi +0 -0
  82. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_driver.proto +0 -0
  83. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_driver.py +0 -0
  84. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_driver_pb2.py +0 -0
  85. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_driver_pb2.pyi +0 -0
  86. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_nav.proto +0 -0
  87. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_nav.py +0 -0
  88. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_nav_pb2.py +0 -0
  89. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_nav_pb2.pyi +0 -0
  90. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_ota.proto +0 -0
  91. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_ota.py +0 -0
  92. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_ota_pb2.py +0 -0
  93. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_ota_pb2.pyi +0 -0
  94. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_pept.proto +0 -0
  95. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_pept.py +0 -0
  96. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_pept_pb2.py +0 -0
  97. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_pept_pb2.pyi +0 -0
  98. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_sys.proto +0 -0
  99. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_sys.py +0 -0
  100. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_sys_pb2.py +0 -0
  101. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/proto/mctrl_sys_pb2.pyi +0 -0
  102. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/py.typed +0 -0
  103. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/utility/constant/__init__.py +0 -0
  104. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/utility/constant/device_constant.py +0 -0
  105. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/utility/datatype_converter.py +0 -0
  106. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/utility/device_type.py +0 -0
  107. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/utility/periodic.py +0 -0
  108. {pymammotion-0.0.52 → pymammotion-0.0.54}/pymammotion/utility/rocker_util.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pymammotion
3
- Version: 0.0.52
3
+ Version: 0.0.54
4
4
  Summary:
5
5
  License: GNU-3.0
6
6
  Author: Michael Arthur
@@ -2,8 +2,6 @@
2
2
 
3
3
  from dataclasses import dataclass
4
4
 
5
- import betterproto
6
-
7
5
  from pymammotion.data.model import HashList
8
6
  from pymammotion.data.model.location import Location
9
7
  from pymammotion.proto.dev_net import DevNet
@@ -192,8 +192,6 @@ class MammotionBaseDevice:
192
192
  region_data.current_frame = current_frame
193
193
  await self._send_command_with_args("get_regional_data", regional_data=region_data)
194
194
 
195
-
196
-
197
195
  def _update_raw_data(self, data: bytes) -> None:
198
196
  """Update raw and model data from notifications."""
199
197
  tmp_msg = LubaMsg().parse(data)
@@ -217,6 +215,9 @@ class MammotionBaseDevice:
217
215
  def _update_nav_data(self, tmp_msg):
218
216
  """Update navigation data."""
219
217
  nav_sub_msg = betterproto.which_one_of(tmp_msg.nav, "SubNavMsg")
218
+ if nav_sub_msg[1] is None:
219
+ _LOGGER.debug("Sub message was NoneType %s", nav_sub_msg[0])
220
+ return
220
221
  nav = self._raw_data.get("nav", {})
221
222
  if isinstance(nav_sub_msg[1], int):
222
223
  nav[nav_sub_msg[0]] = nav_sub_msg[1]
@@ -227,6 +228,9 @@ class MammotionBaseDevice:
227
228
  def _update_sys_data(self, tmp_msg):
228
229
  """Update system data."""
229
230
  sys_sub_msg = betterproto.which_one_of(tmp_msg.sys, "SubSysMsg")
231
+ if sys_sub_msg[1] is None:
232
+ _LOGGER.debug("Sub message was NoneType %s", sys_sub_msg[0])
233
+ return
230
234
  sys = self._raw_data.get("sys", {})
231
235
  sys[sys_sub_msg[0]] = sys_sub_msg[1].to_dict(casing=betterproto.Casing.SNAKE)
232
236
  self._raw_data["sys"] = sys
@@ -234,6 +238,9 @@ class MammotionBaseDevice:
234
238
  def _update_driver_data(self, tmp_msg):
235
239
  """Update driver data."""
236
240
  drv_sub_msg = betterproto.which_one_of(tmp_msg.driver, "SubDrvMsg")
241
+ if drv_sub_msg[1] is None:
242
+ _LOGGER.debug("Sub message was NoneType %s", drv_sub_msg[0])
243
+ return
237
244
  drv = self._raw_data.get("driver", {})
238
245
  drv[drv_sub_msg[0]] = drv_sub_msg[1].to_dict(casing=betterproto.Casing.SNAKE)
239
246
  self._raw_data["driver"] = drv
@@ -241,6 +248,9 @@ class MammotionBaseDevice:
241
248
  def _update_net_data(self, tmp_msg):
242
249
  """Update network data."""
243
250
  net_sub_msg = betterproto.which_one_of(tmp_msg.net, "NetSubType")
251
+ if net_sub_msg[1] is None:
252
+ _LOGGER.debug("Sub message was NoneType %s", net_sub_msg[0])
253
+ return
244
254
  net = self._raw_data.get("net", {})
245
255
  if isinstance(net_sub_msg[1], int):
246
256
  net[net_sub_msg[0]] = net_sub_msg[1]
@@ -251,6 +261,9 @@ class MammotionBaseDevice:
251
261
  def _update_mul_data(self, tmp_msg):
252
262
  """Update mul data."""
253
263
  mul_sub_msg = betterproto.which_one_of(tmp_msg.mul, "SubMul")
264
+ if mul_sub_msg[1] is None:
265
+ _LOGGER.debug("Sub message was NoneType %s", mul_sub_msg[0])
266
+ return
254
267
  mul = self._raw_data.get("mul", {})
255
268
  mul[mul_sub_msg[0]] = mul_sub_msg[1].to_dict(casing=betterproto.Casing.SNAKE)
256
269
  self._raw_data["mul"] = mul
@@ -258,6 +271,9 @@ class MammotionBaseDevice:
258
271
  def _update_ota_data(self, tmp_msg):
259
272
  """Update OTA data."""
260
273
  ota_sub_msg = betterproto.which_one_of(tmp_msg.ota, "SubOtaMsg")
274
+ if ota_sub_msg[1] is None:
275
+ _LOGGER.debug("Sub message was NoneType %s", ota_sub_msg[0])
276
+ return
261
277
  ota = self._raw_data.get("ota", {})
262
278
  ota[ota_sub_msg[0]] = ota_sub_msg[1].to_dict(casing=betterproto.Casing.SNAKE)
263
279
  self._raw_data["ota"] = ota
@@ -487,6 +503,8 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
487
503
  )
488
504
  self._reset_disconnect_timer()
489
505
  await self._start_notify()
506
+ command_bytes = self._commands.send_todev_ble_sync(2)
507
+ await self._message.post_custom_data_bytes(command_bytes)
490
508
  self.schedule_ble_sync()
491
509
 
492
510
  async def _send_command_locked(self, key: str, command: bytes) -> bytes:
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "pymammotion"
3
- version = "0.0.52"
3
+ version = "0.0.54"
4
4
  license = "GNU-3.0"
5
5
  description = ""
6
6
  readme = "README.md"
@@ -47,7 +47,7 @@ mypy = "^1.10.0"
47
47
  pre-commit = "^3.7.1"
48
48
 
49
49
  [tool.bumpver]
50
- current_version = "0.0.52"
50
+ current_version = "0.0.54"
51
51
  version_pattern = "MAJOR.MINOR.PATCH"
52
52
  commit_message = "Bump version {old_version} -> {new_version}"
53
53
  commit = true
File without changes
File without changes