pymammotion 0.5.69__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.
- pymammotion/__init__.py +53 -0
- pymammotion/agora/__init__.py +0 -0
- pymammotion/agora/agora_api.py +755 -0
- pymammotion/agora/agora_rtc_capabilities.py +748 -0
- pymammotion/agora/agora_websockets.py +1175 -0
- pymammotion/aliyun/__init__.py +1 -0
- pymammotion/aliyun/client.py +235 -0
- pymammotion/aliyun/cloud_gateway.py +982 -0
- pymammotion/aliyun/model/aep_response.py +21 -0
- pymammotion/aliyun/model/connect_response.py +51 -0
- pymammotion/aliyun/model/dev_by_account_response.py +195 -0
- pymammotion/aliyun/model/login_by_oauth_response.py +64 -0
- pymammotion/aliyun/model/regions_response.py +29 -0
- pymammotion/aliyun/model/session_by_authcode_response.py +19 -0
- pymammotion/aliyun/model/thing_response.py +12 -0
- pymammotion/aliyun/regions.py +62 -0
- pymammotion/aliyun/tea/core.py +297 -0
- pymammotion/aliyun/tmp_constant.py +171 -0
- pymammotion/bluetooth/__init__.py +1 -0
- pymammotion/bluetooth/ble.py +62 -0
- pymammotion/bluetooth/ble_message.py +676 -0
- pymammotion/bluetooth/const.py +27 -0
- pymammotion/bluetooth/data/__init__.py +0 -0
- pymammotion/bluetooth/data/convert.py +25 -0
- pymammotion/bluetooth/data/framectrldata.py +40 -0
- pymammotion/bluetooth/data/notifydata.py +62 -0
- pymammotion/bluetooth/model/__init__.py +0 -0
- pymammotion/bluetooth/model/atomic_integer.py +54 -0
- pymammotion/const.py +13 -0
- pymammotion/data/__init__.py +0 -0
- pymammotion/data/model/__init__.py +8 -0
- pymammotion/data/model/account.py +8 -0
- pymammotion/data/model/device.py +192 -0
- pymammotion/data/model/device_config.py +72 -0
- pymammotion/data/model/device_info.py +60 -0
- pymammotion/data/model/device_limits.py +49 -0
- pymammotion/data/model/enums.py +77 -0
- pymammotion/data/model/errors.py +12 -0
- pymammotion/data/model/events.py +14 -0
- pymammotion/data/model/generate_geojson.py +565 -0
- pymammotion/data/model/generate_route_information.py +26 -0
- pymammotion/data/model/hash_list.py +475 -0
- pymammotion/data/model/location.py +36 -0
- pymammotion/data/model/mowing_modes.py +77 -0
- pymammotion/data/model/rapid_state.py +45 -0
- pymammotion/data/model/raw_data.py +215 -0
- pymammotion/data/model/region_data.py +102 -0
- pymammotion/data/model/report_info.py +182 -0
- pymammotion/data/model/work.py +27 -0
- pymammotion/data/mower_state_manager.py +369 -0
- pymammotion/data/mqtt/__init__.py +1 -0
- pymammotion/data/mqtt/event.py +227 -0
- pymammotion/data/mqtt/mammotion_properties.py +276 -0
- pymammotion/data/mqtt/properties.py +203 -0
- pymammotion/data/mqtt/status.py +57 -0
- pymammotion/event/__init__.py +6 -0
- pymammotion/event/event.py +96 -0
- pymammotion/homeassistant/__init__.py +3 -0
- pymammotion/homeassistant/mower_api.py +514 -0
- pymammotion/homeassistant/rtk_api.py +54 -0
- pymammotion/http/__init__.py +0 -0
- pymammotion/http/encryption.py +220 -0
- pymammotion/http/http.py +673 -0
- pymammotion/http/model/__init__.py +0 -0
- pymammotion/http/model/camera_stream.py +31 -0
- pymammotion/http/model/http.py +249 -0
- pymammotion/http/model/response_factory.py +61 -0
- pymammotion/http/model/rtk.py +16 -0
- pymammotion/mammotion/__init__.py +0 -0
- pymammotion/mammotion/commands/__init__.py +0 -0
- pymammotion/mammotion/commands/abstract_message.py +24 -0
- pymammotion/mammotion/commands/mammotion_command.py +81 -0
- pymammotion/mammotion/commands/messages/__init__.py +0 -0
- pymammotion/mammotion/commands/messages/basestation.py +43 -0
- pymammotion/mammotion/commands/messages/driver.py +122 -0
- pymammotion/mammotion/commands/messages/media.py +87 -0
- pymammotion/mammotion/commands/messages/navigation.py +564 -0
- pymammotion/mammotion/commands/messages/network.py +205 -0
- pymammotion/mammotion/commands/messages/ota.py +38 -0
- pymammotion/mammotion/commands/messages/system.py +330 -0
- pymammotion/mammotion/commands/messages/video.py +33 -0
- pymammotion/mammotion/control/__init__.py +0 -0
- pymammotion/mammotion/control/joystick.py +145 -0
- pymammotion/mammotion/devices/__init__.py +29 -0
- pymammotion/mammotion/devices/base.py +163 -0
- pymammotion/mammotion/devices/mammotion.py +571 -0
- pymammotion/mammotion/devices/mammotion_bluetooth.py +496 -0
- pymammotion/mammotion/devices/mammotion_cloud.py +355 -0
- pymammotion/mammotion/devices/mammotion_mower_ble.py +48 -0
- pymammotion/mammotion/devices/mammotion_mower_cloud.py +39 -0
- pymammotion/mammotion/devices/managers/managers.py +81 -0
- pymammotion/mammotion/devices/mower_device.py +120 -0
- pymammotion/mammotion/devices/mower_manager.py +107 -0
- pymammotion/mammotion/devices/rtk_ble.py +89 -0
- pymammotion/mammotion/devices/rtk_cloud.py +115 -0
- pymammotion/mammotion/devices/rtk_device.py +50 -0
- pymammotion/mammotion/devices/rtk_manager.py +125 -0
- pymammotion/mqtt/__init__.py +6 -0
- pymammotion/mqtt/aliyun_mqtt.py +237 -0
- pymammotion/mqtt/linkkit/__init__.py +5 -0
- pymammotion/mqtt/linkkit/h2client.py +585 -0
- pymammotion/mqtt/linkkit/linkkit.py +3025 -0
- pymammotion/mqtt/mammotion_future.py +26 -0
- pymammotion/mqtt/mammotion_mqtt.py +214 -0
- pymammotion/mqtt/mqtt_models.py +66 -0
- pymammotion/proto/__init__.py +4841 -0
- pymammotion/proto/basestation.proto +51 -0
- pymammotion/proto/basestation_pb2.py +35 -0
- pymammotion/proto/basestation_pb2.pyi +89 -0
- pymammotion/proto/common.proto +7 -0
- pymammotion/proto/common_pb2.py +25 -0
- pymammotion/proto/common_pb2.pyi +13 -0
- pymammotion/proto/dev_net.proto +321 -0
- pymammotion/proto/dev_net_pb2.py +111 -0
- pymammotion/proto/dev_net_pb2.pyi +515 -0
- pymammotion/proto/luba_msg.proto +76 -0
- pymammotion/proto/luba_msg_pb2.py +41 -0
- pymammotion/proto/luba_msg_pb2.pyi +97 -0
- pymammotion/proto/luba_mul.proto +129 -0
- pymammotion/proto/luba_mul_pb2.py +61 -0
- pymammotion/proto/luba_mul_pb2.pyi +178 -0
- pymammotion/proto/mctrl_driver.proto +107 -0
- pymammotion/proto/mctrl_driver_pb2.py +57 -0
- pymammotion/proto/mctrl_driver_pb2.pyi +167 -0
- pymammotion/proto/mctrl_nav.proto +591 -0
- pymammotion/proto/mctrl_nav_pb2.py +136 -0
- pymammotion/proto/mctrl_nav_pb2.pyi +1067 -0
- pymammotion/proto/mctrl_ota.proto +80 -0
- pymammotion/proto/mctrl_ota_pb2.py +45 -0
- pymammotion/proto/mctrl_ota_pb2.pyi +128 -0
- pymammotion/proto/mctrl_pept.proto +34 -0
- pymammotion/proto/mctrl_pept_pb2.py +33 -0
- pymammotion/proto/mctrl_pept_pb2.pyi +58 -0
- pymammotion/proto/mctrl_sys.proto +741 -0
- pymammotion/proto/mctrl_sys_pb2.py +206 -0
- pymammotion/proto/mctrl_sys_pb2.pyi +1213 -0
- pymammotion/proto/message_pool.py +3 -0
- pymammotion/proto/py.typed +0 -0
- pymammotion/py.typed +0 -0
- pymammotion/utility/constant/__init__.py +3 -0
- pymammotion/utility/constant/device_constant.py +315 -0
- pymammotion/utility/conversions.py +5 -0
- pymammotion/utility/datatype_converter.py +124 -0
- pymammotion/utility/device_config.py +755 -0
- pymammotion/utility/device_type.py +489 -0
- pymammotion/utility/map.py +259 -0
- pymammotion/utility/movement.py +18 -0
- pymammotion/utility/mur_mur_hash.py +159 -0
- pymammotion/utility/periodic.py +106 -0
- pymammotion/utility/rocker_util.py +194 -0
- pymammotion-0.5.69.dist-info/METADATA +93 -0
- pymammotion-0.5.69.dist-info/RECORD +154 -0
- pymammotion-0.5.69.dist-info/WHEEL +4 -0
- pymammotion-0.5.69.dist-info/licenses/LICENSE +674 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
enum infoType {
|
|
4
|
+
IT_BASE = 0;
|
|
5
|
+
IT_OTA = 1;
|
|
6
|
+
}
|
|
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
|
+
|
|
27
|
+
message baseInfo {
|
|
28
|
+
string dev_version = 1;
|
|
29
|
+
int32 dev_status = 2;
|
|
30
|
+
int32 batt_val = 3;
|
|
31
|
+
int32 init_status = 4;
|
|
32
|
+
int32 is_tilt = 5;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
message otaInfo {
|
|
36
|
+
string otaid = 1;
|
|
37
|
+
string version = 2;
|
|
38
|
+
int32 progress = 3;
|
|
39
|
+
int32 result = 4;
|
|
40
|
+
string message = 5;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
message getInfoReq {
|
|
44
|
+
infoType type = 1;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
message getInfoRsp {
|
|
48
|
+
oneof info {
|
|
49
|
+
baseInfo base = 3;
|
|
50
|
+
otaInfo ota = 4;
|
|
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;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
message MctlOta {
|
|
73
|
+
oneof SubOtaMsg {
|
|
74
|
+
getInfoReq todev_get_info_req = 1;
|
|
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;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: pymammotion/proto/mctrl_ota.proto
|
|
4
|
+
"""Generated protocol buffer code."""
|
|
5
|
+
from google.protobuf.internal import builder as _builder
|
|
6
|
+
from google.protobuf import descriptor as _descriptor
|
|
7
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
8
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
9
|
+
# @@protoc_insertion_point(imports)
|
|
10
|
+
|
|
11
|
+
_sym_db = _symbol_database.Default()
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
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
|
+
|
|
18
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
|
19
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.mctrl_ota_pb2', globals())
|
|
20
|
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
21
|
+
|
|
22
|
+
DESCRIPTOR._options = None
|
|
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
|
|
45
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
from google.protobuf.internal import containers as _containers
|
|
2
|
+
from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
|
|
3
|
+
from google.protobuf import descriptor as _descriptor
|
|
4
|
+
from google.protobuf import message as _message
|
|
5
|
+
from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
|
|
6
|
+
|
|
7
|
+
DESCRIPTOR: _descriptor.FileDescriptor
|
|
8
|
+
IT_BASE: infoType
|
|
9
|
+
IT_OTA: infoType
|
|
10
|
+
|
|
11
|
+
class FotaInfo_t(_message.Message):
|
|
12
|
+
__slots__ = ["need_ota_img_size", "need_ota_num", "ota_oid", "ota_otype", "ota_version"]
|
|
13
|
+
NEED_OTA_IMG_SIZE_FIELD_NUMBER: _ClassVar[int]
|
|
14
|
+
NEED_OTA_NUM_FIELD_NUMBER: _ClassVar[int]
|
|
15
|
+
OTA_OID_FIELD_NUMBER: _ClassVar[int]
|
|
16
|
+
OTA_OTYPE_FIELD_NUMBER: _ClassVar[int]
|
|
17
|
+
OTA_VERSION_FIELD_NUMBER: _ClassVar[int]
|
|
18
|
+
need_ota_img_size: int
|
|
19
|
+
need_ota_num: int
|
|
20
|
+
ota_oid: str
|
|
21
|
+
ota_otype: int
|
|
22
|
+
ota_version: str
|
|
23
|
+
def __init__(self, need_ota_num: _Optional[int] = ..., need_ota_img_size: _Optional[int] = ..., ota_otype: _Optional[int] = ..., ota_oid: _Optional[str] = ..., ota_version: _Optional[str] = ...) -> None: ...
|
|
24
|
+
|
|
25
|
+
class FotaSubInfo_t(_message.Message):
|
|
26
|
+
__slots__ = ["sub_img_size", "sub_img_url", "sub_mod_id", "sub_mod_ota_flag", "sub_mod_version"]
|
|
27
|
+
SUB_IMG_SIZE_FIELD_NUMBER: _ClassVar[int]
|
|
28
|
+
SUB_IMG_URL_FIELD_NUMBER: _ClassVar[int]
|
|
29
|
+
SUB_MOD_ID_FIELD_NUMBER: _ClassVar[int]
|
|
30
|
+
SUB_MOD_OTA_FLAG_FIELD_NUMBER: _ClassVar[int]
|
|
31
|
+
SUB_MOD_VERSION_FIELD_NUMBER: _ClassVar[int]
|
|
32
|
+
sub_img_size: int
|
|
33
|
+
sub_img_url: str
|
|
34
|
+
sub_mod_id: int
|
|
35
|
+
sub_mod_ota_flag: int
|
|
36
|
+
sub_mod_version: str
|
|
37
|
+
def __init__(self, sub_mod_ota_flag: _Optional[int] = ..., sub_mod_id: _Optional[int] = ..., sub_img_size: _Optional[int] = ..., sub_mod_version: _Optional[str] = ..., sub_img_url: _Optional[str] = ...) -> None: ...
|
|
38
|
+
|
|
39
|
+
class MctlOta(_message.Message):
|
|
40
|
+
__slots__ = ["fota_info", "fota_sub_info", "fw_download_ctrl", "toapp_get_info_rsp", "todev_get_info_req"]
|
|
41
|
+
FOTA_INFO_FIELD_NUMBER: _ClassVar[int]
|
|
42
|
+
FOTA_SUB_INFO_FIELD_NUMBER: _ClassVar[int]
|
|
43
|
+
FW_DOWNLOAD_CTRL_FIELD_NUMBER: _ClassVar[int]
|
|
44
|
+
TOAPP_GET_INFO_RSP_FIELD_NUMBER: _ClassVar[int]
|
|
45
|
+
TODEV_GET_INFO_REQ_FIELD_NUMBER: _ClassVar[int]
|
|
46
|
+
fota_info: FotaInfo_t
|
|
47
|
+
fota_sub_info: FotaSubInfo_t
|
|
48
|
+
fw_download_ctrl: fwDownloadCtrl
|
|
49
|
+
toapp_get_info_rsp: getInfoRsp
|
|
50
|
+
todev_get_info_req: getInfoReq
|
|
51
|
+
def __init__(self, todev_get_info_req: _Optional[_Union[getInfoReq, _Mapping]] = ..., toapp_get_info_rsp: _Optional[_Union[getInfoRsp, _Mapping]] = ..., fw_download_ctrl: _Optional[_Union[fwDownloadCtrl, _Mapping]] = ..., fota_info: _Optional[_Union[FotaInfo_t, _Mapping]] = ..., fota_sub_info: _Optional[_Union[FotaSubInfo_t, _Mapping]] = ...) -> None: ...
|
|
52
|
+
|
|
53
|
+
class baseInfo(_message.Message):
|
|
54
|
+
__slots__ = ["batt_val", "dev_status", "dev_version", "init_status", "is_tilt"]
|
|
55
|
+
BATT_VAL_FIELD_NUMBER: _ClassVar[int]
|
|
56
|
+
DEV_STATUS_FIELD_NUMBER: _ClassVar[int]
|
|
57
|
+
DEV_VERSION_FIELD_NUMBER: _ClassVar[int]
|
|
58
|
+
INIT_STATUS_FIELD_NUMBER: _ClassVar[int]
|
|
59
|
+
IS_TILT_FIELD_NUMBER: _ClassVar[int]
|
|
60
|
+
batt_val: int
|
|
61
|
+
dev_status: int
|
|
62
|
+
dev_version: str
|
|
63
|
+
init_status: int
|
|
64
|
+
is_tilt: int
|
|
65
|
+
def __init__(self, dev_version: _Optional[str] = ..., dev_status: _Optional[int] = ..., batt_val: _Optional[int] = ..., init_status: _Optional[int] = ..., is_tilt: _Optional[int] = ...) -> None: ...
|
|
66
|
+
|
|
67
|
+
class downlink_t(_message.Message):
|
|
68
|
+
__slots__ = ["data", "fw_id", "pkg_seq"]
|
|
69
|
+
DATA_FIELD_NUMBER: _ClassVar[int]
|
|
70
|
+
FW_ID_FIELD_NUMBER: _ClassVar[int]
|
|
71
|
+
PKG_SEQ_FIELD_NUMBER: _ClassVar[int]
|
|
72
|
+
data: _containers.RepeatedScalarFieldContainer[int]
|
|
73
|
+
fw_id: int
|
|
74
|
+
pkg_seq: int
|
|
75
|
+
def __init__(self, fw_id: _Optional[int] = ..., pkg_seq: _Optional[int] = ..., data: _Optional[_Iterable[int]] = ...) -> None: ...
|
|
76
|
+
|
|
77
|
+
class fwDownloadCtrl(_message.Message):
|
|
78
|
+
__slots__ = ["cmd", "downlink", "uplink"]
|
|
79
|
+
CMD_FIELD_NUMBER: _ClassVar[int]
|
|
80
|
+
DOWNLINK_FIELD_NUMBER: _ClassVar[int]
|
|
81
|
+
UPLINK_FIELD_NUMBER: _ClassVar[int]
|
|
82
|
+
cmd: int
|
|
83
|
+
downlink: downlink_t
|
|
84
|
+
uplink: uplink_t
|
|
85
|
+
def __init__(self, uplink: _Optional[_Union[uplink_t, _Mapping]] = ..., downlink: _Optional[_Union[downlink_t, _Mapping]] = ..., cmd: _Optional[int] = ...) -> None: ...
|
|
86
|
+
|
|
87
|
+
class getInfoReq(_message.Message):
|
|
88
|
+
__slots__ = ["type"]
|
|
89
|
+
TYPE_FIELD_NUMBER: _ClassVar[int]
|
|
90
|
+
type: infoType
|
|
91
|
+
def __init__(self, type: _Optional[_Union[infoType, str]] = ...) -> None: ...
|
|
92
|
+
|
|
93
|
+
class getInfoRsp(_message.Message):
|
|
94
|
+
__slots__ = ["base", "ota", "result", "type"]
|
|
95
|
+
BASE_FIELD_NUMBER: _ClassVar[int]
|
|
96
|
+
OTA_FIELD_NUMBER: _ClassVar[int]
|
|
97
|
+
RESULT_FIELD_NUMBER: _ClassVar[int]
|
|
98
|
+
TYPE_FIELD_NUMBER: _ClassVar[int]
|
|
99
|
+
base: baseInfo
|
|
100
|
+
ota: otaInfo
|
|
101
|
+
result: int
|
|
102
|
+
type: infoType
|
|
103
|
+
def __init__(self, base: _Optional[_Union[baseInfo, _Mapping]] = ..., ota: _Optional[_Union[otaInfo, _Mapping]] = ..., result: _Optional[int] = ..., type: _Optional[_Union[infoType, str]] = ...) -> None: ...
|
|
104
|
+
|
|
105
|
+
class otaInfo(_message.Message):
|
|
106
|
+
__slots__ = ["message", "otaid", "progress", "result", "version"]
|
|
107
|
+
MESSAGE_FIELD_NUMBER: _ClassVar[int]
|
|
108
|
+
OTAID_FIELD_NUMBER: _ClassVar[int]
|
|
109
|
+
PROGRESS_FIELD_NUMBER: _ClassVar[int]
|
|
110
|
+
RESULT_FIELD_NUMBER: _ClassVar[int]
|
|
111
|
+
VERSION_FIELD_NUMBER: _ClassVar[int]
|
|
112
|
+
message: str
|
|
113
|
+
otaid: str
|
|
114
|
+
progress: int
|
|
115
|
+
result: int
|
|
116
|
+
version: str
|
|
117
|
+
def __init__(self, otaid: _Optional[str] = ..., version: _Optional[str] = ..., progress: _Optional[int] = ..., result: _Optional[int] = ..., message: _Optional[str] = ...) -> None: ...
|
|
118
|
+
|
|
119
|
+
class uplink_t(_message.Message):
|
|
120
|
+
__slots__ = ["pkg_seq", "status"]
|
|
121
|
+
PKG_SEQ_FIELD_NUMBER: _ClassVar[int]
|
|
122
|
+
STATUS_FIELD_NUMBER: _ClassVar[int]
|
|
123
|
+
pkg_seq: int
|
|
124
|
+
status: int
|
|
125
|
+
def __init__(self, pkg_seq: _Optional[int] = ..., status: _Optional[int] = ...) -> None: ...
|
|
126
|
+
|
|
127
|
+
class infoType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
128
|
+
__slots__ = []
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
message perception_obstacles_t {
|
|
4
|
+
int32 label = 1;
|
|
5
|
+
int32 num = 2;
|
|
6
|
+
repeated sint32 points_x = 3;
|
|
7
|
+
repeated sint32 points_y = 4;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
message perception_obstacles_visualization_t {
|
|
11
|
+
int32 status = 1;
|
|
12
|
+
int32 num = 2;
|
|
13
|
+
repeated perception_obstacles_t obstacles = 3;
|
|
14
|
+
double timestamp = 4;
|
|
15
|
+
float scale = 5;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
message perception_universal_buff_t {
|
|
19
|
+
int32 perception_type = 1;
|
|
20
|
+
int32 perception_len = 2;
|
|
21
|
+
repeated int64 universal_buff = 3;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
message perception_local_map_visualization_t {
|
|
25
|
+
bytes map = 1;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
message MctlPept {
|
|
29
|
+
oneof SubPeptMsg {
|
|
30
|
+
perception_obstacles_visualization_t perception_obstacles_visualization = 1;
|
|
31
|
+
perception_universal_buff_t perception_universal_buff = 2;
|
|
32
|
+
perception_local_map_visualization_t perception_local_map_visualization = 3;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: pymammotion/proto/mctrl_pept.proto
|
|
4
|
+
"""Generated protocol buffer code."""
|
|
5
|
+
from google.protobuf.internal import builder as _builder
|
|
6
|
+
from google.protobuf import descriptor as _descriptor
|
|
7
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
8
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
9
|
+
# @@protoc_insertion_point(imports)
|
|
10
|
+
|
|
11
|
+
_sym_db = _symbol_database.Default()
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"pymammotion/proto/mctrl_pept.proto\"X\n\x16perception_obstacles_t\x12\r\n\x05label\x18\x01 \x01(\x05\x12\x0b\n\x03num\x18\x02 \x01(\x05\x12\x10\n\x08points_x\x18\x03 \x03(\x11\x12\x10\n\x08points_y\x18\x04 \x03(\x11\"\x91\x01\n$perception_obstacles_visualization_t\x12\x0e\n\x06status\x18\x01 \x01(\x05\x12\x0b\n\x03num\x18\x02 \x01(\x05\x12*\n\tobstacles\x18\x03 \x03(\x0b\x32\x17.perception_obstacles_t\x12\x11\n\ttimestamp\x18\x04 \x01(\x01\x12\r\n\x05scale\x18\x05 \x01(\x02\"f\n\x1bperception_universal_buff_t\x12\x17\n\x0fperception_type\x18\x01 \x01(\x05\x12\x16\n\x0eperception_len\x18\x02 \x01(\x05\x12\x16\n\x0euniversal_buff\x18\x03 \x03(\x03\"3\n$perception_local_map_visualization_t\x12\x0b\n\x03map\x18\x01 \x01(\x0c\"\x85\x02\n\x08MctlPept\x12S\n\"perception_obstacles_visualization\x18\x01 \x01(\x0b\x32%.perception_obstacles_visualization_tH\x00\x12\x41\n\x19perception_universal_buff\x18\x02 \x01(\x0b\x32\x1c.perception_universal_buff_tH\x00\x12S\n\"perception_local_map_visualization\x18\x03 \x01(\x0b\x32%.perception_local_map_visualization_tH\x00\x42\x0c\n\nSubPeptMsgb\x06proto3')
|
|
17
|
+
|
|
18
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
|
19
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.mctrl_pept_pb2', globals())
|
|
20
|
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
21
|
+
|
|
22
|
+
DESCRIPTOR._options = None
|
|
23
|
+
_PERCEPTION_OBSTACLES_T._serialized_start=38
|
|
24
|
+
_PERCEPTION_OBSTACLES_T._serialized_end=126
|
|
25
|
+
_PERCEPTION_OBSTACLES_VISUALIZATION_T._serialized_start=129
|
|
26
|
+
_PERCEPTION_OBSTACLES_VISUALIZATION_T._serialized_end=274
|
|
27
|
+
_PERCEPTION_UNIVERSAL_BUFF_T._serialized_start=276
|
|
28
|
+
_PERCEPTION_UNIVERSAL_BUFF_T._serialized_end=378
|
|
29
|
+
_PERCEPTION_LOCAL_MAP_VISUALIZATION_T._serialized_start=380
|
|
30
|
+
_PERCEPTION_LOCAL_MAP_VISUALIZATION_T._serialized_end=431
|
|
31
|
+
_MCTLPEPT._serialized_start=434
|
|
32
|
+
_MCTLPEPT._serialized_end=695
|
|
33
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
from google.protobuf.internal import containers as _containers
|
|
2
|
+
from google.protobuf import descriptor as _descriptor
|
|
3
|
+
from google.protobuf import message as _message
|
|
4
|
+
from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
|
|
5
|
+
|
|
6
|
+
DESCRIPTOR: _descriptor.FileDescriptor
|
|
7
|
+
|
|
8
|
+
class MctlPept(_message.Message):
|
|
9
|
+
__slots__ = ["perception_local_map_visualization", "perception_obstacles_visualization", "perception_universal_buff"]
|
|
10
|
+
PERCEPTION_LOCAL_MAP_VISUALIZATION_FIELD_NUMBER: _ClassVar[int]
|
|
11
|
+
PERCEPTION_OBSTACLES_VISUALIZATION_FIELD_NUMBER: _ClassVar[int]
|
|
12
|
+
PERCEPTION_UNIVERSAL_BUFF_FIELD_NUMBER: _ClassVar[int]
|
|
13
|
+
perception_local_map_visualization: perception_local_map_visualization_t
|
|
14
|
+
perception_obstacles_visualization: perception_obstacles_visualization_t
|
|
15
|
+
perception_universal_buff: perception_universal_buff_t
|
|
16
|
+
def __init__(self, perception_obstacles_visualization: _Optional[_Union[perception_obstacles_visualization_t, _Mapping]] = ..., perception_universal_buff: _Optional[_Union[perception_universal_buff_t, _Mapping]] = ..., perception_local_map_visualization: _Optional[_Union[perception_local_map_visualization_t, _Mapping]] = ...) -> None: ...
|
|
17
|
+
|
|
18
|
+
class perception_local_map_visualization_t(_message.Message):
|
|
19
|
+
__slots__ = ["map"]
|
|
20
|
+
MAP_FIELD_NUMBER: _ClassVar[int]
|
|
21
|
+
map: bytes
|
|
22
|
+
def __init__(self, map: _Optional[bytes] = ...) -> None: ...
|
|
23
|
+
|
|
24
|
+
class perception_obstacles_t(_message.Message):
|
|
25
|
+
__slots__ = ["label", "num", "points_x", "points_y"]
|
|
26
|
+
LABEL_FIELD_NUMBER: _ClassVar[int]
|
|
27
|
+
NUM_FIELD_NUMBER: _ClassVar[int]
|
|
28
|
+
POINTS_X_FIELD_NUMBER: _ClassVar[int]
|
|
29
|
+
POINTS_Y_FIELD_NUMBER: _ClassVar[int]
|
|
30
|
+
label: int
|
|
31
|
+
num: int
|
|
32
|
+
points_x: _containers.RepeatedScalarFieldContainer[int]
|
|
33
|
+
points_y: _containers.RepeatedScalarFieldContainer[int]
|
|
34
|
+
def __init__(self, label: _Optional[int] = ..., num: _Optional[int] = ..., points_x: _Optional[_Iterable[int]] = ..., points_y: _Optional[_Iterable[int]] = ...) -> None: ...
|
|
35
|
+
|
|
36
|
+
class perception_obstacles_visualization_t(_message.Message):
|
|
37
|
+
__slots__ = ["num", "obstacles", "scale", "status", "timestamp"]
|
|
38
|
+
NUM_FIELD_NUMBER: _ClassVar[int]
|
|
39
|
+
OBSTACLES_FIELD_NUMBER: _ClassVar[int]
|
|
40
|
+
SCALE_FIELD_NUMBER: _ClassVar[int]
|
|
41
|
+
STATUS_FIELD_NUMBER: _ClassVar[int]
|
|
42
|
+
TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
|
|
43
|
+
num: int
|
|
44
|
+
obstacles: _containers.RepeatedCompositeFieldContainer[perception_obstacles_t]
|
|
45
|
+
scale: float
|
|
46
|
+
status: int
|
|
47
|
+
timestamp: float
|
|
48
|
+
def __init__(self, status: _Optional[int] = ..., num: _Optional[int] = ..., obstacles: _Optional[_Iterable[_Union[perception_obstacles_t, _Mapping]]] = ..., timestamp: _Optional[float] = ..., scale: _Optional[float] = ...) -> None: ...
|
|
49
|
+
|
|
50
|
+
class perception_universal_buff_t(_message.Message):
|
|
51
|
+
__slots__ = ["perception_len", "perception_type", "universal_buff"]
|
|
52
|
+
PERCEPTION_LEN_FIELD_NUMBER: _ClassVar[int]
|
|
53
|
+
PERCEPTION_TYPE_FIELD_NUMBER: _ClassVar[int]
|
|
54
|
+
UNIVERSAL_BUFF_FIELD_NUMBER: _ClassVar[int]
|
|
55
|
+
perception_len: int
|
|
56
|
+
perception_type: int
|
|
57
|
+
universal_buff: _containers.RepeatedScalarFieldContainer[int]
|
|
58
|
+
def __init__(self, perception_type: _Optional[int] = ..., perception_len: _Optional[int] = ..., universal_buff: _Optional[_Iterable[int]] = ...) -> None: ...
|