pymammotion 0.5.41__tar.gz → 0.5.42__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 (151) hide show
  1. {pymammotion-0.5.41 → pymammotion-0.5.42}/PKG-INFO +1 -1
  2. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/http/http.py +14 -4
  3. {pymammotion-0.5.41 → pymammotion-0.5.42}/pyproject.toml +2 -2
  4. {pymammotion-0.5.41 → pymammotion-0.5.42}/.gitignore +0 -0
  5. {pymammotion-0.5.41 → pymammotion-0.5.42}/LICENSE +0 -0
  6. {pymammotion-0.5.41 → pymammotion-0.5.42}/README.md +0 -0
  7. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/__init__.py +0 -0
  8. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/__init__.py +0 -0
  9. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/client.py +0 -0
  10. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/cloud_gateway.py +0 -0
  11. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/model/aep_response.py +0 -0
  12. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/model/connect_response.py +0 -0
  13. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/model/dev_by_account_response.py +0 -0
  14. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/model/login_by_oauth_response.py +0 -0
  15. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/model/regions_response.py +0 -0
  16. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/model/session_by_authcode_response.py +0 -0
  17. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/model/thing_response.py +0 -0
  18. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/regions.py +0 -0
  19. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/tea/core.py +0 -0
  20. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/aliyun/tmp_constant.py +0 -0
  21. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/bluetooth/__init__.py +0 -0
  22. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/bluetooth/ble.py +0 -0
  23. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/bluetooth/ble_message.py +0 -0
  24. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/bluetooth/const.py +0 -0
  25. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/bluetooth/data/__init__.py +0 -0
  26. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/bluetooth/data/convert.py +0 -0
  27. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/bluetooth/data/framectrldata.py +0 -0
  28. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/bluetooth/data/notifydata.py +0 -0
  29. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/bluetooth/model/__init__.py +0 -0
  30. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/bluetooth/model/atomic_integer.py +0 -0
  31. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/const.py +0 -0
  32. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/__init__.py +0 -0
  33. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/__init__.py +0 -0
  34. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/account.py +0 -0
  35. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/device.py +0 -0
  36. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/device_config.py +0 -0
  37. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/device_info.py +0 -0
  38. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/device_limits.py +0 -0
  39. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/enums.py +0 -0
  40. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/errors.py +0 -0
  41. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/excute_boarder_params.py +0 -0
  42. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/execute_boarder.py +0 -0
  43. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/generate_route_information.py +0 -0
  44. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/hash_list.py +0 -0
  45. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/location.py +0 -0
  46. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/mowing_modes.py +0 -0
  47. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/rapid_state.py +0 -0
  48. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/raw_data.py +0 -0
  49. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/region_data.py +0 -0
  50. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/report_info.py +0 -0
  51. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/model/work.py +0 -0
  52. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/mower_state_manager.py +0 -0
  53. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/mqtt/__init__.py +0 -0
  54. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/mqtt/event.py +0 -0
  55. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/mqtt/properties.py +0 -0
  56. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/data/mqtt/status.py +0 -0
  57. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/event/__init__.py +0 -0
  58. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/event/event.py +0 -0
  59. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/homeassistant/__init__.py +0 -0
  60. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/homeassistant/mower_api.py +0 -0
  61. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/homeassistant/rtk_api.py +0 -0
  62. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/http/__init__.py +0 -0
  63. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/http/_init_.py +0 -0
  64. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/http/encryption.py +0 -0
  65. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/http/model/__init__.py +0 -0
  66. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/http/model/camera_stream.py +0 -0
  67. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/http/model/http.py +0 -0
  68. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/http/model/response_factory.py +0 -0
  69. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/http/model/rtk.py +0 -0
  70. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/__init__.py +0 -0
  71. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/__init__.py +0 -0
  72. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/abstract_message.py +0 -0
  73. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/mammotion_command.py +0 -0
  74. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/messages/__init__.py +0 -0
  75. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/messages/basestation.py +0 -0
  76. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/messages/driver.py +0 -0
  77. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/messages/media.py +0 -0
  78. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/messages/navigation.py +0 -0
  79. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/messages/network.py +0 -0
  80. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/messages/ota.py +0 -0
  81. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/messages/system.py +0 -0
  82. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/commands/messages/video.py +0 -0
  83. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/control/__init__.py +0 -0
  84. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/control/joystick.py +0 -0
  85. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/__init__.py +0 -0
  86. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/base.py +0 -0
  87. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/mammotion.py +0 -0
  88. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/mammotion_bluetooth.py +0 -0
  89. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/mammotion_cloud.py +0 -0
  90. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/mammotion_mower_ble.py +0 -0
  91. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/mammotion_mower_cloud.py +0 -0
  92. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/managers/managers.py +0 -0
  93. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/mower_device.py +0 -0
  94. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/mower_manager.py +0 -0
  95. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/rtk_ble.py +0 -0
  96. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/rtk_cloud.py +0 -0
  97. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/rtk_device.py +0 -0
  98. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mammotion/devices/rtk_manager.py +0 -0
  99. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mqtt/__init__.py +0 -0
  100. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mqtt/aliyun_mqtt.py +0 -0
  101. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mqtt/linkkit/__init__.py +0 -0
  102. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mqtt/linkkit/h2client.py +0 -0
  103. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mqtt/linkkit/linkkit.py +0 -0
  104. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mqtt/mammotion_future.py +0 -0
  105. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mqtt/mammotion_mqtt.py +0 -0
  106. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/mqtt/mqtt_models.py +0 -0
  107. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/__init__.py +0 -0
  108. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/basestation.proto +0 -0
  109. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/basestation_pb2.py +0 -0
  110. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/basestation_pb2.pyi +0 -0
  111. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/common.proto +0 -0
  112. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/common_pb2.py +0 -0
  113. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/common_pb2.pyi +0 -0
  114. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/dev_net.proto +0 -0
  115. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/dev_net_pb2.py +0 -0
  116. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/dev_net_pb2.pyi +0 -0
  117. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/luba_msg.proto +0 -0
  118. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/luba_msg_pb2.py +0 -0
  119. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/luba_msg_pb2.pyi +0 -0
  120. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/luba_mul.proto +0 -0
  121. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/luba_mul_pb2.py +0 -0
  122. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/luba_mul_pb2.pyi +0 -0
  123. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_driver.proto +0 -0
  124. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_driver_pb2.py +0 -0
  125. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_driver_pb2.pyi +0 -0
  126. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_nav.proto +0 -0
  127. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_nav_pb2.py +0 -0
  128. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_nav_pb2.pyi +0 -0
  129. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_ota.proto +0 -0
  130. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_ota_pb2.py +0 -0
  131. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_ota_pb2.pyi +0 -0
  132. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_pept.proto +0 -0
  133. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_pept_pb2.py +0 -0
  134. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_pept_pb2.pyi +0 -0
  135. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_sys.proto +0 -0
  136. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_sys_pb2.py +0 -0
  137. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/mctrl_sys_pb2.pyi +0 -0
  138. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/message_pool.py +0 -0
  139. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/proto/py.typed +0 -0
  140. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/py.typed +0 -0
  141. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/utility/constant/__init__.py +0 -0
  142. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/utility/constant/device_constant.py +0 -0
  143. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/utility/conversions.py +0 -0
  144. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/utility/datatype_converter.py +0 -0
  145. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/utility/device_config.py +0 -0
  146. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/utility/device_type.py +0 -0
  147. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/utility/map.py +0 -0
  148. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/utility/movement.py +0 -0
  149. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/utility/mur_mur_hash.py +0 -0
  150. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/utility/periodic.py +0 -0
  151. {pymammotion-0.5.41 → pymammotion-0.5.42}/pymammotion/utility/rocker_util.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pymammotion
3
- Version: 0.5.41
3
+ Version: 0.5.42
4
4
  Author: jLynx
5
5
  Author-email: Michael Arthur <michael@jumblesoft.co.nz>
6
6
  License-Expression: GPL-3.0
@@ -1,3 +1,5 @@
1
+ from __future__ import annotations
2
+
1
3
  import csv
2
4
  import random
3
5
  import time
@@ -33,7 +35,7 @@ class MammotionHTTP:
33
35
  self.msg = None
34
36
  self.account = account
35
37
  self._password = password
36
- self.response: Response | None = None
38
+ self._response: Response | None = None
37
39
  self.login_info: LoginResponseData | None = None
38
40
  self.jwt_info: JWTTokenInfo = JWTTokenInfo("", "")
39
41
  self._headers = {"User-Agent": "okhttp/4.9.3", "App-Version": "Home Assistant,1.14.2.29"}
@@ -47,6 +49,17 @@ class MammotionHTTP:
47
49
  # Replace the line in the __init__ method with:
48
50
  self.client_id = f"{int(time.time() * 1000)}_{get_10_random()}_1"
49
51
 
52
+ @property
53
+ def response(self) -> Response | None:
54
+ return self._response
55
+
56
+ @response.setter
57
+ def response(self, response: Response) -> None:
58
+ self._response = response
59
+ decoded_token = jwt.decode(response.data.access_token, options={"verify_signature": False})
60
+ if isinstance(decoded_token, dict):
61
+ self.jwt_info = JWTTokenInfo(iot=decoded_token.get("iot", ""), robot=decoded_token.get("robot", ""))
62
+
50
63
  @staticmethod
51
64
  def generate_headers(token: str) -> dict:
52
65
  return {"Authorization": f"Bearer {token}"}
@@ -416,9 +429,6 @@ class MammotionHTTP:
416
429
  self.response = login_response
417
430
  self.msg = login_response.msg
418
431
  self.code = login_response.code
419
- decoded_token = jwt.decode(self.response.data.access_token, options={"verify_signature": False})
420
- if isinstance(decoded_token, dict):
421
- self.jwt_info = JWTTokenInfo(iot=decoded_token.get("iot", ""), robot=decoded_token.get("robot", ""))
422
432
  # TODO catch errors from mismatch user / password elsewhere
423
433
  # Assuming the data format matches the expected structure
424
434
  return login_response
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "pymammotion"
7
- version = "0.5.41"
7
+ version = "0.5.42"
8
8
  description = ""
9
9
  authors = [
10
10
  { name = "Michael Arthur", email = "michael@jumblesoft.co.nz" },
@@ -68,7 +68,7 @@ include = ["pymammotion"]
68
68
  include = ["pymammotion"]
69
69
 
70
70
  [tool.bumpver]
71
- current_version = "0.5.41"
71
+ current_version = "0.5.42"
72
72
  version_pattern = "MAJOR.MINOR.PATCH"
73
73
  commit_message = "Bump version {old_version} -> {new_version}"
74
74
  commit = true
File without changes
File without changes
File without changes