pymammotion 0.2.69__tar.gz → 0.2.70__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.
Files changed (125) hide show
  1. {pymammotion-0.2.69 → pymammotion-0.2.70}/PKG-INFO +1 -1
  2. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/bluetooth/ble.py +1 -6
  3. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/bluetooth/ble_message.py +2 -1
  4. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/devices/mammotion_bluetooth.py +5 -5
  5. {pymammotion-0.2.69 → pymammotion-0.2.70}/pyproject.toml +3 -3
  6. {pymammotion-0.2.69 → pymammotion-0.2.70}/LICENSE +0 -0
  7. {pymammotion-0.2.69 → pymammotion-0.2.70}/README.md +0 -0
  8. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/__init__.py +0 -0
  9. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/aliyun/__init__.py +0 -0
  10. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/aliyun/cloud_gateway.py +0 -0
  11. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/aliyun/cloud_service.py +0 -0
  12. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/aliyun/model/aep_response.py +0 -0
  13. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/aliyun/model/connect_response.py +0 -0
  14. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/aliyun/model/dev_by_account_response.py +0 -0
  15. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/aliyun/model/login_by_oauth_response.py +0 -0
  16. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/aliyun/model/regions_response.py +0 -0
  17. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/aliyun/model/session_by_authcode_response.py +0 -0
  18. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/aliyun/model/stream_subscription_response.py +0 -0
  19. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/aliyun/tmp_constant.py +0 -0
  20. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/bluetooth/__init__.py +0 -0
  21. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/bluetooth/const.py +0 -0
  22. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/bluetooth/data/__init__.py +0 -0
  23. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/bluetooth/data/convert.py +0 -0
  24. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/bluetooth/data/framectrldata.py +0 -0
  25. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/bluetooth/data/notifydata.py +0 -0
  26. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/const.py +0 -0
  27. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/__init__.py +0 -0
  28. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/__init__.py +0 -0
  29. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/account.py +0 -0
  30. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/device.py +0 -0
  31. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/device_config.py +0 -0
  32. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/device_info.py +0 -0
  33. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/enums.py +0 -0
  34. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/excute_boarder_params.py +0 -0
  35. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/execute_boarder.py +0 -0
  36. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/generate_route_information.py +0 -0
  37. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/hash_list.py +0 -0
  38. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/location.py +0 -0
  39. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/mowing_modes.py +0 -0
  40. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/plan.py +0 -0
  41. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/rapid_state.py +0 -0
  42. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/region_data.py +0 -0
  43. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/model/report_info.py +0 -0
  44. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/mqtt/__init__.py +0 -0
  45. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/mqtt/event.py +0 -0
  46. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/mqtt/properties.py +0 -0
  47. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/mqtt/status.py +0 -0
  48. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/data/state_manager.py +0 -0
  49. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/event/__init__.py +0 -0
  50. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/event/event.py +0 -0
  51. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/http/_init_.py +0 -0
  52. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/http/http.py +0 -0
  53. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/http/model/http.py +0 -0
  54. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/__init__.py +0 -0
  55. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/commands/__init__.py +0 -0
  56. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/commands/abstract_message.py +0 -0
  57. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/commands/mammotion_command.py +0 -0
  58. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/commands/messages/__init__.py +0 -0
  59. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/commands/messages/driver.py +0 -0
  60. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/commands/messages/media.py +0 -0
  61. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/commands/messages/navigation.py +0 -0
  62. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/commands/messages/network.py +0 -0
  63. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/commands/messages/ota.py +0 -0
  64. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/commands/messages/system.py +0 -0
  65. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/commands/messages/video.py +0 -0
  66. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/control/__init__.py +0 -0
  67. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/control/joystick.py +0 -0
  68. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/devices/__init__.py +0 -0
  69. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/devices/base.py +0 -0
  70. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/devices/mammotion.py +0 -0
  71. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mammotion/devices/mammotion_cloud.py +0 -0
  72. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mqtt/__init__.py +0 -0
  73. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mqtt/mammotion_future.py +0 -0
  74. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/mqtt/mammotion_mqtt.py +0 -0
  75. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/__init__.py +0 -0
  76. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/basestation.proto +0 -0
  77. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/basestation.py +0 -0
  78. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/basestation_pb2.py +0 -0
  79. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/basestation_pb2.pyi +0 -0
  80. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/common.proto +0 -0
  81. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/common.py +0 -0
  82. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/common_pb2.py +0 -0
  83. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/common_pb2.pyi +0 -0
  84. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/dev_net.proto +0 -0
  85. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/dev_net.py +0 -0
  86. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/dev_net_pb2.py +0 -0
  87. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/dev_net_pb2.pyi +0 -0
  88. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/luba_msg.proto +0 -0
  89. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/luba_msg.py +0 -0
  90. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/luba_msg_pb2.py +0 -0
  91. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/luba_msg_pb2.pyi +0 -0
  92. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/luba_mul.proto +0 -0
  93. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/luba_mul.py +0 -0
  94. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/luba_mul_pb2.py +0 -0
  95. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/luba_mul_pb2.pyi +0 -0
  96. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_driver.proto +0 -0
  97. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_driver.py +0 -0
  98. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_driver_pb2.py +0 -0
  99. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_driver_pb2.pyi +0 -0
  100. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_nav.proto +0 -0
  101. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_nav.py +0 -0
  102. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_nav_pb2.py +0 -0
  103. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_nav_pb2.pyi +0 -0
  104. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_ota.proto +0 -0
  105. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_ota.py +0 -0
  106. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_ota_pb2.py +0 -0
  107. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_ota_pb2.pyi +0 -0
  108. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_pept.proto +0 -0
  109. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_pept.py +0 -0
  110. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_pept_pb2.py +0 -0
  111. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_pept_pb2.pyi +0 -0
  112. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_sys.proto +0 -0
  113. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_sys.py +0 -0
  114. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_sys_pb2.py +0 -0
  115. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/proto/mctrl_sys_pb2.pyi +0 -0
  116. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/py.typed +0 -0
  117. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/utility/constant/__init__.py +0 -0
  118. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/utility/constant/device_constant.py +0 -0
  119. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/utility/conversions.py +0 -0
  120. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/utility/datatype_converter.py +0 -0
  121. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/utility/device_type.py +0 -0
  122. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/utility/map.py +0 -0
  123. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/utility/movement.py +0 -0
  124. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/utility/periodic.py +0 -0
  125. {pymammotion-0.2.69 → pymammotion-0.2.70}/pymammotion/utility/rocker_util.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pymammotion
3
- Version: 0.2.69
3
+ Version: 0.2.70
4
4
  Summary:
5
5
  License: GNU-3.0
6
6
  Author: Michael Arthur
@@ -7,9 +7,6 @@ from pymammotion.bluetooth.const import (
7
7
  )
8
8
  from pymammotion.event.event import BleNotificationEvent
9
9
 
10
- # TODO setup for each Luba
11
- address = "90:38:0C:6E:EE:9E"
12
-
13
10
 
14
11
  class MammotionBLE:
15
12
  client: BleakClient
@@ -24,9 +21,7 @@ class MammotionBLE:
24
21
  # TODO: do something with incoming data
25
22
  print(device)
26
23
  print(advertising_data)
27
- if device.address == "90:38:0C:6E:EE:9E":
28
- return True
29
- if advertising_data.local_name and "Luba-" in advertising_data.local_name:
24
+ if advertising_data.local_name and ("Luba-" in advertising_data.local_name or "Yuka-" in advertising_data.local_name):
30
25
  return True
31
26
  return False
32
27
 
@@ -54,6 +54,7 @@ class BleMessage:
54
54
  self.mReadSequence = itertools.count(start=0)
55
55
  self.mAck = queue.Queue()
56
56
  self.notification = BlufiNotifyData()
57
+ self._write_char = client.services.get_characteristic(UUID_WRITE_CHARACTERISTIC)
57
58
 
58
59
  async def get_task(self) -> None:
59
60
  hash_map = {"pver": 1, "subCmd": 2, "result": 0}
@@ -128,7 +129,7 @@ class BleMessage:
128
129
  await self.post_custom_data(serialize(executeBorder))
129
130
 
130
131
  async def gatt_write(self, data: bytes) -> None:
131
- await self.client.write_gatt_char(UUID_WRITE_CHARACTERISTIC, data, True)
132
+ await self.client.write_gatt_char(self._write_char, data, True)
132
133
 
133
134
  def parseNotification(self, response: bytearray):
134
135
  dataOffset = None
@@ -97,9 +97,10 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
97
97
  self._device = device
98
98
 
99
99
  async def _ble_sync(self) -> None:
100
- _LOGGER.debug("BLE SYNC")
101
- command_bytes = self._commands.send_todev_ble_sync(2)
102
- await self._message.post_custom_data_bytes(command_bytes)
100
+ if self._client is not None and self._client.is_connected:
101
+ _LOGGER.debug("BLE SYNC")
102
+ command_bytes = self._commands.send_todev_ble_sync(2)
103
+ await self._message.post_custom_data_bytes(command_bytes)
103
104
 
104
105
  async def run_periodic_sync_task(self) -> None:
105
106
  """Send ble sync to robot."""
@@ -323,6 +324,7 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
323
324
  _LOGGER.exception("Error parsing message %s", data)
324
325
  finally:
325
326
  self._message.clearNotification()
327
+ data = b''
326
328
 
327
329
  _LOGGER.debug("%s: Received notification: %s", self.name, data)
328
330
  else:
@@ -379,11 +381,9 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
379
381
  """Resolve characteristics."""
380
382
  self._read_char = services.get_characteristic(READ_CHAR_UUID)
381
383
  if not self._read_char:
382
- self._read_char = READ_CHAR_UUID
383
384
  _LOGGER.error(CharacteristicMissingError(READ_CHAR_UUID))
384
385
  self._write_char = services.get_characteristic(WRITE_CHAR_UUID)
385
386
  if not self._write_char:
386
- self._write_char = WRITE_CHAR_UUID
387
387
  _LOGGER.error(CharacteristicMissingError(WRITE_CHAR_UUID))
388
388
 
389
389
  def _reset_disconnect_timer(self) -> None:
@@ -1,10 +1,10 @@
1
1
  [project]
2
2
  name = "pymammotion"
3
- version = "0.2.69"
3
+ version = "0.2.70"
4
4
 
5
5
  [tool.poetry]
6
6
  name = "pymammotion"
7
- version = "0.2.69"
7
+ version = "0.2.70"
8
8
  license = "GNU-3.0"
9
9
  description = ""
10
10
  readme = "README.md"
@@ -61,7 +61,7 @@ mypy = "^1.11.2"
61
61
  autotyping = "^24.3.0"
62
62
 
63
63
  [tool.bumpver]
64
- current_version = "0.2.69"
64
+ current_version = "0.2.70"
65
65
  version_pattern = "MAJOR.MINOR.PATCH"
66
66
  commit_message = "Bump version {old_version} -> {new_version}"
67
67
  commit = true
File without changes
File without changes