pymammotion 0.2.96__tar.gz → 0.2.98__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.96 → pymammotion-0.2.98}/PKG-INFO +1 -1
  2. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/aliyun/cloud_gateway.py +1 -1
  3. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/device.py +2 -0
  4. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/http/http.py +2 -1
  5. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/http/model/http.py +19 -1
  6. {pymammotion-0.2.96 → pymammotion-0.2.98}/pyproject.toml +3 -3
  7. {pymammotion-0.2.96 → pymammotion-0.2.98}/LICENSE +0 -0
  8. {pymammotion-0.2.96 → pymammotion-0.2.98}/README.md +0 -0
  9. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/__init__.py +0 -0
  10. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/aliyun/__init__.py +0 -0
  11. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/aliyun/cloud_service.py +0 -0
  12. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/aliyun/model/aep_response.py +0 -0
  13. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/aliyun/model/connect_response.py +0 -0
  14. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/aliyun/model/dev_by_account_response.py +0 -0
  15. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/aliyun/model/login_by_oauth_response.py +0 -0
  16. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/aliyun/model/regions_response.py +0 -0
  17. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/aliyun/model/session_by_authcode_response.py +0 -0
  18. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/aliyun/model/stream_subscription_response.py +0 -0
  19. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/aliyun/tmp_constant.py +0 -0
  20. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/bluetooth/__init__.py +0 -0
  21. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/bluetooth/ble.py +0 -0
  22. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/bluetooth/ble_message.py +0 -0
  23. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/bluetooth/const.py +0 -0
  24. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/bluetooth/data/__init__.py +0 -0
  25. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/bluetooth/data/convert.py +0 -0
  26. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/bluetooth/data/framectrldata.py +0 -0
  27. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/bluetooth/data/notifydata.py +0 -0
  28. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/const.py +0 -0
  29. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/__init__.py +0 -0
  30. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/__init__.py +0 -0
  31. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/account.py +0 -0
  32. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/device_config.py +0 -0
  33. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/device_info.py +0 -0
  34. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/enums.py +0 -0
  35. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/excute_boarder_params.py +0 -0
  36. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/execute_boarder.py +0 -0
  37. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/generate_route_information.py +0 -0
  38. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/hash_list.py +0 -0
  39. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/location.py +0 -0
  40. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/mowing_modes.py +0 -0
  41. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/plan.py +0 -0
  42. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/rapid_state.py +0 -0
  43. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/region_data.py +0 -0
  44. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/model/report_info.py +0 -0
  45. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/mqtt/__init__.py +0 -0
  46. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/mqtt/event.py +0 -0
  47. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/mqtt/properties.py +0 -0
  48. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/mqtt/status.py +0 -0
  49. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/data/state_manager.py +0 -0
  50. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/event/__init__.py +0 -0
  51. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/event/event.py +0 -0
  52. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/http/_init_.py +0 -0
  53. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/__init__.py +0 -0
  54. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/commands/__init__.py +0 -0
  55. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/commands/abstract_message.py +0 -0
  56. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/commands/mammotion_command.py +0 -0
  57. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/commands/messages/__init__.py +0 -0
  58. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/commands/messages/driver.py +0 -0
  59. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/commands/messages/media.py +0 -0
  60. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/commands/messages/navigation.py +0 -0
  61. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/commands/messages/network.py +0 -0
  62. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/commands/messages/ota.py +0 -0
  63. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/commands/messages/system.py +0 -0
  64. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/commands/messages/video.py +0 -0
  65. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/control/__init__.py +0 -0
  66. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/control/joystick.py +0 -0
  67. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/devices/__init__.py +0 -0
  68. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/devices/base.py +0 -0
  69. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/devices/mammotion.py +0 -0
  70. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/devices/mammotion_bluetooth.py +0 -0
  71. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mammotion/devices/mammotion_cloud.py +0 -0
  72. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mqtt/__init__.py +0 -0
  73. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mqtt/mammotion_future.py +0 -0
  74. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/mqtt/mammotion_mqtt.py +0 -0
  75. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/__init__.py +0 -0
  76. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/basestation.proto +0 -0
  77. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/basestation.py +0 -0
  78. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/basestation_pb2.py +0 -0
  79. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/basestation_pb2.pyi +0 -0
  80. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/common.proto +0 -0
  81. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/common.py +0 -0
  82. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/common_pb2.py +0 -0
  83. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/common_pb2.pyi +0 -0
  84. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/dev_net.proto +0 -0
  85. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/dev_net.py +0 -0
  86. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/dev_net_pb2.py +0 -0
  87. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/dev_net_pb2.pyi +0 -0
  88. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/luba_msg.proto +0 -0
  89. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/luba_msg.py +0 -0
  90. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/luba_msg_pb2.py +0 -0
  91. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/luba_msg_pb2.pyi +0 -0
  92. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/luba_mul.proto +0 -0
  93. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/luba_mul.py +0 -0
  94. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/luba_mul_pb2.py +0 -0
  95. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/luba_mul_pb2.pyi +0 -0
  96. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_driver.proto +0 -0
  97. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_driver.py +0 -0
  98. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_driver_pb2.py +0 -0
  99. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_driver_pb2.pyi +0 -0
  100. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_nav.proto +0 -0
  101. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_nav.py +0 -0
  102. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_nav_pb2.py +0 -0
  103. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_nav_pb2.pyi +0 -0
  104. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_ota.proto +0 -0
  105. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_ota.py +0 -0
  106. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_ota_pb2.py +0 -0
  107. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_ota_pb2.pyi +0 -0
  108. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_pept.proto +0 -0
  109. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_pept.py +0 -0
  110. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_pept_pb2.py +0 -0
  111. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_pept_pb2.pyi +0 -0
  112. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_sys.proto +0 -0
  113. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_sys.py +0 -0
  114. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_sys_pb2.py +0 -0
  115. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/proto/mctrl_sys_pb2.pyi +0 -0
  116. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/py.typed +0 -0
  117. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/utility/constant/__init__.py +0 -0
  118. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/utility/constant/device_constant.py +0 -0
  119. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/utility/conversions.py +0 -0
  120. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/utility/datatype_converter.py +0 -0
  121. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/utility/device_type.py +0 -0
  122. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/utility/map.py +0 -0
  123. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/utility/movement.py +0 -0
  124. {pymammotion-0.2.96 → pymammotion-0.2.98}/pymammotion/utility/periodic.py +0 -0
  125. {pymammotion-0.2.96 → pymammotion-0.2.98}/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.96
3
+ Version: 0.2.98
4
4
  Summary:
5
5
  License: GNU-3.0
6
6
  Author: Michael Arthur
@@ -700,7 +700,7 @@ class CloudIOTGateway:
700
700
  def devices_by_account_response(self):
701
701
  return self._devices_by_account_response
702
702
 
703
- def set_http(self, mammotion_http) -> None:
703
+ def set_http(self, mammotion_http: MammotionHTTP) -> None:
704
704
  self.mammotion_http = mammotion_http
705
705
 
706
706
  @property
@@ -12,6 +12,7 @@ from pymammotion.data.model.device_info import MowerInfo
12
12
  from pymammotion.data.model.location import Location
13
13
  from pymammotion.data.model.report_info import ReportData
14
14
  from pymammotion.data.mqtt.properties import ThingPropertiesMessage
15
+ from pymammotion.http.model.http import ErrorInfo
15
16
  from pymammotion.proto.dev_net import DevNet
16
17
  from pymammotion.proto.luba_msg import LubaMsg
17
18
  from pymammotion.proto.luba_mul import SocMul
@@ -45,6 +46,7 @@ class MowingDevice(DataClassORJSONMixin):
45
46
  err_code_list_time: Optional[list] = field(default_factory=list)
46
47
  limits: DeviceLimits = field(default_factory=DeviceLimits)
47
48
  device: Optional[LubaMsg] = field(default_factory=LubaMsg)
49
+ error_codes: dict[str, ErrorInfo] = field(default_factory=dict)
48
50
 
49
51
  @classmethod
50
52
  def from_raw(cls, raw: dict) -> "MowingDevice":
@@ -18,6 +18,7 @@ class MammotionHTTP:
18
18
  self._headers = dict()
19
19
  self.login_info = LoginResponseData.from_dict(response.data) if response.data else None
20
20
  self._headers["Authorization"] = f"Bearer {self.login_info.access_token}" if response.data else None
21
+ self.response = response
21
22
  self.msg = response.msg
22
23
  self.code = response.code
23
24
 
@@ -74,7 +75,7 @@ class MammotionHTTP:
74
75
  ),
75
76
  ) as resp:
76
77
  data = await resp.json()
77
- response = Response.from_dict(data)
78
+ response = Response[LoginResponseData].from_dict(data)
78
79
  # TODO catch errors from mismatch user / password elsewhere
79
80
  # Assuming the data format matches the expected structure
80
81
  return response
@@ -9,7 +9,7 @@ DataT = TypeVar("DataT")
9
9
 
10
10
 
11
11
  @dataclass
12
- class ErrorInfo:
12
+ class ErrorInfo(DataClassDictMixin):
13
13
  code: str
14
14
  platform: str
15
15
  module: str
@@ -44,6 +44,24 @@ class ErrorInfo:
44
44
  sl_solution: str
45
45
  pt_implication: str
46
46
  pt_solution: str
47
+ hu_implication: str
48
+ hu_solution: str
49
+ hr_implication: str
50
+ hr_solution: str
51
+ no_implication: str
52
+ no_solution: str
53
+ fi_implication: str
54
+ fi_solution: str
55
+ ro_implication: str
56
+ ro_solution: str
57
+ bg_implication: str
58
+ bg_solution: str
59
+ et_implication: str
60
+ et_solution: str
61
+ lv_implication: str
62
+ lv_solution: str
63
+ lt_implication: str
64
+ lt_solution: str
47
65
 
48
66
 
49
67
  @dataclass
@@ -1,10 +1,10 @@
1
1
  [project]
2
2
  name = "pymammotion"
3
- version = "0.2.96"
3
+ version = "0.2.98"
4
4
 
5
5
  [tool.poetry]
6
6
  name = "pymammotion"
7
- version = "0.2.96"
7
+ version = "0.2.98"
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.96"
64
+ current_version = "0.2.98"
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