pymammotion 0.2.76__py3-none-any.whl → 0.2.78__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,5 @@
1
1
  import logging
2
2
  from dataclasses import dataclass
3
- from typing import List
4
3
 
5
4
  logger = logging.getLogger(__name__)
6
5
 
@@ -37,7 +37,6 @@ class MowOrder(IntEnum):
37
37
  grid_first = 1
38
38
 
39
39
 
40
-
41
40
  class BypassStrategy(IntEnum):
42
41
  """Matches up with ultra_wave."""
43
42
 
@@ -118,7 +118,8 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
118
118
 
119
119
  async def stop(self) -> None:
120
120
  """Stop all tasks and disconnect."""
121
- self._ble_sync_task.cancel()
121
+ if self._ble_sync_task:
122
+ self._ble_sync_task.cancel()
122
123
  if self._client is not None:
123
124
  await self._client.disconnect()
124
125
 
@@ -181,7 +181,7 @@ class MammotionBaseCloudDevice(MammotionBaseDevice):
181
181
  if self.on_ready_callback:
182
182
  await self.on_ready_callback()
183
183
  except DeviceOfflineException:
184
- await self.stop()
184
+ _LOGGER.debug("Device is offline")
185
185
 
186
186
  async def on_disconnect(self) -> None:
187
187
  if self._ble_sync_task:
@@ -201,7 +201,8 @@ class MammotionBaseCloudDevice(MammotionBaseDevice):
201
201
  await self.run_periodic_sync_task()
202
202
  self.stopped = False
203
203
  self._mqtt.on_ready_event.add_subscribers(self.on_ready)
204
- self.mqtt.connect_async()
204
+ if not self.mqtt.is_connected():
205
+ self.mqtt.connect_async()
205
206
 
206
207
  async def _ble_sync(self) -> None:
207
208
  command_bytes = self._commands.send_todev_ble_sync(3)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pymammotion
3
- Version: 0.2.76
3
+ Version: 0.2.78
4
4
  Summary:
5
5
  License: GNU-3.0
6
6
  Author: Michael Arthur
@@ -28,10 +28,10 @@ pymammotion/data/model/device_info.py,sha256=ahz2xILdSYdX6SIVuVzz8QCfSQLefbQnpXr
28
28
  pymammotion/data/model/enums.py,sha256=EpKmO8yVUZyEnTY4yH0DMMVKYNQM42zpW1maUu0i3IE,1582
29
29
  pymammotion/data/model/excute_boarder_params.py,sha256=9CpUqrygcle1C_1hDW-riLmm4map4ZbE842NXjcomEI,1394
30
30
  pymammotion/data/model/execute_boarder.py,sha256=9rd_h4fbcsXxgnLOd2rO2hWyD1abnTGc47QTEpp8DD0,1103
31
- pymammotion/data/model/generate_route_information.py,sha256=CznXOT8fRsFrRHnjPAnU9XyW0ZoxzgEeMnSyUEyeWXY,801
31
+ pymammotion/data/model/generate_route_information.py,sha256=tCF3-HDm4O30hy8BJrTOaMpP3ArHbI9i9ZG7ARc5eLg,777
32
32
  pymammotion/data/model/hash_list.py,sha256=ZPg5d1hy4bPMgPw5JkHujT06LIoEmXn7qSdQW79FF3A,6257
33
33
  pymammotion/data/model/location.py,sha256=PwmITejfI4pm7PI4rzqSuuHetwle6IJr_CV95435s2M,871
34
- pymammotion/data/model/mowing_modes.py,sha256=F4SV_s1D6rlkFMPpcNAhHHY0jDKC-4ApTJcYl9xkR_s,828
34
+ pymammotion/data/model/mowing_modes.py,sha256=5TrHSijUyPtIDWpNtgzx_vFQukRJWRz4gIrUaXggKPw,827
35
35
  pymammotion/data/model/plan.py,sha256=mcadkSL7fQXy0iJ0q786I3GEQY4i6kmQXfW6Ri69lcQ,2906
36
36
  pymammotion/data/model/rapid_state.py,sha256=mIdhAG_LZXpVcybxqTLgLXkNOmVmDTn04B9PGIDA8Ls,1251
37
37
  pymammotion/data/model/region_data.py,sha256=OTV15vRyn9JORXsQPjWMNF1ZujuNhsOKl25KeqwMObA,3007
@@ -63,8 +63,8 @@ pymammotion/mammotion/control/joystick.py,sha256=QfBVxM_gxpWsZAGO90whtgxCI2tIZ3T
63
63
  pymammotion/mammotion/devices/__init__.py,sha256=f2qQFPgLGmV85W2hSlMUh5BYuht9o_Ar_JEAAMD4fsE,102
64
64
  pymammotion/mammotion/devices/base.py,sha256=F_L5aDtY6rgRkk7Q4CwilLenTANW6cBe9zIU3a9HRmA,10020
65
65
  pymammotion/mammotion/devices/mammotion.py,sha256=hSO184o1q4ftfLPx9froFPIXk428wGg8Ayw160W3z7c,12482
66
- pymammotion/mammotion/devices/mammotion_bluetooth.py,sha256=ZsLsMlsgGG8uNlgoYvifxSRrUsoM0-9UlyY3f77ZmRI,18903
67
- pymammotion/mammotion/devices/mammotion_cloud.py,sha256=7xbSZmC1PUG6ZfF5LtiELkQE61lybHoJcBUzz76VvLg,12074
66
+ pymammotion/mammotion/devices/mammotion_bluetooth.py,sha256=KjcIta1VcJ8eNJvPFeOtwxV2jl3nrk7PldMmPv_Caqw,18939
67
+ pymammotion/mammotion/devices/mammotion_cloud.py,sha256=OW5TqJwoTIYxXc-FqrX4QIYHtFnEGnyKCsMXiULND8k,12136
68
68
  pymammotion/mqtt/__init__.py,sha256=Ocs5e-HLJvTuDpVXyECEsWIvwsUaxzj7lZ9mSYutNDY,105
69
69
  pymammotion/mqtt/mammotion_future.py,sha256=_OWqKOlUGl2yT1xOsXFQYpGd-1zQ63OxqXgy7KRQgYc,710
70
70
  pymammotion/mqtt/mammotion_mqtt.py,sha256=LaySave_hf0gU3crUTLqzpdQtxIwK8vu5DM8F8fbU2Y,8748
@@ -119,7 +119,7 @@ pymammotion/utility/map.py,sha256=GYscVMg2cX3IPlNpCBNHDW0S55yS1WGRf1iHnNZ7TfQ,22
119
119
  pymammotion/utility/movement.py,sha256=N75oAoAgFydqoaOedYIxGUHmuTCtPzAOtb-d_29tpfI,615
120
120
  pymammotion/utility/periodic.py,sha256=MbeSb9cfhxzYmdT_RiE0dZe3H9IfbQW_zSqhmSX2RUc,3321
121
121
  pymammotion/utility/rocker_util.py,sha256=6tX7sS87qoQC_tsxbx3NLL-HgS08wtzXiZkhDiz7uo0,7179
122
- pymammotion-0.2.76.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
123
- pymammotion-0.2.76.dist-info/METADATA,sha256=AD08G7CVLUBtRZY-BWbizG0idB9CvdOQpiX0nEq152c,3896
124
- pymammotion-0.2.76.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
125
- pymammotion-0.2.76.dist-info/RECORD,,
122
+ pymammotion-0.2.78.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
123
+ pymammotion-0.2.78.dist-info/METADATA,sha256=bBKv3LNdKqkJZCe7LX5Y62_278l9lidEnjokTslAYqY,3896
124
+ pymammotion-0.2.78.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
125
+ pymammotion-0.2.78.dist-info/RECORD,,