pymammotion 0.2.62__py3-none-any.whl → 0.5.51__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.

Potentially problematic release.


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

Files changed (135) hide show
  1. pymammotion/__init__.py +9 -6
  2. pymammotion/aliyun/client.py +235 -0
  3. pymammotion/aliyun/cloud_gateway.py +320 -69
  4. pymammotion/aliyun/model/aep_response.py +1 -2
  5. pymammotion/aliyun/model/dev_by_account_response.py +170 -23
  6. pymammotion/aliyun/model/login_by_oauth_response.py +2 -3
  7. pymammotion/aliyun/model/regions_response.py +3 -3
  8. pymammotion/aliyun/model/session_by_authcode_response.py +2 -2
  9. pymammotion/aliyun/model/thing_response.py +12 -0
  10. pymammotion/aliyun/regions.py +62 -0
  11. pymammotion/aliyun/tea/core.py +297 -0
  12. pymammotion/bluetooth/ble.py +11 -15
  13. pymammotion/bluetooth/ble_message.py +389 -106
  14. pymammotion/bluetooth/model/atomic_integer.py +54 -0
  15. pymammotion/const.py +3 -0
  16. pymammotion/data/model/__init__.py +1 -2
  17. pymammotion/data/model/device.py +92 -240
  18. pymammotion/data/model/device_config.py +10 -24
  19. pymammotion/data/model/device_info.py +35 -0
  20. pymammotion/data/model/device_limits.py +49 -0
  21. pymammotion/data/model/enums.py +12 -2
  22. pymammotion/data/model/errors.py +12 -0
  23. pymammotion/data/model/events.py +14 -0
  24. pymammotion/data/model/generate_geojson.py +521 -0
  25. pymammotion/data/model/generate_route_information.py +3 -4
  26. pymammotion/data/model/hash_list.py +384 -48
  27. pymammotion/data/model/location.py +4 -4
  28. pymammotion/data/model/mowing_modes.py +24 -1
  29. pymammotion/data/model/raw_data.py +215 -0
  30. pymammotion/data/model/region_data.py +10 -11
  31. pymammotion/data/model/report_info.py +62 -6
  32. pymammotion/data/model/work.py +27 -0
  33. pymammotion/data/mower_state_manager.py +316 -0
  34. pymammotion/data/mqtt/event.py +73 -28
  35. pymammotion/data/mqtt/mammotion_properties.py +257 -0
  36. pymammotion/data/mqtt/properties.py +93 -78
  37. pymammotion/data/mqtt/status.py +18 -17
  38. pymammotion/event/event.py +32 -8
  39. pymammotion/homeassistant/__init__.py +3 -0
  40. pymammotion/homeassistant/mower_api.py +484 -0
  41. pymammotion/homeassistant/rtk_api.py +54 -0
  42. pymammotion/http/__init__.py +0 -0
  43. pymammotion/http/encryption.py +220 -0
  44. pymammotion/http/http.py +652 -44
  45. pymammotion/http/model/__init__.py +0 -0
  46. pymammotion/{aliyun/model/stream_subscription_response.py → http/model/camera_stream.py} +14 -2
  47. pymammotion/http/model/http.py +160 -9
  48. pymammotion/http/model/response_factory.py +61 -0
  49. pymammotion/http/model/rtk.py +16 -0
  50. pymammotion/mammotion/commands/abstract_message.py +7 -5
  51. pymammotion/mammotion/commands/mammotion_command.py +32 -3
  52. pymammotion/mammotion/commands/messages/basestation.py +43 -0
  53. pymammotion/mammotion/commands/messages/driver.py +61 -29
  54. pymammotion/mammotion/commands/messages/media.py +68 -15
  55. pymammotion/mammotion/commands/messages/navigation.py +61 -25
  56. pymammotion/mammotion/commands/messages/network.py +93 -100
  57. pymammotion/mammotion/commands/messages/ota.py +18 -18
  58. pymammotion/mammotion/commands/messages/system.py +97 -72
  59. pymammotion/mammotion/commands/messages/video.py +17 -12
  60. pymammotion/mammotion/devices/__init__.py +27 -3
  61. pymammotion/mammotion/devices/base.py +50 -127
  62. pymammotion/mammotion/devices/mammotion.py +447 -212
  63. pymammotion/mammotion/devices/mammotion_bluetooth.py +105 -60
  64. pymammotion/mammotion/devices/mammotion_cloud.py +157 -105
  65. pymammotion/mammotion/devices/mammotion_mower_ble.py +49 -0
  66. pymammotion/mammotion/devices/mammotion_mower_cloud.py +39 -0
  67. pymammotion/mammotion/devices/managers/managers.py +81 -0
  68. pymammotion/mammotion/devices/mower_device.py +124 -0
  69. pymammotion/mammotion/devices/mower_manager.py +107 -0
  70. pymammotion/mammotion/devices/rtk_ble.py +89 -0
  71. pymammotion/mammotion/devices/rtk_cloud.py +113 -0
  72. pymammotion/mammotion/devices/rtk_device.py +50 -0
  73. pymammotion/mammotion/devices/rtk_manager.py +122 -0
  74. pymammotion/mqtt/__init__.py +2 -1
  75. pymammotion/mqtt/aliyun_mqtt.py +232 -0
  76. pymammotion/mqtt/linkkit/__init__.py +5 -0
  77. pymammotion/mqtt/linkkit/h2client.py +585 -0
  78. pymammotion/mqtt/linkkit/linkkit.py +3023 -0
  79. pymammotion/mqtt/mammotion_mqtt.py +176 -169
  80. pymammotion/mqtt/mqtt_models.py +66 -0
  81. pymammotion/proto/__init__.py +4839 -4
  82. pymammotion/proto/basestation.proto +8 -0
  83. pymammotion/proto/basestation_pb2.py +11 -9
  84. pymammotion/proto/basestation_pb2.pyi +16 -2
  85. pymammotion/proto/dev_net.proto +79 -55
  86. pymammotion/proto/dev_net_pb2.py +60 -56
  87. pymammotion/proto/dev_net_pb2.pyi +49 -6
  88. pymammotion/proto/luba_msg.proto +2 -1
  89. pymammotion/proto/luba_msg_pb2.py +6 -6
  90. pymammotion/proto/luba_msg_pb2.pyi +1 -0
  91. pymammotion/proto/luba_mul.proto +62 -1
  92. pymammotion/proto/luba_mul_pb2.py +38 -22
  93. pymammotion/proto/luba_mul_pb2.pyi +94 -7
  94. pymammotion/proto/mctrl_driver.proto +44 -4
  95. pymammotion/proto/mctrl_driver_pb2.py +26 -14
  96. pymammotion/proto/mctrl_driver_pb2.pyi +66 -11
  97. pymammotion/proto/mctrl_nav.proto +97 -51
  98. pymammotion/proto/mctrl_nav_pb2.py +75 -67
  99. pymammotion/proto/mctrl_nav_pb2.pyi +142 -56
  100. pymammotion/proto/mctrl_ota.proto +40 -2
  101. pymammotion/proto/mctrl_ota_pb2.py +23 -13
  102. pymammotion/proto/mctrl_ota_pb2.pyi +67 -4
  103. pymammotion/proto/mctrl_pept.proto +8 -3
  104. pymammotion/proto/mctrl_pept_pb2.py +8 -6
  105. pymammotion/proto/mctrl_pept_pb2.pyi +14 -6
  106. pymammotion/proto/mctrl_sys.proto +325 -86
  107. pymammotion/proto/mctrl_sys_pb2.py +162 -98
  108. pymammotion/proto/mctrl_sys_pb2.pyi +451 -25
  109. pymammotion/proto/message_pool.py +3 -0
  110. pymammotion/proto/py.typed +0 -0
  111. pymammotion/utility/constant/device_constant.py +65 -21
  112. pymammotion/utility/datatype_converter.py +13 -12
  113. pymammotion/utility/device_config.py +755 -0
  114. pymammotion/utility/device_type.py +218 -21
  115. pymammotion/utility/map.py +238 -51
  116. pymammotion/utility/mur_mur_hash.py +159 -0
  117. {pymammotion-0.2.62.dist-info → pymammotion-0.5.51.dist-info}/METADATA +27 -31
  118. pymammotion-0.5.51.dist-info/RECORD +152 -0
  119. {pymammotion-0.2.62.dist-info → pymammotion-0.5.51.dist-info}/WHEEL +1 -1
  120. pymammotion/aliyun/cloud_service.py +0 -65
  121. pymammotion/data/model/plan.py +0 -58
  122. pymammotion/data/state_manager.py +0 -130
  123. pymammotion/proto/basestation.py +0 -59
  124. pymammotion/proto/common.py +0 -12
  125. pymammotion/proto/dev_net.py +0 -381
  126. pymammotion/proto/luba_msg.py +0 -81
  127. pymammotion/proto/luba_mul.py +0 -76
  128. pymammotion/proto/mctrl_driver.py +0 -100
  129. pymammotion/proto/mctrl_nav.py +0 -660
  130. pymammotion/proto/mctrl_ota.py +0 -48
  131. pymammotion/proto/mctrl_pept.py +0 -41
  132. pymammotion/proto/mctrl_sys.py +0 -574
  133. pymammotion-0.2.62.dist-info/RECORD +0 -125
  134. /pymammotion/{http/_init_.py → bluetooth/model/__init__.py} +0 -0
  135. {pymammotion-0.2.62.dist-info → pymammotion-0.5.51.dist-info/licenses}/LICENSE +0 -0
@@ -7,23 +7,45 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
7
7
  DESCRIPTOR: _descriptor.FileDescriptor
8
8
 
9
9
  class AppGetAllAreaHashName(_message.Message):
10
- __slots__ = ["device_id", "hashnames"]
11
- DEVICE_ID_FIELD_NUMBER: _ClassVar[int]
10
+ __slots__ = ["deviceId", "hashnames"]
11
+ DEVICEID_FIELD_NUMBER: _ClassVar[int]
12
12
  HASHNAMES_FIELD_NUMBER: _ClassVar[int]
13
- device_id: str
14
- hashnames: _containers.RepeatedCompositeFieldContainer[AreaHashName]
15
- def __init__(self, device_id: _Optional[str] = ..., hashnames: _Optional[_Iterable[_Union[AreaHashName, _Mapping]]] = ...) -> None: ...
13
+ deviceId: str
14
+ hashnames: _containers.RepeatedCompositeFieldContainer[area_hash_name]
15
+ def __init__(self, deviceId: _Optional[str] = ..., hashnames: _Optional[_Iterable[_Union[area_hash_name, _Mapping]]] = ...) -> None: ...
16
16
 
17
- class AreaHashName(_message.Message):
18
- __slots__ = ["hash", "name"]
19
- HASH_FIELD_NUMBER: _ClassVar[int]
20
- NAME_FIELD_NUMBER: _ClassVar[int]
21
- hash: int
22
- name: str
23
- def __init__(self, name: _Optional[str] = ..., hash: _Optional[int] = ...) -> None: ...
17
+ class ManualElementMessage(_message.Message):
18
+ __slots__ = ["dataHash", "ifHide", "point1_center_x", "point1_center_y", "point2_height_y", "point2_width_x", "pver", "reserved", "result", "rotate_radius", "shape", "subCmd", "type"]
19
+ DATAHASH_FIELD_NUMBER: _ClassVar[int]
20
+ IFHIDE_FIELD_NUMBER: _ClassVar[int]
21
+ POINT1_CENTER_X_FIELD_NUMBER: _ClassVar[int]
22
+ POINT1_CENTER_Y_FIELD_NUMBER: _ClassVar[int]
23
+ POINT2_HEIGHT_Y_FIELD_NUMBER: _ClassVar[int]
24
+ POINT2_WIDTH_X_FIELD_NUMBER: _ClassVar[int]
25
+ PVER_FIELD_NUMBER: _ClassVar[int]
26
+ RESERVED_FIELD_NUMBER: _ClassVar[int]
27
+ RESULT_FIELD_NUMBER: _ClassVar[int]
28
+ ROTATE_RADIUS_FIELD_NUMBER: _ClassVar[int]
29
+ SHAPE_FIELD_NUMBER: _ClassVar[int]
30
+ SUBCMD_FIELD_NUMBER: _ClassVar[int]
31
+ TYPE_FIELD_NUMBER: _ClassVar[int]
32
+ dataHash: int
33
+ ifHide: bool
34
+ point1_center_x: float
35
+ point1_center_y: float
36
+ point2_height_y: float
37
+ point2_width_x: float
38
+ pver: int
39
+ reserved: str
40
+ result: int
41
+ rotate_radius: float
42
+ shape: int
43
+ subCmd: int
44
+ type: int
45
+ def __init__(self, pver: _Optional[int] = ..., type: _Optional[int] = ..., shape: _Optional[int] = ..., result: _Optional[int] = ..., subCmd: _Optional[int] = ..., dataHash: _Optional[int] = ..., ifHide: bool = ..., reserved: _Optional[str] = ..., point1_center_x: _Optional[float] = ..., point1_center_y: _Optional[float] = ..., point2_width_x: _Optional[float] = ..., point2_height_y: _Optional[float] = ..., rotate_radius: _Optional[float] = ...) -> None: ...
24
46
 
25
47
  class MctlNav(_message.Message):
26
- __slots__ = ["all_plan_task", "app_request_cover_paths", "bidire_reqconver_path", "bidire_taskid", "cover_path_upload", "nav_sys_param_cmd", "plan_task_execute", "plan_task_name_id", "simulation_cmd", "toapp_all_hash_name", "toapp_bp", "toapp_bstate", "toapp_chgpileto", "toapp_costmap", "toapp_get_commondata_ack", "toapp_gethash_ack", "toapp_lat_up", "toapp_map_name_msg", "toapp_opt_border_info", "toapp_opt_line_up", "toapp_opt_obs_info", "toapp_pos_up", "toapp_svg_msg", "toapp_task_info", "toapp_work_report_ack", "toapp_work_report_update_ack", "toapp_work_report_upload", "toapp_zigzag", "todev_cancel_draw_cmd", "todev_cancel_suscmd", "todev_chl_line", "todev_chl_line_data", "todev_chl_line_end", "todev_draw_border", "todev_draw_border_end", "todev_draw_obs", "todev_draw_obs_end", "todev_edgecmd", "todev_get_commondata", "todev_gethash", "todev_lat_up_ack", "todev_mow_task", "todev_one_touch_leave_pile", "todev_opt_border_info_ack", "todev_opt_line_up_ack", "todev_opt_obs_info_ack", "todev_planjob_set", "todev_rechgcmd", "todev_reset_chg_pile", "todev_save_task", "todev_sustask", "todev_svg_msg", "todev_task_info_ack", "todev_taskctrl", "todev_taskctrl_ack", "todev_unable_time_set", "todev_work_report_cmd", "todev_work_report_update_cmd", "todev_zigzag_ack", "vision_ctrl", "zone_start_precent"]
48
+ __slots__ = ["all_plan_task", "app_request_cover_paths", "bidire_reqconver_path", "bidire_taskid", "cover_path_upload", "nav_sys_param_cmd", "plan_task_execute", "plan_task_name_id", "simulation_cmd", "toapp_all_hash_name", "toapp_bp", "toapp_bstate", "toapp_chgpileto", "toapp_costmap", "toapp_edge_points", "toapp_edge_points_ack", "toapp_get_commondata_ack", "toapp_gethash_ack", "toapp_lat_up", "toapp_manual_element", "toapp_map_name_msg", "toapp_opt_border_info", "toapp_opt_line_up", "toapp_opt_obs_info", "toapp_pos_up", "toapp_svg_msg", "toapp_task_info", "toapp_work_report_ack", "toapp_work_report_update_ack", "toapp_work_report_upload", "toapp_zigzag", "todev_cancel_draw_cmd", "todev_cancel_suscmd", "todev_chl_line", "todev_chl_line_data", "todev_chl_line_end", "todev_draw_border", "todev_draw_border_end", "todev_draw_obs", "todev_draw_obs_end", "todev_edgecmd", "todev_get_commondata", "todev_gethash", "todev_lat_up_ack", "todev_mow_task", "todev_one_touch_leave_pile", "todev_opt_border_info_ack", "todev_opt_line_up_ack", "todev_opt_obs_info_ack", "todev_planjob_set", "todev_rechgcmd", "todev_reset_chg_pile", "todev_save_task", "todev_sustask", "todev_svg_msg", "todev_task_info_ack", "todev_taskctrl", "todev_taskctrl_ack", "todev_unable_time_set", "todev_work_report_cmd", "todev_work_report_update_cmd", "todev_zigzag_ack", "vision_ctrl", "zone_start_precent"]
27
49
  ALL_PLAN_TASK_FIELD_NUMBER: _ClassVar[int]
28
50
  APP_REQUEST_COVER_PATHS_FIELD_NUMBER: _ClassVar[int]
29
51
  BIDIRE_REQCONVER_PATH_FIELD_NUMBER: _ClassVar[int]
@@ -38,9 +60,12 @@ class MctlNav(_message.Message):
38
60
  TOAPP_BSTATE_FIELD_NUMBER: _ClassVar[int]
39
61
  TOAPP_CHGPILETO_FIELD_NUMBER: _ClassVar[int]
40
62
  TOAPP_COSTMAP_FIELD_NUMBER: _ClassVar[int]
63
+ TOAPP_EDGE_POINTS_ACK_FIELD_NUMBER: _ClassVar[int]
64
+ TOAPP_EDGE_POINTS_FIELD_NUMBER: _ClassVar[int]
41
65
  TOAPP_GETHASH_ACK_FIELD_NUMBER: _ClassVar[int]
42
66
  TOAPP_GET_COMMONDATA_ACK_FIELD_NUMBER: _ClassVar[int]
43
67
  TOAPP_LAT_UP_FIELD_NUMBER: _ClassVar[int]
68
+ TOAPP_MANUAL_ELEMENT_FIELD_NUMBER: _ClassVar[int]
44
69
  TOAPP_MAP_NAME_MSG_FIELD_NUMBER: _ClassVar[int]
45
70
  TOAPP_OPT_BORDER_INFO_FIELD_NUMBER: _ClassVar[int]
46
71
  TOAPP_OPT_LINE_UP_FIELD_NUMBER: _ClassVar[int]
@@ -99,15 +124,18 @@ class MctlNav(_message.Message):
99
124
  toapp_bstate: NavBorderState
100
125
  toapp_chgpileto: chargePileType
101
126
  toapp_costmap: costmap_t
127
+ toapp_edge_points: NavEdgePoints
128
+ toapp_edge_points_ack: NavEdgePointsAck
102
129
  toapp_get_commondata_ack: NavGetCommDataAck
103
130
  toapp_gethash_ack: NavGetHashListAck
104
131
  toapp_lat_up: NavLatLonUp
132
+ toapp_manual_element: ManualElementMessage
105
133
  toapp_map_name_msg: NavMapNameMsg
106
134
  toapp_opt_border_info: NavOptiBorderInfo
107
135
  toapp_opt_line_up: NavOptLineUp
108
136
  toapp_opt_obs_info: NavOptObsInfo
109
137
  toapp_pos_up: NavPosUp
110
- toapp_svg_msg: SvgMessageAckT
138
+ toapp_svg_msg: svg_message_ack_t
111
139
  toapp_task_info: NavTaskInfo
112
140
  toapp_work_report_ack: WorkReportInfoAck
113
141
  toapp_work_report_update_ack: WorkReportUpdateAck
@@ -136,7 +164,7 @@ class MctlNav(_message.Message):
136
164
  todev_reset_chg_pile: int
137
165
  todev_save_task: int
138
166
  todev_sustask: int
139
- todev_svg_msg: SvgMessageAckT
167
+ todev_svg_msg: svg_message_ack_t
140
168
  todev_task_info_ack: NavResFrame
141
169
  todev_taskctrl: NavTaskCtrl
142
170
  todev_taskctrl_ack: NavTaskCtrlAck
@@ -146,7 +174,7 @@ class MctlNav(_message.Message):
146
174
  todev_zigzag_ack: NavUploadZigZagResultAck
147
175
  vision_ctrl: vision_ctrl_msg
148
176
  zone_start_precent: zone_start_precent_t
149
- def __init__(self, toapp_lat_up: _Optional[_Union[NavLatLonUp, _Mapping]] = ..., toapp_pos_up: _Optional[_Union[NavPosUp, _Mapping]] = ..., todev_chl_line_data: _Optional[_Union[NavCHlLineData, _Mapping]] = ..., toapp_task_info: _Optional[_Union[NavTaskInfo, _Mapping]] = ..., toapp_opt_line_up: _Optional[_Union[NavOptLineUp, _Mapping]] = ..., toapp_opt_border_info: _Optional[_Union[NavOptiBorderInfo, _Mapping]] = ..., toapp_opt_obs_info: _Optional[_Union[NavOptObsInfo, _Mapping]] = ..., todev_task_info_ack: _Optional[_Union[NavResFrame, _Mapping]] = ..., todev_opt_border_info_ack: _Optional[_Union[NavResFrame, _Mapping]] = ..., todev_opt_obs_info_ack: _Optional[_Union[NavResFrame, _Mapping]] = ..., todev_opt_line_up_ack: _Optional[_Union[NavResFrame, _Mapping]] = ..., toapp_chgpileto: _Optional[_Union[chargePileType, _Mapping]] = ..., todev_sustask: _Optional[int] = ..., todev_rechgcmd: _Optional[int] = ..., todev_edgecmd: _Optional[int] = ..., todev_draw_border: _Optional[int] = ..., todev_draw_border_end: _Optional[int] = ..., todev_draw_obs: _Optional[int] = ..., todev_draw_obs_end: _Optional[int] = ..., todev_chl_line: _Optional[int] = ..., todev_chl_line_end: _Optional[int] = ..., todev_save_task: _Optional[int] = ..., todev_cancel_suscmd: _Optional[int] = ..., todev_reset_chg_pile: _Optional[int] = ..., todev_cancel_draw_cmd: _Optional[int] = ..., todev_one_touch_leave_pile: _Optional[int] = ..., todev_mow_task: _Optional[_Union[NavStartJob, _Mapping]] = ..., toapp_bstate: _Optional[_Union[NavBorderState, _Mapping]] = ..., todev_lat_up_ack: _Optional[int] = ..., todev_gethash: _Optional[_Union[NavGetHashList, _Mapping]] = ..., toapp_gethash_ack: _Optional[_Union[NavGetHashListAck, _Mapping]] = ..., todev_get_commondata: _Optional[_Union[NavGetCommData, _Mapping]] = ..., toapp_get_commondata_ack: _Optional[_Union[NavGetCommDataAck, _Mapping]] = ..., bidire_reqconver_path: _Optional[_Union[NavReqCoverPath, _Mapping]] = ..., toapp_zigzag: _Optional[_Union[NavUploadZigZagResult, _Mapping]] = ..., todev_zigzag_ack: _Optional[_Union[NavUploadZigZagResultAck, _Mapping]] = ..., todev_taskctrl: _Optional[_Union[NavTaskCtrl, _Mapping]] = ..., bidire_taskid: _Optional[_Union[NavTaskIdRw, _Mapping]] = ..., toapp_bp: _Optional[_Union[NavTaskBreakPoint, _Mapping]] = ..., todev_planjob_set: _Optional[_Union[NavPlanJobSet, _Mapping]] = ..., todev_unable_time_set: _Optional[_Union[NavUnableTimeSet, _Mapping]] = ..., simulation_cmd: _Optional[_Union[SimulationCmdData, _Mapping]] = ..., todev_work_report_update_cmd: _Optional[_Union[WorkReportUpdateCmd, _Mapping]] = ..., toapp_work_report_update_ack: _Optional[_Union[WorkReportUpdateAck, _Mapping]] = ..., todev_work_report_cmd: _Optional[_Union[WorkReportCmdData, _Mapping]] = ..., toapp_work_report_ack: _Optional[_Union[WorkReportInfoAck, _Mapping]] = ..., toapp_work_report_upload: _Optional[_Union[WorkReportInfoAck, _Mapping]] = ..., app_request_cover_paths: _Optional[_Union[app_request_cover_paths_t, _Mapping]] = ..., cover_path_upload: _Optional[_Union[cover_path_upload_t, _Mapping]] = ..., zone_start_precent: _Optional[_Union[zone_start_precent_t, _Mapping]] = ..., vision_ctrl: _Optional[_Union[vision_ctrl_msg, _Mapping]] = ..., nav_sys_param_cmd: _Optional[_Union[nav_sys_param_msg, _Mapping]] = ..., plan_task_execute: _Optional[_Union[nav_plan_task_execute, _Mapping]] = ..., toapp_costmap: _Optional[_Union[costmap_t, _Mapping]] = ..., plan_task_name_id: _Optional[_Union[plan_task_name_id_t, _Mapping]] = ..., all_plan_task: _Optional[_Union[nav_get_all_plan_task, _Mapping]] = ..., todev_taskctrl_ack: _Optional[_Union[NavTaskCtrlAck, _Mapping]] = ..., toapp_map_name_msg: _Optional[_Union[NavMapNameMsg, _Mapping]] = ..., todev_svg_msg: _Optional[_Union[SvgMessageAckT, _Mapping]] = ..., toapp_svg_msg: _Optional[_Union[SvgMessageAckT, _Mapping]] = ..., toapp_all_hash_name: _Optional[_Union[AppGetAllAreaHashName, _Mapping]] = ...) -> None: ...
177
+ def __init__(self, toapp_lat_up: _Optional[_Union[NavLatLonUp, _Mapping]] = ..., toapp_pos_up: _Optional[_Union[NavPosUp, _Mapping]] = ..., todev_chl_line_data: _Optional[_Union[NavCHlLineData, _Mapping]] = ..., toapp_task_info: _Optional[_Union[NavTaskInfo, _Mapping]] = ..., toapp_opt_line_up: _Optional[_Union[NavOptLineUp, _Mapping]] = ..., toapp_opt_border_info: _Optional[_Union[NavOptiBorderInfo, _Mapping]] = ..., toapp_opt_obs_info: _Optional[_Union[NavOptObsInfo, _Mapping]] = ..., todev_task_info_ack: _Optional[_Union[NavResFrame, _Mapping]] = ..., todev_opt_border_info_ack: _Optional[_Union[NavResFrame, _Mapping]] = ..., todev_opt_obs_info_ack: _Optional[_Union[NavResFrame, _Mapping]] = ..., todev_opt_line_up_ack: _Optional[_Union[NavResFrame, _Mapping]] = ..., toapp_chgpileto: _Optional[_Union[chargePileType, _Mapping]] = ..., todev_sustask: _Optional[int] = ..., todev_rechgcmd: _Optional[int] = ..., todev_edgecmd: _Optional[int] = ..., todev_draw_border: _Optional[int] = ..., todev_draw_border_end: _Optional[int] = ..., todev_draw_obs: _Optional[int] = ..., todev_draw_obs_end: _Optional[int] = ..., todev_chl_line: _Optional[int] = ..., todev_chl_line_end: _Optional[int] = ..., todev_save_task: _Optional[int] = ..., todev_cancel_suscmd: _Optional[int] = ..., todev_reset_chg_pile: _Optional[int] = ..., todev_cancel_draw_cmd: _Optional[int] = ..., todev_one_touch_leave_pile: _Optional[int] = ..., todev_mow_task: _Optional[_Union[NavStartJob, _Mapping]] = ..., toapp_bstate: _Optional[_Union[NavBorderState, _Mapping]] = ..., todev_lat_up_ack: _Optional[int] = ..., todev_gethash: _Optional[_Union[NavGetHashList, _Mapping]] = ..., toapp_gethash_ack: _Optional[_Union[NavGetHashListAck, _Mapping]] = ..., todev_get_commondata: _Optional[_Union[NavGetCommData, _Mapping]] = ..., toapp_get_commondata_ack: _Optional[_Union[NavGetCommDataAck, _Mapping]] = ..., bidire_reqconver_path: _Optional[_Union[NavReqCoverPath, _Mapping]] = ..., toapp_zigzag: _Optional[_Union[NavUploadZigZagResult, _Mapping]] = ..., todev_zigzag_ack: _Optional[_Union[NavUploadZigZagResultAck, _Mapping]] = ..., todev_taskctrl: _Optional[_Union[NavTaskCtrl, _Mapping]] = ..., bidire_taskid: _Optional[_Union[NavTaskIdRw, _Mapping]] = ..., toapp_bp: _Optional[_Union[NavTaskBreakPoint, _Mapping]] = ..., todev_planjob_set: _Optional[_Union[NavPlanJobSet, _Mapping]] = ..., todev_unable_time_set: _Optional[_Union[NavUnableTimeSet, _Mapping]] = ..., simulation_cmd: _Optional[_Union[SimulationCmdData, _Mapping]] = ..., todev_work_report_update_cmd: _Optional[_Union[WorkReportUpdateCmd, _Mapping]] = ..., toapp_work_report_update_ack: _Optional[_Union[WorkReportUpdateAck, _Mapping]] = ..., todev_work_report_cmd: _Optional[_Union[WorkReportCmdData, _Mapping]] = ..., toapp_work_report_ack: _Optional[_Union[WorkReportInfoAck, _Mapping]] = ..., toapp_work_report_upload: _Optional[_Union[WorkReportInfoAck, _Mapping]] = ..., app_request_cover_paths: _Optional[_Union[app_request_cover_paths_t, _Mapping]] = ..., cover_path_upload: _Optional[_Union[cover_path_upload_t, _Mapping]] = ..., zone_start_precent: _Optional[_Union[zone_start_precent_t, _Mapping]] = ..., vision_ctrl: _Optional[_Union[vision_ctrl_msg, _Mapping]] = ..., nav_sys_param_cmd: _Optional[_Union[nav_sys_param_msg, _Mapping]] = ..., plan_task_execute: _Optional[_Union[nav_plan_task_execute, _Mapping]] = ..., toapp_costmap: _Optional[_Union[costmap_t, _Mapping]] = ..., plan_task_name_id: _Optional[_Union[plan_task_name_id_t, _Mapping]] = ..., all_plan_task: _Optional[_Union[nav_get_all_plan_task, _Mapping]] = ..., todev_taskctrl_ack: _Optional[_Union[NavTaskCtrlAck, _Mapping]] = ..., toapp_map_name_msg: _Optional[_Union[NavMapNameMsg, _Mapping]] = ..., todev_svg_msg: _Optional[_Union[svg_message_ack_t, _Mapping]] = ..., toapp_svg_msg: _Optional[_Union[svg_message_ack_t, _Mapping]] = ..., toapp_all_hash_name: _Optional[_Union[AppGetAllAreaHashName, _Mapping]] = ..., toapp_edge_points: _Optional[_Union[NavEdgePoints, _Mapping]] = ..., toapp_edge_points_ack: _Optional[_Union[NavEdgePointsAck, _Mapping]] = ..., toapp_manual_element: _Optional[_Union[ManualElementMessage, _Mapping]] = ...) -> None: ...
150
178
 
151
179
  class NavBorderDataGet(_message.Message):
152
180
  __slots__ = ["borderLen", "currentFrame", "jobId"]
@@ -194,13 +222,46 @@ class NavCHlLineDataAck(_message.Message):
194
222
  startJobRI: int
195
223
  def __init__(self, startJobRI: _Optional[int] = ..., endJobRI: _Optional[int] = ..., currentFrame: _Optional[int] = ...) -> None: ...
196
224
 
225
+ class NavEdgePoints(_message.Message):
226
+ __slots__ = ["Hash", "action", "currentFrame", "dataCouple", "result", "totalFrame", "type"]
227
+ ACTION_FIELD_NUMBER: _ClassVar[int]
228
+ CURRENTFRAME_FIELD_NUMBER: _ClassVar[int]
229
+ DATACOUPLE_FIELD_NUMBER: _ClassVar[int]
230
+ HASH_FIELD_NUMBER: _ClassVar[int]
231
+ Hash: int
232
+ RESULT_FIELD_NUMBER: _ClassVar[int]
233
+ TOTALFRAME_FIELD_NUMBER: _ClassVar[int]
234
+ TYPE_FIELD_NUMBER: _ClassVar[int]
235
+ action: int
236
+ currentFrame: int
237
+ dataCouple: _containers.RepeatedCompositeFieldContainer[_common_pb2.CommDataCouple]
238
+ result: int
239
+ totalFrame: int
240
+ type: int
241
+ def __init__(self, result: _Optional[int] = ..., action: _Optional[int] = ..., type: _Optional[int] = ..., Hash: _Optional[int] = ..., totalFrame: _Optional[int] = ..., currentFrame: _Optional[int] = ..., dataCouple: _Optional[_Iterable[_Union[_common_pb2.CommDataCouple, _Mapping]]] = ...) -> None: ...
242
+
243
+ class NavEdgePointsAck(_message.Message):
244
+ __slots__ = ["Hash", "action", "currentFrame", "result", "totalFrame", "type"]
245
+ ACTION_FIELD_NUMBER: _ClassVar[int]
246
+ CURRENTFRAME_FIELD_NUMBER: _ClassVar[int]
247
+ HASH_FIELD_NUMBER: _ClassVar[int]
248
+ Hash: int
249
+ RESULT_FIELD_NUMBER: _ClassVar[int]
250
+ TOTALFRAME_FIELD_NUMBER: _ClassVar[int]
251
+ TYPE_FIELD_NUMBER: _ClassVar[int]
252
+ action: int
253
+ currentFrame: int
254
+ result: int
255
+ totalFrame: int
256
+ type: int
257
+ def __init__(self, result: _Optional[int] = ..., action: _Optional[int] = ..., type: _Optional[int] = ..., Hash: _Optional[int] = ..., totalFrame: _Optional[int] = ..., currentFrame: _Optional[int] = ...) -> None: ...
258
+
197
259
  class NavGetCommData(_message.Message):
198
- __slots__ = ["Hash", "action", "currentFrame", "dataHash", "paternalHashA", "paternalHashB", "pver", "reserved", "subCmd", "totalFrame", "type"]
260
+ __slots__ = ["action", "currentFrame", "dataHash", "hash", "paternalHashA", "paternalHashB", "pver", "reserved", "subCmd", "totalFrame", "type"]
199
261
  ACTION_FIELD_NUMBER: _ClassVar[int]
200
262
  CURRENTFRAME_FIELD_NUMBER: _ClassVar[int]
201
263
  DATAHASH_FIELD_NUMBER: _ClassVar[int]
202
264
  HASH_FIELD_NUMBER: _ClassVar[int]
203
- Hash: int
204
265
  PATERNALHASHA_FIELD_NUMBER: _ClassVar[int]
205
266
  PATERNALHASHB_FIELD_NUMBER: _ClassVar[int]
206
267
  PVER_FIELD_NUMBER: _ClassVar[int]
@@ -211,6 +272,7 @@ class NavGetCommData(_message.Message):
211
272
  action: int
212
273
  currentFrame: int
213
274
  dataHash: int
275
+ hash: int
214
276
  paternalHashA: int
215
277
  paternalHashB: int
216
278
  pver: int
@@ -218,10 +280,10 @@ class NavGetCommData(_message.Message):
218
280
  subCmd: int
219
281
  totalFrame: int
220
282
  type: int
221
- def __init__(self, pver: _Optional[int] = ..., subCmd: _Optional[int] = ..., action: _Optional[int] = ..., type: _Optional[int] = ..., Hash: _Optional[int] = ..., paternalHashA: _Optional[int] = ..., paternalHashB: _Optional[int] = ..., totalFrame: _Optional[int] = ..., currentFrame: _Optional[int] = ..., dataHash: _Optional[int] = ..., reserved: _Optional[str] = ...) -> None: ...
283
+ def __init__(self, pver: _Optional[int] = ..., subCmd: _Optional[int] = ..., action: _Optional[int] = ..., type: _Optional[int] = ..., hash: _Optional[int] = ..., paternalHashA: _Optional[int] = ..., paternalHashB: _Optional[int] = ..., totalFrame: _Optional[int] = ..., currentFrame: _Optional[int] = ..., dataHash: _Optional[int] = ..., reserved: _Optional[str] = ...) -> None: ...
222
284
 
223
285
  class NavGetCommDataAck(_message.Message):
224
- __slots__ = ["Hash", "action", "currentFrame", "dataCouple", "dataHash", "dataLen", "paternalHashA", "paternalHashB", "pver", "reserved", "result", "subCmd", "totalFrame", "type"]
286
+ __slots__ = ["Hash", "action", "currentFrame", "dataCouple", "dataHash", "dataLen", "nameTime", "paternalHashA", "paternalHashB", "pver", "reserved", "result", "subCmd", "totalFrame", "type"]
225
287
  ACTION_FIELD_NUMBER: _ClassVar[int]
226
288
  CURRENTFRAME_FIELD_NUMBER: _ClassVar[int]
227
289
  DATACOUPLE_FIELD_NUMBER: _ClassVar[int]
@@ -229,6 +291,7 @@ class NavGetCommDataAck(_message.Message):
229
291
  DATALEN_FIELD_NUMBER: _ClassVar[int]
230
292
  HASH_FIELD_NUMBER: _ClassVar[int]
231
293
  Hash: int
294
+ NAMETIME_FIELD_NUMBER: _ClassVar[int]
232
295
  PATERNALHASHA_FIELD_NUMBER: _ClassVar[int]
233
296
  PATERNALHASHB_FIELD_NUMBER: _ClassVar[int]
234
297
  PVER_FIELD_NUMBER: _ClassVar[int]
@@ -242,6 +305,7 @@ class NavGetCommDataAck(_message.Message):
242
305
  dataCouple: _containers.RepeatedCompositeFieldContainer[_common_pb2.CommDataCouple]
243
306
  dataHash: int
244
307
  dataLen: int
308
+ nameTime: NavGetNameTime
245
309
  paternalHashA: int
246
310
  paternalHashB: int
247
311
  pver: int
@@ -250,7 +314,7 @@ class NavGetCommDataAck(_message.Message):
250
314
  subCmd: int
251
315
  totalFrame: int
252
316
  type: int
253
- def __init__(self, pver: _Optional[int] = ..., subCmd: _Optional[int] = ..., result: _Optional[int] = ..., action: _Optional[int] = ..., type: _Optional[int] = ..., Hash: _Optional[int] = ..., paternalHashA: _Optional[int] = ..., paternalHashB: _Optional[int] = ..., totalFrame: _Optional[int] = ..., currentFrame: _Optional[int] = ..., dataHash: _Optional[int] = ..., dataLen: _Optional[int] = ..., dataCouple: _Optional[_Iterable[_Union[_common_pb2.CommDataCouple, _Mapping]]] = ..., reserved: _Optional[str] = ...) -> None: ...
317
+ def __init__(self, pver: _Optional[int] = ..., subCmd: _Optional[int] = ..., result: _Optional[int] = ..., action: _Optional[int] = ..., type: _Optional[int] = ..., Hash: _Optional[int] = ..., paternalHashA: _Optional[int] = ..., paternalHashB: _Optional[int] = ..., totalFrame: _Optional[int] = ..., currentFrame: _Optional[int] = ..., dataHash: _Optional[int] = ..., dataLen: _Optional[int] = ..., dataCouple: _Optional[_Iterable[_Union[_common_pb2.CommDataCouple, _Mapping]]] = ..., reserved: _Optional[str] = ..., nameTime: _Optional[_Union[NavGetNameTime, _Mapping]] = ...) -> None: ...
254
318
 
255
319
  class NavGetHashList(_message.Message):
256
320
  __slots__ = ["currentFrame", "dataHash", "pver", "reserved", "subCmd", "totalFrame"]
@@ -290,6 +354,16 @@ class NavGetHashListAck(_message.Message):
290
354
  totalFrame: int
291
355
  def __init__(self, pver: _Optional[int] = ..., subCmd: _Optional[int] = ..., totalFrame: _Optional[int] = ..., currentFrame: _Optional[int] = ..., dataHash: _Optional[int] = ..., hashLen: _Optional[int] = ..., reserved: _Optional[str] = ..., result: _Optional[int] = ..., dataCouple: _Optional[_Iterable[int]] = ...) -> None: ...
292
356
 
357
+ class NavGetNameTime(_message.Message):
358
+ __slots__ = ["create_time", "modify_time", "name"]
359
+ CREATE_TIME_FIELD_NUMBER: _ClassVar[int]
360
+ MODIFY_TIME_FIELD_NUMBER: _ClassVar[int]
361
+ NAME_FIELD_NUMBER: _ClassVar[int]
362
+ create_time: int
363
+ modify_time: int
364
+ name: str
365
+ def __init__(self, name: _Optional[str] = ..., create_time: _Optional[int] = ..., modify_time: _Optional[int] = ...) -> None: ...
366
+
293
367
  class NavLatLonUp(_message.Message):
294
368
  __slots__ = ["lat", "lon"]
295
369
  LAT_FIELD_NUMBER: _ClassVar[int]
@@ -299,18 +373,18 @@ class NavLatLonUp(_message.Message):
299
373
  def __init__(self, lat: _Optional[float] = ..., lon: _Optional[float] = ...) -> None: ...
300
374
 
301
375
  class NavMapNameMsg(_message.Message):
302
- __slots__ = ["device_id", "hash", "name", "result", "rw"]
303
- DEVICE_ID_FIELD_NUMBER: _ClassVar[int]
376
+ __slots__ = ["deviceId", "hash", "name", "result", "rw"]
377
+ DEVICEID_FIELD_NUMBER: _ClassVar[int]
304
378
  HASH_FIELD_NUMBER: _ClassVar[int]
305
379
  NAME_FIELD_NUMBER: _ClassVar[int]
306
380
  RESULT_FIELD_NUMBER: _ClassVar[int]
307
381
  RW_FIELD_NUMBER: _ClassVar[int]
308
- device_id: str
382
+ deviceId: str
309
383
  hash: int
310
384
  name: str
311
385
  result: int
312
386
  rw: int
313
- def __init__(self, rw: _Optional[int] = ..., hash: _Optional[int] = ..., name: _Optional[str] = ..., result: _Optional[int] = ..., device_id: _Optional[str] = ...) -> None: ...
387
+ def __init__(self, rw: _Optional[int] = ..., hash: _Optional[int] = ..., name: _Optional[str] = ..., result: _Optional[int] = ..., deviceId: _Optional[str] = ...) -> None: ...
314
388
 
315
389
  class NavObstiBorderDataGet(_message.Message):
316
390
  __slots__ = ["currentFrame", "obstacleIndex", "obstaclesLen"]
@@ -639,20 +713,22 @@ class NavTaskProgress(_message.Message):
639
713
  def __init__(self, taskProgress: _Optional[int] = ...) -> None: ...
640
714
 
641
715
  class NavUnableTimeSet(_message.Message):
642
- __slots__ = ["deviceId", "reserved", "result", "subCmd", "unableEndTime", "unableStartTime"]
716
+ __slots__ = ["deviceId", "reserved", "result", "subCmd", "trigger", "unableEndTime", "unableStartTime"]
643
717
  DEVICEID_FIELD_NUMBER: _ClassVar[int]
644
718
  RESERVED_FIELD_NUMBER: _ClassVar[int]
645
719
  RESULT_FIELD_NUMBER: _ClassVar[int]
646
720
  SUBCMD_FIELD_NUMBER: _ClassVar[int]
721
+ TRIGGER_FIELD_NUMBER: _ClassVar[int]
647
722
  UNABLEENDTIME_FIELD_NUMBER: _ClassVar[int]
648
723
  UNABLESTARTTIME_FIELD_NUMBER: _ClassVar[int]
649
724
  deviceId: str
650
725
  reserved: str
651
726
  result: int
652
727
  subCmd: int
728
+ trigger: int
653
729
  unableEndTime: str
654
730
  unableStartTime: str
655
- def __init__(self, subCmd: _Optional[int] = ..., deviceId: _Optional[str] = ..., unableStartTime: _Optional[str] = ..., unableEndTime: _Optional[str] = ..., result: _Optional[int] = ..., reserved: _Optional[str] = ...) -> None: ...
731
+ def __init__(self, subCmd: _Optional[int] = ..., deviceId: _Optional[str] = ..., unableStartTime: _Optional[str] = ..., unableEndTime: _Optional[str] = ..., result: _Optional[int] = ..., reserved: _Optional[str] = ..., trigger: _Optional[int] = ...) -> None: ...
656
732
 
657
733
  class NavUploadZigZagResult(_message.Message):
658
734
  __slots__ = ["area", "channelMode", "channelModeId", "currentFrame", "currentHash", "currentZone", "currentZonePathId", "currentZonePathNum", "dataCouple", "dataHash", "dataLen", "jobId", "jobVer", "pver", "reserved", "result", "subCmd", "time", "totalFrame", "totalZoneNum"]
@@ -728,28 +804,6 @@ class SimulationCmdData(_message.Message):
728
804
  subCmd: int
729
805
  def __init__(self, subCmd: _Optional[int] = ..., param_id: _Optional[int] = ..., param_value: _Optional[_Iterable[int]] = ...) -> None: ...
730
806
 
731
- class SvgMessageAckT(_message.Message):
732
- __slots__ = ["current_frame", "data_hash", "paternal_hash_a", "pver", "result", "sub_cmd", "svg_message", "total_frame", "type"]
733
- CURRENT_FRAME_FIELD_NUMBER: _ClassVar[int]
734
- DATA_HASH_FIELD_NUMBER: _ClassVar[int]
735
- PATERNAL_HASH_A_FIELD_NUMBER: _ClassVar[int]
736
- PVER_FIELD_NUMBER: _ClassVar[int]
737
- RESULT_FIELD_NUMBER: _ClassVar[int]
738
- SUB_CMD_FIELD_NUMBER: _ClassVar[int]
739
- SVG_MESSAGE_FIELD_NUMBER: _ClassVar[int]
740
- TOTAL_FRAME_FIELD_NUMBER: _ClassVar[int]
741
- TYPE_FIELD_NUMBER: _ClassVar[int]
742
- current_frame: int
743
- data_hash: int
744
- paternal_hash_a: int
745
- pver: int
746
- result: int
747
- sub_cmd: int
748
- svg_message: svg_message_t
749
- total_frame: int
750
- type: int
751
- def __init__(self, pver: _Optional[int] = ..., sub_cmd: _Optional[int] = ..., total_frame: _Optional[int] = ..., current_frame: _Optional[int] = ..., data_hash: _Optional[int] = ..., paternal_hash_a: _Optional[int] = ..., type: _Optional[int] = ..., result: _Optional[int] = ..., svg_message: _Optional[_Union[svg_message_t, _Mapping]] = ...) -> None: ...
752
-
753
807
  class WorkReportCmdData(_message.Message):
754
808
  __slots__ = ["getInfoNum", "subCmd"]
755
809
  GETINFONUM_FIELD_NUMBER: _ClassVar[int]
@@ -759,11 +813,12 @@ class WorkReportCmdData(_message.Message):
759
813
  def __init__(self, subCmd: _Optional[int] = ..., getInfoNum: _Optional[int] = ...) -> None: ...
760
814
 
761
815
  class WorkReportInfoAck(_message.Message):
762
- __slots__ = ["current_ack_num", "end_work_time", "height_of_knife", "interrupt_flag", "start_work_time", "total_ack_num", "work_ares", "work_progress", "work_result", "work_time_used", "work_type"]
816
+ __slots__ = ["current_ack_num", "end_work_time", "height_of_knife", "interrupt_flag", "job_content", "start_work_time", "total_ack_num", "work_ares", "work_progress", "work_result", "work_time_used", "work_type"]
763
817
  CURRENT_ACK_NUM_FIELD_NUMBER: _ClassVar[int]
764
818
  END_WORK_TIME_FIELD_NUMBER: _ClassVar[int]
765
819
  HEIGHT_OF_KNIFE_FIELD_NUMBER: _ClassVar[int]
766
820
  INTERRUPT_FLAG_FIELD_NUMBER: _ClassVar[int]
821
+ JOB_CONTENT_FIELD_NUMBER: _ClassVar[int]
767
822
  START_WORK_TIME_FIELD_NUMBER: _ClassVar[int]
768
823
  TOTAL_ACK_NUM_FIELD_NUMBER: _ClassVar[int]
769
824
  WORK_ARES_FIELD_NUMBER: _ClassVar[int]
@@ -775,6 +830,7 @@ class WorkReportInfoAck(_message.Message):
775
830
  end_work_time: int
776
831
  height_of_knife: int
777
832
  interrupt_flag: bool
833
+ job_content: int
778
834
  start_work_time: int
779
835
  total_ack_num: int
780
836
  work_ares: float
@@ -782,7 +838,7 @@ class WorkReportInfoAck(_message.Message):
782
838
  work_result: int
783
839
  work_time_used: int
784
840
  work_type: int
785
- def __init__(self, interrupt_flag: bool = ..., start_work_time: _Optional[int] = ..., end_work_time: _Optional[int] = ..., work_time_used: _Optional[int] = ..., work_ares: _Optional[float] = ..., work_progress: _Optional[int] = ..., height_of_knife: _Optional[int] = ..., work_type: _Optional[int] = ..., work_result: _Optional[int] = ..., total_ack_num: _Optional[int] = ..., current_ack_num: _Optional[int] = ...) -> None: ...
841
+ def __init__(self, interrupt_flag: bool = ..., start_work_time: _Optional[int] = ..., end_work_time: _Optional[int] = ..., work_time_used: _Optional[int] = ..., work_ares: _Optional[float] = ..., work_progress: _Optional[int] = ..., height_of_knife: _Optional[int] = ..., work_type: _Optional[int] = ..., work_result: _Optional[int] = ..., total_ack_num: _Optional[int] = ..., current_ack_num: _Optional[int] = ..., job_content: _Optional[int] = ...) -> None: ...
786
842
 
787
843
  class WorkReportUpdateAck(_message.Message):
788
844
  __slots__ = ["info_num", "update_flag"]
@@ -818,6 +874,14 @@ class app_request_cover_paths_t(_message.Message):
818
874
  transaction_id: int
819
875
  def __init__(self, pver: _Optional[int] = ..., subCmd: _Optional[int] = ..., totalFrame: _Optional[int] = ..., currentFrame: _Optional[int] = ..., dataHash: _Optional[int] = ..., transaction_id: _Optional[int] = ..., reserved: _Optional[_Iterable[int]] = ..., hash_list: _Optional[_Iterable[int]] = ...) -> None: ...
820
876
 
877
+ class area_hash_name(_message.Message):
878
+ __slots__ = ["hash", "name"]
879
+ HASH_FIELD_NUMBER: _ClassVar[int]
880
+ NAME_FIELD_NUMBER: _ClassVar[int]
881
+ hash: int
882
+ name: str
883
+ def __init__(self, hash: _Optional[int] = ..., name: _Optional[str] = ...) -> None: ...
884
+
821
885
  class chargePileType(_message.Message):
822
886
  __slots__ = ["toward", "x", "y"]
823
887
  TOWARD_FIELD_NUMBER: _ClassVar[int]
@@ -863,7 +927,7 @@ class cover_path_packet_t(_message.Message):
863
927
  def __init__(self, path_hash: _Optional[int] = ..., path_type: _Optional[int] = ..., path_total: _Optional[int] = ..., path_cur: _Optional[int] = ..., zone_hash: _Optional[int] = ..., dataCouple: _Optional[_Iterable[_Union[_common_pb2.CommDataCouple, _Mapping]]] = ...) -> None: ...
864
928
 
865
929
  class cover_path_upload_t(_message.Message):
866
- __slots__ = ["area", "currentFrame", "dataHash", "dataLen", "path_packets", "pver", "reserved", "result", "subCmd", "time", "totalFrame", "total_path_num", "transaction_id", "vaild_path_num"]
930
+ __slots__ = ["area", "currentFrame", "dataHash", "dataLen", "path_packets", "pver", "reserved", "result", "subCmd", "time", "totalFrame", "total_path_num", "transaction_id", "valid_path_num"]
867
931
  AREA_FIELD_NUMBER: _ClassVar[int]
868
932
  CURRENTFRAME_FIELD_NUMBER: _ClassVar[int]
869
933
  DATAHASH_FIELD_NUMBER: _ClassVar[int]
@@ -877,7 +941,7 @@ class cover_path_upload_t(_message.Message):
877
941
  TOTALFRAME_FIELD_NUMBER: _ClassVar[int]
878
942
  TOTAL_PATH_NUM_FIELD_NUMBER: _ClassVar[int]
879
943
  TRANSACTION_ID_FIELD_NUMBER: _ClassVar[int]
880
- VAILD_PATH_NUM_FIELD_NUMBER: _ClassVar[int]
944
+ VALID_PATH_NUM_FIELD_NUMBER: _ClassVar[int]
881
945
  area: int
882
946
  currentFrame: int
883
947
  dataHash: int
@@ -891,8 +955,8 @@ class cover_path_upload_t(_message.Message):
891
955
  totalFrame: int
892
956
  total_path_num: int
893
957
  transaction_id: int
894
- vaild_path_num: int
895
- def __init__(self, pver: _Optional[int] = ..., result: _Optional[int] = ..., subCmd: _Optional[int] = ..., area: _Optional[int] = ..., time: _Optional[int] = ..., totalFrame: _Optional[int] = ..., currentFrame: _Optional[int] = ..., total_path_num: _Optional[int] = ..., vaild_path_num: _Optional[int] = ..., dataHash: _Optional[int] = ..., transaction_id: _Optional[int] = ..., reserved: _Optional[_Iterable[int]] = ..., dataLen: _Optional[int] = ..., path_packets: _Optional[_Iterable[_Union[cover_path_packet_t, _Mapping]]] = ...) -> None: ...
958
+ valid_path_num: int
959
+ def __init__(self, pver: _Optional[int] = ..., result: _Optional[int] = ..., subCmd: _Optional[int] = ..., area: _Optional[int] = ..., time: _Optional[int] = ..., totalFrame: _Optional[int] = ..., currentFrame: _Optional[int] = ..., total_path_num: _Optional[int] = ..., valid_path_num: _Optional[int] = ..., dataHash: _Optional[int] = ..., transaction_id: _Optional[int] = ..., reserved: _Optional[_Iterable[int]] = ..., dataLen: _Optional[int] = ..., path_packets: _Optional[_Iterable[_Union[cover_path_packet_t, _Mapping]]] = ...) -> None: ...
896
960
 
897
961
  class nav_get_all_plan_task(_message.Message):
898
962
  __slots__ = ["tasks"]
@@ -930,6 +994,28 @@ class plan_task_name_id_t(_message.Message):
930
994
  name: str
931
995
  def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ...) -> None: ...
932
996
 
997
+ class svg_message_ack_t(_message.Message):
998
+ __slots__ = ["currentFrame", "dataHash", "paternalHashA", "pver", "result", "subCmd", "svg_message", "totalFrame", "type"]
999
+ CURRENTFRAME_FIELD_NUMBER: _ClassVar[int]
1000
+ DATAHASH_FIELD_NUMBER: _ClassVar[int]
1001
+ PATERNALHASHA_FIELD_NUMBER: _ClassVar[int]
1002
+ PVER_FIELD_NUMBER: _ClassVar[int]
1003
+ RESULT_FIELD_NUMBER: _ClassVar[int]
1004
+ SUBCMD_FIELD_NUMBER: _ClassVar[int]
1005
+ SVG_MESSAGE_FIELD_NUMBER: _ClassVar[int]
1006
+ TOTALFRAME_FIELD_NUMBER: _ClassVar[int]
1007
+ TYPE_FIELD_NUMBER: _ClassVar[int]
1008
+ currentFrame: int
1009
+ dataHash: int
1010
+ paternalHashA: int
1011
+ pver: int
1012
+ result: int
1013
+ subCmd: int
1014
+ svg_message: svg_message_t
1015
+ totalFrame: int
1016
+ type: int
1017
+ def __init__(self, pver: _Optional[int] = ..., subCmd: _Optional[int] = ..., totalFrame: _Optional[int] = ..., currentFrame: _Optional[int] = ..., dataHash: _Optional[int] = ..., paternalHashA: _Optional[int] = ..., type: _Optional[int] = ..., result: _Optional[int] = ..., svg_message: _Optional[_Union[svg_message_t, _Mapping]] = ...) -> None: ...
1018
+
933
1019
  class svg_message_t(_message.Message):
934
1020
  __slots__ = ["base_height_m", "base_height_pix", "base_width_m", "base_width_pix", "data_count", "hide_svg", "name_count", "rotate", "scale", "svg_file_data", "svg_file_name", "x_move", "y_move"]
935
1021
  BASE_HEIGHT_M_FIELD_NUMBER: _ClassVar[int]
@@ -958,7 +1044,7 @@ class svg_message_t(_message.Message):
958
1044
  svg_file_name: str
959
1045
  x_move: float
960
1046
  y_move: float
961
- def __init__(self, x_move: _Optional[float] = ..., y_move: _Optional[float] = ..., scale: _Optional[float] = ..., rotate: _Optional[float] = ..., base_width_m: _Optional[float] = ..., base_width_pix: _Optional[int] = ..., base_height_m: _Optional[float] = ..., base_height_pix: _Optional[int] = ..., data_count: _Optional[int] = ..., hide_svg: bool = ..., name_count: _Optional[int] = ..., svg_file_name: _Optional[str] = ..., svg_file_data: _Optional[str] = ...) -> None: ...
1047
+ def __init__(self, x_move: _Optional[float] = ..., y_move: _Optional[float] = ..., scale: _Optional[float] = ..., rotate: _Optional[float] = ..., base_width_m: _Optional[float] = ..., base_height_m: _Optional[float] = ..., base_width_pix: _Optional[int] = ..., base_height_pix: _Optional[int] = ..., svg_file_name: _Optional[str] = ..., svg_file_data: _Optional[str] = ..., name_count: _Optional[int] = ..., data_count: _Optional[int] = ..., hide_svg: bool = ...) -> None: ...
962
1048
 
963
1049
  class vision_ctrl_msg(_message.Message):
964
1050
  __slots__ = ["cmd", "type"]
@@ -5,6 +5,25 @@ enum infoType {
5
5
  IT_OTA = 1;
6
6
  }
7
7
 
8
+ message uplink_t {
9
+ int32 pkg_seq = 1;
10
+ int32 status = 2;
11
+ }
12
+
13
+ message downlink_t {
14
+ int32 fw_id = 1;
15
+ int32 pkg_seq = 2;
16
+ repeated int32 data = 3;
17
+ }
18
+
19
+ message fwDownloadCtrl {
20
+ oneof SubFwDownloadCtrl {
21
+ uplink_t uplink = 2;
22
+ downlink_t downlink = 3;
23
+ }
24
+ int32 cmd = 1;
25
+ }
26
+
8
27
  message baseInfo {
9
28
  string dev_version = 1;
10
29
  int32 dev_status = 2;
@@ -26,17 +45,36 @@ message getInfoReq {
26
45
  }
27
46
 
28
47
  message getInfoRsp {
29
- int32 result = 1;
30
- infoType type = 2;
31
48
  oneof info {
32
49
  baseInfo base = 3;
33
50
  otaInfo ota = 4;
34
51
  }
52
+ int32 result = 1;
53
+ infoType type = 2;
54
+ }
55
+
56
+ message FotaInfo_t {
57
+ int32 need_ota_num = 1;
58
+ int32 need_ota_img_size = 2;
59
+ int32 ota_otype = 3;
60
+ string ota_oid = 4;
61
+ string ota_version = 5;
62
+ }
63
+
64
+ message FotaSubInfo_t {
65
+ int32 sub_mod_ota_flag = 1;
66
+ int32 sub_mod_id = 2;
67
+ int32 sub_img_size = 3;
68
+ string sub_mod_version = 4;
69
+ string sub_img_url = 5;
35
70
  }
36
71
 
37
72
  message MctlOta {
38
73
  oneof SubOtaMsg {
39
74
  getInfoReq todev_get_info_req = 1;
40
75
  getInfoRsp toapp_get_info_rsp = 2;
76
+ fwDownloadCtrl fw_download_ctrl = 3;
77
+ FotaInfo_t fota_info = 4;
78
+ FotaSubInfo_t fota_sub_info = 5;
41
79
  }
42
80
  }
@@ -13,23 +13,33 @@ _sym_db = _symbol_database.Default()
13
13
 
14
14
 
15
15
 
16
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!pymammotion/proto/mctrl_ota.proto\"k\n\x08\x62\x61seInfo\x12\x13\n\x0b\x64\x65v_version\x18\x01 \x01(\t\x12\x12\n\ndev_status\x18\x02 \x01(\x05\x12\x10\n\x08\x62\x61tt_val\x18\x03 \x01(\x05\x12\x13\n\x0binit_status\x18\x04 \x01(\x05\x12\x0f\n\x07is_tilt\x18\x05 \x01(\x05\"\\\n\x07otaInfo\x12\r\n\x05otaid\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x10\n\x08progress\x18\x03 \x01(\x05\x12\x0e\n\x06result\x18\x04 \x01(\x05\x12\x0f\n\x07message\x18\x05 \x01(\t\"%\n\ngetInfoReq\x12\x17\n\x04type\x18\x01 \x01(\x0e\x32\t.infoType\"q\n\ngetInfoRsp\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x17\n\x04type\x18\x02 \x01(\x0e\x32\t.infoType\x12\x19\n\x04\x62\x61se\x18\x03 \x01(\x0b\x32\t.baseInfoH\x00\x12\x17\n\x03ota\x18\x04 \x01(\x0b\x32\x08.otaInfoH\x00\x42\x06\n\x04info\"l\n\x07MctlOta\x12)\n\x12todev_get_info_req\x18\x01 \x01(\x0b\x32\x0b.getInfoReqH\x00\x12)\n\x12toapp_get_info_rsp\x18\x02 \x01(\x0b\x32\x0b.getInfoRspH\x00\x42\x0b\n\tSubOtaMsg*#\n\x08infoType\x12\x0b\n\x07IT_BASE\x10\x00\x12\n\n\x06IT_OTA\x10\x01\x62\x06proto3')
16
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!pymammotion/proto/mctrl_ota.proto\"+\n\x08uplink_t\x12\x0f\n\x07pkg_seq\x18\x01 \x01(\x05\x12\x0e\n\x06status\x18\x02 \x01(\x05\":\n\ndownlink_t\x12\r\n\x05\x66w_id\x18\x01 \x01(\x05\x12\x0f\n\x07pkg_seq\x18\x02 \x01(\x05\x12\x0c\n\x04\x64\x61ta\x18\x03 \x03(\x05\"p\n\x0e\x66wDownloadCtrl\x12\x1b\n\x06uplink\x18\x02 \x01(\x0b\x32\t.uplink_tH\x00\x12\x1f\n\x08\x64ownlink\x18\x03 \x01(\x0b\x32\x0b.downlink_tH\x00\x12\x0b\n\x03\x63md\x18\x01 \x01(\x05\x42\x13\n\x11SubFwDownloadCtrl\"k\n\x08\x62\x61seInfo\x12\x13\n\x0b\x64\x65v_version\x18\x01 \x01(\t\x12\x12\n\ndev_status\x18\x02 \x01(\x05\x12\x10\n\x08\x62\x61tt_val\x18\x03 \x01(\x05\x12\x13\n\x0binit_status\x18\x04 \x01(\x05\x12\x0f\n\x07is_tilt\x18\x05 \x01(\x05\"\\\n\x07otaInfo\x12\r\n\x05otaid\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x10\n\x08progress\x18\x03 \x01(\x05\x12\x0e\n\x06result\x18\x04 \x01(\x05\x12\x0f\n\x07message\x18\x05 \x01(\t\"%\n\ngetInfoReq\x12\x17\n\x04type\x18\x01 \x01(\x0e\x32\t.infoType\"q\n\ngetInfoRsp\x12\x19\n\x04\x62\x61se\x18\x03 \x01(\x0b\x32\t.baseInfoH\x00\x12\x17\n\x03ota\x18\x04 \x01(\x0b\x32\x08.otaInfoH\x00\x12\x0e\n\x06result\x18\x01 \x01(\x05\x12\x17\n\x04type\x18\x02 \x01(\x0e\x32\t.infoTypeB\x06\n\x04info\"v\n\nFotaInfo_t\x12\x14\n\x0cneed_ota_num\x18\x01 \x01(\x05\x12\x19\n\x11need_ota_img_size\x18\x02 \x01(\x05\x12\x11\n\tota_otype\x18\x03 \x01(\x05\x12\x0f\n\x07ota_oid\x18\x04 \x01(\t\x12\x13\n\x0bota_version\x18\x05 \x01(\t\"\x81\x01\n\rFotaSubInfo_t\x12\x18\n\x10sub_mod_ota_flag\x18\x01 \x01(\x05\x12\x12\n\nsub_mod_id\x18\x02 \x01(\x05\x12\x14\n\x0csub_img_size\x18\x03 \x01(\x05\x12\x17\n\x0fsub_mod_version\x18\x04 \x01(\t\x12\x13\n\x0bsub_img_url\x18\x05 \x01(\t\"\xe4\x01\n\x07MctlOta\x12)\n\x12todev_get_info_req\x18\x01 \x01(\x0b\x32\x0b.getInfoReqH\x00\x12)\n\x12toapp_get_info_rsp\x18\x02 \x01(\x0b\x32\x0b.getInfoRspH\x00\x12+\n\x10\x66w_download_ctrl\x18\x03 \x01(\x0b\x32\x0f.fwDownloadCtrlH\x00\x12 \n\tfota_info\x18\x04 \x01(\x0b\x32\x0b.FotaInfo_tH\x00\x12\'\n\rfota_sub_info\x18\x05 \x01(\x0b\x32\x0e.FotaSubInfo_tH\x00\x42\x0b\n\tSubOtaMsg*#\n\x08infoType\x12\x0b\n\x07IT_BASE\x10\x00\x12\n\n\x06IT_OTA\x10\x01\x62\x06proto3')
17
17
 
18
18
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
19
19
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.mctrl_ota_pb2', globals())
20
20
  if _descriptor._USE_C_DESCRIPTORS == False:
21
21
 
22
22
  DESCRIPTOR._options = None
23
- _INFOTYPE._serialized_start=504
24
- _INFOTYPE._serialized_end=539
25
- _BASEINFO._serialized_start=37
26
- _BASEINFO._serialized_end=144
27
- _OTAINFO._serialized_start=146
28
- _OTAINFO._serialized_end=238
29
- _GETINFOREQ._serialized_start=240
30
- _GETINFOREQ._serialized_end=277
31
- _GETINFORSP._serialized_start=279
32
- _GETINFORSP._serialized_end=392
33
- _MCTLOTA._serialized_start=394
34
- _MCTLOTA._serialized_end=502
23
+ _INFOTYPE._serialized_start=1096
24
+ _INFOTYPE._serialized_end=1131
25
+ _UPLINK_T._serialized_start=37
26
+ _UPLINK_T._serialized_end=80
27
+ _DOWNLINK_T._serialized_start=82
28
+ _DOWNLINK_T._serialized_end=140
29
+ _FWDOWNLOADCTRL._serialized_start=142
30
+ _FWDOWNLOADCTRL._serialized_end=254
31
+ _BASEINFO._serialized_start=256
32
+ _BASEINFO._serialized_end=363
33
+ _OTAINFO._serialized_start=365
34
+ _OTAINFO._serialized_end=457
35
+ _GETINFOREQ._serialized_start=459
36
+ _GETINFOREQ._serialized_end=496
37
+ _GETINFORSP._serialized_start=498
38
+ _GETINFORSP._serialized_end=611
39
+ _FOTAINFO_T._serialized_start=613
40
+ _FOTAINFO_T._serialized_end=731
41
+ _FOTASUBINFO_T._serialized_start=734
42
+ _FOTASUBINFO_T._serialized_end=863
43
+ _MCTLOTA._serialized_start=866
44
+ _MCTLOTA._serialized_end=1094
35
45
  # @@protoc_insertion_point(module_scope)