pymammotion 0.4.56__py3-none-any.whl → 0.5.0__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 (39) hide show
  1. pymammotion/aliyun/cloud_gateway.py +13 -3
  2. pymammotion/data/model/device.py +2 -1
  3. pymammotion/data/mqtt/properties.py +56 -44
  4. pymammotion/data/state_manager.py +22 -8
  5. pymammotion/event/event.py +27 -6
  6. pymammotion/http/http.py +43 -8
  7. pymammotion/http/model/http.py +46 -1
  8. pymammotion/http/model/response_factory.py +39 -0
  9. pymammotion/mammotion/commands/abstract_message.py +1 -4
  10. pymammotion/mammotion/devices/mammotion.py +30 -9
  11. pymammotion/mammotion/devices/mammotion_bluetooth.py +21 -10
  12. pymammotion/mammotion/devices/mammotion_cloud.py +13 -4
  13. pymammotion/proto/__init__.py +2 -6
  14. pymammotion/proto/basestation.proto +8 -0
  15. pymammotion/proto/basestation_pb2.py +11 -9
  16. pymammotion/proto/basestation_pb2.pyi +16 -2
  17. pymammotion/proto/dev_net.proto +2 -0
  18. pymammotion/proto/dev_net_pb2.py +60 -60
  19. pymammotion/proto/dev_net_pb2.pyi +8 -4
  20. pymammotion/proto/luba_mul.proto +2 -2
  21. pymammotion/proto/luba_mul_pb2.py +15 -15
  22. pymammotion/proto/luba_mul_pb2.pyi +1 -1
  23. pymammotion/proto/mctrl_driver.proto +23 -4
  24. pymammotion/proto/mctrl_driver_pb2.py +26 -20
  25. pymammotion/proto/mctrl_driver_pb2.pyi +38 -10
  26. pymammotion/proto/mctrl_nav.proto +18 -1
  27. pymammotion/proto/mctrl_nav_pb2.py +5 -3
  28. pymammotion/proto/mctrl_nav_pb2.pyi +34 -2
  29. pymammotion/proto/mctrl_pept.proto +6 -1
  30. pymammotion/proto/mctrl_pept_pb2.py +8 -6
  31. pymammotion/proto/mctrl_pept_pb2.pyi +14 -6
  32. pymammotion/proto/mctrl_sys.proto +82 -9
  33. pymammotion/proto/mctrl_sys_pb2.py +162 -146
  34. pymammotion/proto/mctrl_sys_pb2.pyi +151 -34
  35. pymammotion/utility/device_type.py +3 -0
  36. {pymammotion-0.4.56.dist-info → pymammotion-0.5.0.dist-info}/METADATA +2 -2
  37. {pymammotion-0.4.56.dist-info → pymammotion-0.5.0.dist-info}/RECORD +39 -38
  38. {pymammotion-0.4.56.dist-info → pymammotion-0.5.0.dist-info}/LICENSE +0 -0
  39. {pymammotion-0.4.56.dist-info → pymammotion-0.5.0.dist-info}/WHEEL +0 -0
@@ -32,7 +32,6 @@ class MammotionMixedDeviceManager:
32
32
  name: str,
33
33
  iot_id: str,
34
34
  cloud_client: CloudIOTGateway,
35
- mammotion_http: MammotionHTTP,
36
35
  cloud_device: Device,
37
36
  ble_device: BLEDevice | None = None,
38
37
  mqtt: MammotionCloud | None = None,
@@ -48,16 +47,22 @@ class MammotionMixedDeviceManager:
48
47
  self._device: Device = cloud_device
49
48
  self.add_ble(ble_device)
50
49
  self.add_cloud(mqtt)
51
- self.mammotion_http = mammotion_http
50
+ self.mammotion_http = cloud_client.mammotion_http
52
51
  self.preference = preference
53
52
  self._state_manager.preference = preference
54
53
 
55
54
  @property
56
- def mower_state(self):
55
+ def state_manager(self) -> StateManager:
56
+ """Return the state manager."""
57
+ return self._state_manager
58
+
59
+ @property
60
+ def state(self):
61
+ """Return the state of the device."""
57
62
  return self._state_manager.get_device()
58
63
 
59
- @mower_state.setter
60
- def mower_state(self, value: MowingDevice) -> None:
64
+ @state.setter
65
+ def state(self, value: MowingDevice) -> None:
61
66
  self._state_manager.set_device(value)
62
67
 
63
68
  def ble(self) -> MammotionBaseBLEDevice | None:
@@ -219,13 +224,12 @@ class Mammotion:
219
224
  name=device.deviceName,
220
225
  iot_id=device.iotId,
221
226
  cloud_client=mqtt_client.cloud_client,
222
- mammotion_http=mqtt_client.cloud_client.mammotion_http,
223
227
  cloud_device=device,
224
228
  mqtt=mqtt_client,
225
229
  preference=ConnectionPreference.WIFI,
226
230
  )
227
- mixed_device.mower_state.mower_state.product_key = device.productKey
228
- mixed_device.mower_state.mower_state.model = (
231
+ mixed_device.state.mower_state.product_key = device.productKey
232
+ mixed_device.state.mower_state.model = (
229
233
  device.productName if device.productModel is None else device.productModel
230
234
  )
231
235
  self.device_manager.add_device(mixed_device)
@@ -266,6 +270,18 @@ class Mammotion:
266
270
  def get_device_by_name(self, name: str) -> MammotionMixedDeviceManager:
267
271
  return self.device_manager.get_device(name)
268
272
 
273
+ def get_or_create_device_by_name(self, device: Device, mqtt_client: MammotionCloud) -> MammotionMixedDeviceManager:
274
+ if mow_device := self.device_manager.get_device(device.deviceName):
275
+ return mow_device
276
+ return MammotionMixedDeviceManager(
277
+ name=device.deviceName,
278
+ iot_id=device.iotId,
279
+ cloud_client=mqtt_client.cloud_client,
280
+ mqtt=mqtt_client,
281
+ cloud_device=device,
282
+ ble_device=None,
283
+ )
284
+
269
285
  async def send_command(self, name: str, key: str):
270
286
  """Send a command to the device."""
271
287
  device = self.get_device_by_name(name)
@@ -275,6 +291,7 @@ class Mammotion:
275
291
  if device.preference is ConnectionPreference.WIFI:
276
292
  return await device.cloud().command(key)
277
293
  # TODO work with both with EITHER
294
+ return None
278
295
 
279
296
  async def send_command_with_args(self, name: str, key: str, **kwargs: Any):
280
297
  """Send a command with args to the device."""
@@ -285,6 +302,7 @@ class Mammotion:
285
302
  if device.preference is ConnectionPreference.WIFI:
286
303
  return await device.cloud().command(key, **kwargs)
287
304
  # TODO work with both with EITHER
305
+ return None
288
306
 
289
307
  async def start_sync(self, name: str, retry: int):
290
308
  device = self.get_device_by_name(name)
@@ -294,6 +312,7 @@ class Mammotion:
294
312
  if device.preference is ConnectionPreference.WIFI:
295
313
  return await device.cloud().start_sync(retry)
296
314
  # TODO work with both with EITHER
315
+ return None
297
316
 
298
317
  async def start_map_sync(self, name: str):
299
318
  device = self.get_device_by_name(name)
@@ -303,6 +322,7 @@ class Mammotion:
303
322
  if device.preference is ConnectionPreference.WIFI:
304
323
  return await device.cloud().start_map_sync()
305
324
  # TODO work with both with EITHER
325
+ return None
306
326
 
307
327
  async def get_stream_subscription(self, name: str, iot_id: str) -> Response[StreamSubscriptionResponse] | Any:
308
328
  device = self.get_device_by_name(name)
@@ -329,4 +349,5 @@ class Mammotion:
329
349
  def mower(self, name: str) -> MowingDevice | None:
330
350
  device = self.get_device_by_name(name)
331
351
  if device:
332
- return device.mower_state
352
+ return device.state
353
+ return None
@@ -2,7 +2,7 @@ import asyncio
2
2
  from collections.abc import Awaitable, Callable
3
3
  import logging
4
4
  import time
5
- from typing import Any, cast
5
+ from typing import Any
6
6
  from uuid import UUID
7
7
 
8
8
  import betterproto
@@ -100,11 +100,20 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
100
100
  loop = asyncio.get_event_loop()
101
101
  loop.create_task(self.process_queue())
102
102
 
103
+ def __del__(self) -> None:
104
+ """Cleanup."""
105
+ if self._disconnect_timer:
106
+ self._disconnect_timer.cancel()
107
+ if self._ble_sync_task:
108
+ self._ble_sync_task.cancel()
109
+
110
+ self._state_manager.ble_queue_command_callback.remove_subscribers(self.queue_command)
111
+
103
112
  def set_notification_callback(self, func: Callable[[tuple[str, Any | None]], Awaitable[None]]) -> None:
104
- self._state_manager.ble_on_notification_callback = func
113
+ self._state_manager.ble_on_notification_callback.add_subscribers(func)
105
114
 
106
- def set_queue_callback(self, func: Callable[[str, dict[str, Any]], Awaitable[bytes]]) -> None:
107
- self._state_manager.ble_queue_command_callback = func
115
+ def set_queue_callback(self, func: Callable[[str, dict[str, Any]], Awaitable[None]]) -> None:
116
+ self._state_manager.ble_queue_command_callback.add_subscribers(func)
108
117
 
109
118
  def update_device(self, device: BLEDevice) -> None:
110
119
  """Update the BLE device."""
@@ -136,7 +145,7 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
136
145
  if self._client is not None and self._client.is_connected:
137
146
  await self._client.disconnect()
138
147
 
139
- async def queue_command(self, key: str, **kwargs: Any) -> bytes | None:
148
+ async def queue_command(self, key: str, **kwargs: Any) -> None:
140
149
  # Create a future to hold the result
141
150
  _LOGGER.debug("Queueing command: %s", key)
142
151
  future = asyncio.Future()
@@ -144,7 +153,7 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
144
153
  command_bytes = getattr(self._commands, key)(**kwargs)
145
154
  await self.command_queue.put((key, command_bytes, future))
146
155
  # Wait for the future to be resolved
147
- return await future
156
+ await future
148
157
  # return await self._send_command_with_args(key, **kwargs)
149
158
 
150
159
  async def process_queue(self) -> None:
@@ -233,10 +242,12 @@ class MammotionBaseBLEDevice(MammotionBaseDevice):
233
242
  @property
234
243
  def rssi(self) -> int:
235
244
  """Return RSSI of device."""
236
- try:
237
- return cast(self.mower.sys.toapp_report_data.connect.ble_rssi, int)
238
- finally:
239
- return 0
245
+ return self.mower.report_data.connect.ble_rssi
246
+
247
+ @property
248
+ def client(self) -> BleakClientWithServiceCache | None:
249
+ """Return client."""
250
+ return self._client
240
251
 
241
252
  async def _ensure_connected(self) -> None:
242
253
  """Ensure connection to device is established."""
@@ -133,6 +133,9 @@ class MammotionCloud:
133
133
  elif topic.endswith("/app/down/thing/status"):
134
134
  status = ThingStatusMessage.from_dict(payload)
135
135
  await self.mqtt_status_event.data_event(status)
136
+ elif topic.endswith("app/down/thing/properties"):
137
+ property_event = ThingPropertiesMessage.from_dict(payload)
138
+ await self.mqtt_properties_event.data_event(property_event)
136
139
 
137
140
  def _disconnect(self) -> None:
138
141
  """Disconnect the MQTT client."""
@@ -159,7 +162,7 @@ class MammotionBaseCloudDevice(MammotionBaseDevice):
159
162
  self._command_futures = {}
160
163
  self._commands: MammotionCommand = MammotionCommand(
161
164
  cloud_device.deviceName,
162
- int(mqtt.cloud_client.mammotion_http.response.data.get("userInformation").get("userAccount")),
165
+ int(mqtt.cloud_client.mammotion_http.response.data.userInformation.userAccount),
163
166
  )
164
167
  self.currentID = ""
165
168
  self._mqtt.mqtt_message_event.add_subscribers(self._parse_message_for_device)
@@ -181,17 +184,23 @@ class MammotionBaseCloudDevice(MammotionBaseDevice):
181
184
  self._mqtt.on_disconnected_event.remove_subscribers(self.on_disconnect)
182
185
  self._mqtt.on_connected_event.remove_subscribers(self.on_connect)
183
186
  self._mqtt.mqtt_message_event.remove_subscribers(self._parse_message_for_device)
187
+ self._mqtt.mqtt_properties_event.remove_subscribers(self._parse_message_properties_for_device)
188
+ self._mqtt.mqtt_status_event.remove_subscribers(self._parse_message_status_for_device)
184
189
  self._state_manager.cloud_gethash_ack_callback = None
185
190
  self._state_manager.cloud_get_commondata_ack_callback = None
186
191
  self._state_manager.cloud_get_plan_callback = None
187
192
  if self._ble_sync_task:
188
193
  self._ble_sync_task.cancel()
189
194
 
195
+ def __del__(self) -> None:
196
+ """Cleanup."""
197
+ self._state_manager.cloud_queue_command_callback.remove_subscribers(self.queue_command)
198
+
190
199
  def set_notification_callback(self, func: Callable[[tuple[str, Any | None]], Awaitable[None]]) -> None:
191
- self._state_manager.cloud_on_notification_callback = func
200
+ self._state_manager.cloud_on_notification_callback.add_subscribers(func)
192
201
 
193
- def set_queue_callback(self, func: Callable[[str, dict[str, Any]], Awaitable[bytes]]) -> None:
194
- self._state_manager.cloud_queue_command_callback = func
202
+ def set_queue_callback(self, func: Callable[[str, dict[str, Any]], Awaitable[None]]) -> None:
203
+ self._state_manager.cloud_queue_command_callback.add_subscribers(func)
195
204
 
196
205
  async def on_ready(self) -> None:
197
206
  """Callback for when MQTT is subscribed to events."""
@@ -290,10 +290,6 @@ class ResponseBasestationInfoT(betterproto.Message):
290
290
  @dataclass(eq=False, repr=False)
291
291
  class AppToBaseMqttRtkT(betterproto.Message):
292
292
  rtk_switch: int = betterproto.int32_field(1)
293
- rtk_url: str = betterproto.string_field(2)
294
- rtk_port: int = betterproto.int32_field(3)
295
- rtk_username: str = betterproto.string_field(4)
296
- rtk_password: str = betterproto.string_field(5)
297
293
 
298
294
 
299
295
  @dataclass(eq=False, repr=False)
@@ -680,8 +676,8 @@ class DrvKnifeStatus(betterproto.Message):
680
676
  @dataclass(eq=False, repr=False)
681
677
  class DrvKnifeChangeReport(betterproto.Message):
682
678
  is_start: int = betterproto.int32_field(1)
683
- start_high: int = betterproto.int32_field(2)
684
- end_high: int = betterproto.int32_field(3)
679
+ start_height: int = betterproto.int32_field(2)
680
+ end_height: int = betterproto.int32_field(3)
685
681
 
686
682
 
687
683
  @dataclass(eq=False, repr=False)
@@ -4,6 +4,13 @@ message request_basestation_info_t {
4
4
  uint32 request_type = 1;
5
5
  }
6
6
 
7
+ message base_score {
8
+ uint32 base_score = 1;
9
+ uint32 base_leve = 2;
10
+ uint32 base_moved = 3;
11
+ uint32 base_moving = 4;
12
+ }
13
+
7
14
  message response_basestation_info_t {
8
15
  uint64 system_status = 1;
9
16
  uint32 app_connect_type = 2;
@@ -19,6 +26,7 @@ message response_basestation_info_t {
19
26
  int32 mqtt_rtk_status = 12;
20
27
  int32 rtk_channel = 13;
21
28
  int32 rtk_switch = 14;
29
+ base_score score_info = 15;
22
30
  }
23
31
 
24
32
  message app_to_base_mqtt_rtk_t {
@@ -13,7 +13,7 @@ _sym_db = _symbol_database.Default()
13
13
 
14
14
 
15
15
 
16
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#pymammotion/proto/basestation.proto\"2\n\x1arequest_basestation_info_t\x12\x14\n\x0crequest_type\x18\x01 \x01(\r\"\xc5\x02\n\x1bresponse_basestation_info_t\x12\x15\n\rsystem_status\x18\x01 \x01(\x04\x12\x18\n\x10\x61pp_connect_type\x18\x02 \x01(\r\x12\x10\n\x08\x62le_rssi\x18\x03 \x01(\x05\x12\x11\n\twifi_rssi\x18\x04 \x01(\x05\x12\x10\n\x08sats_num\x18\x05 \x01(\x04\x12\x11\n\tlora_scan\x18\x06 \x01(\x03\x12\x14\n\x0clora_channel\x18\x07 \x01(\x03\x12\x12\n\nlora_locid\x18\x08 \x01(\x03\x12\x12\n\nlora_netid\x18\t \x01(\x03\x12\x12\n\nrtk_status\x18\n \x01(\x04\x12\x17\n\x0flowpower_status\x18\x0b \x01(\x05\x12\x17\n\x0fmqtt_rtk_status\x18\x0c \x01(\x05\x12\x13\n\x0brtk_channel\x18\r \x01(\x05\x12\x12\n\nrtk_switch\x18\x0e \x01(\x05\"{\n\x16\x61pp_to_base_mqtt_rtk_t\x12\x12\n\nrtk_switch\x18\x01 \x01(\x05\x12\x0f\n\x07rtk_url\x18\x02 \x01(\t\x12\x10\n\x08rtk_port\x18\x03 \x01(\x05\x12\x14\n\x0crtk_username\x18\x04 \x01(\t\x12\x14\n\x0crtk_password\x18\x05 \x01(\t\"3\n\x16\x62\x61se_to_app_mqtt_rtk_t\x12\x19\n\x11rtk_switch_status\x18\x01 \x01(\x05\"\xfc\x01\n\x0b\x42\x61seStation\x12-\n\x06to_dev\x18\x01 \x01(\x0b\x32\x1b.request_basestation_info_tH\x00\x12.\n\x06to_app\x18\x02 \x01(\x0b\x32\x1c.response_basestation_info_tH\x00\x12;\n\x18\x61pp_to_base_mqtt_rtk_msg\x18\x03 \x01(\x0b\x32\x17.app_to_base_mqtt_rtk_tH\x00\x12;\n\x18\x62\x61se_to_app_mqtt_rtk_msg\x18\x04 \x01(\x0b\x32\x17.base_to_app_mqtt_rtk_tH\x00\x42\x14\n\x12\x42\x61seStationSubTypeb\x06proto3')
16
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#pymammotion/proto/basestation.proto\"2\n\x1arequest_basestation_info_t\x12\x14\n\x0crequest_type\x18\x01 \x01(\r\"\\\n\nbase_score\x12\x12\n\nbase_score\x18\x01 \x01(\r\x12\x11\n\tbase_leve\x18\x02 \x01(\r\x12\x12\n\nbase_moved\x18\x03 \x01(\r\x12\x13\n\x0b\x62\x61se_moving\x18\x04 \x01(\r\"\xe6\x02\n\x1bresponse_basestation_info_t\x12\x15\n\rsystem_status\x18\x01 \x01(\x04\x12\x18\n\x10\x61pp_connect_type\x18\x02 \x01(\r\x12\x10\n\x08\x62le_rssi\x18\x03 \x01(\x05\x12\x11\n\twifi_rssi\x18\x04 \x01(\x05\x12\x10\n\x08sats_num\x18\x05 \x01(\x04\x12\x11\n\tlora_scan\x18\x06 \x01(\x03\x12\x14\n\x0clora_channel\x18\x07 \x01(\x03\x12\x12\n\nlora_locid\x18\x08 \x01(\x03\x12\x12\n\nlora_netid\x18\t \x01(\x03\x12\x12\n\nrtk_status\x18\n \x01(\x04\x12\x17\n\x0flowpower_status\x18\x0b \x01(\x05\x12\x17\n\x0fmqtt_rtk_status\x18\x0c \x01(\x05\x12\x13\n\x0brtk_channel\x18\r \x01(\x05\x12\x12\n\nrtk_switch\x18\x0e \x01(\x05\x12\x1f\n\nscore_info\x18\x0f \x01(\x0b\x32\x0b.base_score\"{\n\x16\x61pp_to_base_mqtt_rtk_t\x12\x12\n\nrtk_switch\x18\x01 \x01(\x05\x12\x0f\n\x07rtk_url\x18\x02 \x01(\t\x12\x10\n\x08rtk_port\x18\x03 \x01(\x05\x12\x14\n\x0crtk_username\x18\x04 \x01(\t\x12\x14\n\x0crtk_password\x18\x05 \x01(\t\"3\n\x16\x62\x61se_to_app_mqtt_rtk_t\x12\x19\n\x11rtk_switch_status\x18\x01 \x01(\x05\"\xfc\x01\n\x0b\x42\x61seStation\x12-\n\x06to_dev\x18\x01 \x01(\x0b\x32\x1b.request_basestation_info_tH\x00\x12.\n\x06to_app\x18\x02 \x01(\x0b\x32\x1c.response_basestation_info_tH\x00\x12;\n\x18\x61pp_to_base_mqtt_rtk_msg\x18\x03 \x01(\x0b\x32\x17.app_to_base_mqtt_rtk_tH\x00\x12;\n\x18\x62\x61se_to_app_mqtt_rtk_msg\x18\x04 \x01(\x0b\x32\x17.base_to_app_mqtt_rtk_tH\x00\x42\x14\n\x12\x42\x61seStationSubTypeb\x06proto3')
17
17
 
18
18
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
19
19
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.basestation_pb2', globals())
@@ -22,12 +22,14 @@ if _descriptor._USE_C_DESCRIPTORS == False:
22
22
  DESCRIPTOR._options = None
23
23
  _REQUEST_BASESTATION_INFO_T._serialized_start=39
24
24
  _REQUEST_BASESTATION_INFO_T._serialized_end=89
25
- _RESPONSE_BASESTATION_INFO_T._serialized_start=92
26
- _RESPONSE_BASESTATION_INFO_T._serialized_end=417
27
- _APP_TO_BASE_MQTT_RTK_T._serialized_start=419
28
- _APP_TO_BASE_MQTT_RTK_T._serialized_end=542
29
- _BASE_TO_APP_MQTT_RTK_T._serialized_start=544
30
- _BASE_TO_APP_MQTT_RTK_T._serialized_end=595
31
- _BASESTATION._serialized_start=598
32
- _BASESTATION._serialized_end=850
25
+ _BASE_SCORE._serialized_start=91
26
+ _BASE_SCORE._serialized_end=183
27
+ _RESPONSE_BASESTATION_INFO_T._serialized_start=186
28
+ _RESPONSE_BASESTATION_INFO_T._serialized_end=544
29
+ _APP_TO_BASE_MQTT_RTK_T._serialized_start=546
30
+ _APP_TO_BASE_MQTT_RTK_T._serialized_end=669
31
+ _BASE_TO_APP_MQTT_RTK_T._serialized_start=671
32
+ _BASE_TO_APP_MQTT_RTK_T._serialized_end=722
33
+ _BASESTATION._serialized_start=725
34
+ _BASESTATION._serialized_end=977
33
35
  # @@protoc_insertion_point(module_scope)
@@ -30,6 +30,18 @@ class app_to_base_mqtt_rtk_t(_message.Message):
30
30
  rtk_username: str
31
31
  def __init__(self, rtk_switch: _Optional[int] = ..., rtk_url: _Optional[str] = ..., rtk_port: _Optional[int] = ..., rtk_username: _Optional[str] = ..., rtk_password: _Optional[str] = ...) -> None: ...
32
32
 
33
+ class base_score(_message.Message):
34
+ __slots__ = ["base_leve", "base_moved", "base_moving", "base_score"]
35
+ BASE_LEVE_FIELD_NUMBER: _ClassVar[int]
36
+ BASE_MOVED_FIELD_NUMBER: _ClassVar[int]
37
+ BASE_MOVING_FIELD_NUMBER: _ClassVar[int]
38
+ BASE_SCORE_FIELD_NUMBER: _ClassVar[int]
39
+ base_leve: int
40
+ base_moved: int
41
+ base_moving: int
42
+ base_score: int
43
+ def __init__(self, base_score: _Optional[int] = ..., base_leve: _Optional[int] = ..., base_moved: _Optional[int] = ..., base_moving: _Optional[int] = ...) -> None: ...
44
+
33
45
  class base_to_app_mqtt_rtk_t(_message.Message):
34
46
  __slots__ = ["rtk_switch_status"]
35
47
  RTK_SWITCH_STATUS_FIELD_NUMBER: _ClassVar[int]
@@ -43,7 +55,7 @@ class request_basestation_info_t(_message.Message):
43
55
  def __init__(self, request_type: _Optional[int] = ...) -> None: ...
44
56
 
45
57
  class response_basestation_info_t(_message.Message):
46
- __slots__ = ["app_connect_type", "ble_rssi", "lora_channel", "lora_locid", "lora_netid", "lora_scan", "lowpower_status", "mqtt_rtk_status", "rtk_channel", "rtk_status", "rtk_switch", "sats_num", "system_status", "wifi_rssi"]
58
+ __slots__ = ["app_connect_type", "ble_rssi", "lora_channel", "lora_locid", "lora_netid", "lora_scan", "lowpower_status", "mqtt_rtk_status", "rtk_channel", "rtk_status", "rtk_switch", "sats_num", "score_info", "system_status", "wifi_rssi"]
47
59
  APP_CONNECT_TYPE_FIELD_NUMBER: _ClassVar[int]
48
60
  BLE_RSSI_FIELD_NUMBER: _ClassVar[int]
49
61
  LORA_CHANNEL_FIELD_NUMBER: _ClassVar[int]
@@ -56,6 +68,7 @@ class response_basestation_info_t(_message.Message):
56
68
  RTK_STATUS_FIELD_NUMBER: _ClassVar[int]
57
69
  RTK_SWITCH_FIELD_NUMBER: _ClassVar[int]
58
70
  SATS_NUM_FIELD_NUMBER: _ClassVar[int]
71
+ SCORE_INFO_FIELD_NUMBER: _ClassVar[int]
59
72
  SYSTEM_STATUS_FIELD_NUMBER: _ClassVar[int]
60
73
  WIFI_RSSI_FIELD_NUMBER: _ClassVar[int]
61
74
  app_connect_type: int
@@ -70,6 +83,7 @@ class response_basestation_info_t(_message.Message):
70
83
  rtk_status: int
71
84
  rtk_switch: int
72
85
  sats_num: int
86
+ score_info: base_score
73
87
  system_status: int
74
88
  wifi_rssi: int
75
- def __init__(self, system_status: _Optional[int] = ..., app_connect_type: _Optional[int] = ..., ble_rssi: _Optional[int] = ..., wifi_rssi: _Optional[int] = ..., sats_num: _Optional[int] = ..., lora_scan: _Optional[int] = ..., lora_channel: _Optional[int] = ..., lora_locid: _Optional[int] = ..., lora_netid: _Optional[int] = ..., rtk_status: _Optional[int] = ..., lowpower_status: _Optional[int] = ..., mqtt_rtk_status: _Optional[int] = ..., rtk_channel: _Optional[int] = ..., rtk_switch: _Optional[int] = ...) -> None: ...
89
+ def __init__(self, system_status: _Optional[int] = ..., app_connect_type: _Optional[int] = ..., ble_rssi: _Optional[int] = ..., wifi_rssi: _Optional[int] = ..., sats_num: _Optional[int] = ..., lora_scan: _Optional[int] = ..., lora_channel: _Optional[int] = ..., lora_locid: _Optional[int] = ..., lora_netid: _Optional[int] = ..., rtk_status: _Optional[int] = ..., lowpower_status: _Optional[int] = ..., mqtt_rtk_status: _Optional[int] = ..., rtk_channel: _Optional[int] = ..., rtk_switch: _Optional[int] = ..., score_info: _Optional[_Union[base_score, _Mapping]] = ...) -> None: ...
@@ -150,6 +150,7 @@ message DrvUpgradeReport {
150
150
  int32 result = 5;
151
151
  string message = 6;
152
152
  string properties = 7;
153
+ int32 recv_cnt = 8;
153
154
  }
154
155
 
155
156
  message WifiIotStatusReport {
@@ -195,6 +196,7 @@ message MnetInfo {
195
196
  int32 rssi = 7;
196
197
  mnet_inet_status inet = 8;
197
198
  string iccid = 9;
199
+ string operator = 10;
198
200
  }
199
201
 
200
202
  message GetMnetInfoReq {
@@ -13,29 +13,29 @@ _sym_db = _symbol_database.Default()
13
13
 
14
14
 
15
15
 
16
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fpymammotion/proto/dev_net.proto\"(\n\rDrvWifiUpload\x12\x17\n\x0fwifi_msg_upload\x18\x01 \x01(\x05\"&\n\x0b\x44rvWifiList\x12\x17\n\x0fnvs_wifi_upload\x18\x01 \x01(\x05\"H\n\nDrvWifiSet\x12\x13\n\x0b\x63onfigParam\x18\x01 \x01(\x05\x12\x10\n\x08\x43onfssid\x18\x02 \x01(\t\x12\x13\n\x0bwifi_enable\x18\x03 \x01(\x08\"\xa8\x01\n\nDrvWifiMsg\x12\x0f\n\x07status1\x18\x01 \x01(\x08\x12\x0f\n\x07status2\x18\x02 \x01(\x08\x12\n\n\x02ip\x18\x03 \x01(\t\x12\x0f\n\x07msgssid\x18\x04 \x01(\t\x12\x10\n\x08password\x18\x05 \x01(\t\x12\x0c\n\x04rssi\x18\x06 \x01(\x05\x12\x12\n\nproductkey\x18\x07 \x01(\t\x12\x12\n\ndevicename\x18\x08 \x01(\t\x12\x13\n\x0bwifi_enable\x18\t \x01(\x08\"?\n\x0b\x44rvWifiConf\x12\x10\n\x08succFlag\x18\x01 \x01(\x08\x12\x0c\n\x04\x63ode\x18\x02 \x01(\x05\x12\x10\n\x08\x43onfssid\x18\x03 \x01(\t\"\\\n\rDrvListUpload\x12\x0b\n\x03sum\x18\x01 \x01(\x05\x12\x0f\n\x07\x63urrent\x18\x02 \x01(\x05\x12\x0e\n\x06status\x18\x03 \x01(\x05\x12\x0f\n\x07Memssid\x18\x04 \x01(\t\x12\x0c\n\x04rssi\x18\x05 \x01(\x05\"Y\n\x10\x44rvUploadFileReq\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0e\n\x06userId\x18\x03 \x01(\t\x12\x0b\n\x03num\x18\x04 \x01(\x05\x12\x0c\n\x04type\x18\x05 \x01(\x05\"$\n\x13\x44rvUploadFileCancel\x12\r\n\x05\x62izId\x18\x01 \x01(\t\"z\n\x15\x44rvUploadFileToAppReq\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x11\n\toperation\x18\x02 \x01(\x05\x12\x10\n\x08serverIp\x18\x03 \x01(\x07\x12\x12\n\nserverPort\x18\x04 \x01(\x05\x12\x0b\n\x03num\x18\x05 \x01(\x05\x12\x0c\n\x04type\x18\x06 \x01(\x05\"I\n\x15\x44rvUploadFileToAppRsp\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x11\n\toperation\x18\x02 \x01(\x05\x12\x0e\n\x06result\x18\x03 \x01(\x05\"+\n\x0f\x44rvDevInfoReqId\x12\n\n\x02id\x18\x01 \x01(\x05\x12\x0c\n\x04type\x18\x02 \x01(\x05\"Z\n\x10\x44rvDevInfoRespId\x12\n\n\x02id\x18\x01 \x01(\x05\x12\x0c\n\x04type\x18\x02 \x01(\x05\x12\x1e\n\x03res\x18\x03 \x01(\x0e\x32\x11.DrvDevInfoResult\x12\x0c\n\x04info\x18\x04 \x01(\t\"2\n\rDrvDevInfoReq\x12!\n\x07req_ids\x18\x01 \x03(\x0b\x32\x10.DrvDevInfoReqId\"5\n\x0e\x44rvDevInfoResp\x12#\n\x08resp_ids\x18\x01 \x03(\x0b\x32\x11.DrvDevInfoRespId\"\x8a\x01\n\x10\x44rvUpgradeReport\x12\x0f\n\x07\x64\x65vname\x18\x01 \x01(\t\x12\r\n\x05otaid\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12\x10\n\x08progress\x18\x04 \x01(\x05\x12\x0e\n\x06result\x18\x05 \x01(\x05\x12\x0f\n\x07message\x18\x06 \x01(\t\x12\x12\n\nproperties\x18\x07 \x01(\t\"l\n\x13WifiIotStatusReport\x12\x16\n\x0ewifi_connected\x18\x01 \x01(\x08\x12\x15\n\riot_connected\x18\x02 \x01(\x08\x12\x12\n\nproductkey\x18\x03 \x01(\t\x12\x12\n\ndevicename\x18\x04 \x01(\t\"*\n\x0c\x42leTestBytes\x12\x0c\n\x04seqs\x18\x01 \x01(\x05\x12\x0c\n\x04\x64\x61ta\x18\x02 \x03(\x07\"$\n\x11GetNetworkInfoReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"\x87\x01\n\x11GetNetworkInfoRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x11\n\twifi_ssid\x18\x02 \x01(\t\x12\x10\n\x08wifi_mac\x18\x03 \x01(\t\x12\x11\n\twifi_rssi\x18\x04 \x01(\x05\x12\n\n\x02ip\x18\x05 \x01(\x07\x12\x0c\n\x04mask\x18\x06 \x01(\x07\x12\x0f\n\x07gateway\x18\x07 \x01(\x07\"N\n\x10mnet_inet_status\x12\x0f\n\x07\x63onnect\x18\x01 \x01(\x08\x12\n\n\x02ip\x18\x02 \x01(\x07\x12\x0c\n\x04mask\x18\x03 \x01(\x07\x12\x0f\n\x07gateway\x18\x04 \x01(\x07\"\xc5\x01\n\x08MnetInfo\x12\r\n\x05model\x18\x01 \x01(\t\x12\x10\n\x08revision\x18\x02 \x01(\t\x12\x0c\n\x04imei\x18\x03 \x01(\t\x12\x1a\n\x03sim\x18\x04 \x01(\x0e\x32\r.sim_card_sta\x12\x0c\n\x04imsi\x18\x05 \x01(\t\x12\"\n\tlink_type\x18\x06 \x01(\x0e\x32\x0f.mnet_link_type\x12\x0c\n\x04rssi\x18\x07 \x01(\x05\x12\x1f\n\x04inet\x18\x08 \x01(\x0b\x32\x11.mnet_inet_status\x12\r\n\x05iccid\x18\t \x01(\t\"!\n\x0eGetMnetInfoReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"J\n\x0eGetMnetInfoRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\x12\x17\n\x04mnet\x18\x03 \x01(\x0b\x32\t.MnetInfo\"}\n\x07MnetApn\x12\x0b\n\x03\x63id\x18\x01 \x01(\x05\x12\x11\n\tapn_alias\x18\x02 \x01(\t\x12\x10\n\x08\x61pn_name\x18\x03 \x01(\t\x12\x1c\n\x04\x61uth\x18\x04 \x01(\x0e\x32\x0e.apn_auth_type\x12\x10\n\x08username\x18\x05 \x01(\t\x12\x10\n\x08password\x18\x06 \x01(\t\"9\n\nMnetApnCfg\x12\x14\n\x0c\x61pn_used_idx\x18\x01 \x01(\x05\x12\x15\n\x03\x61pn\x18\x02 \x03(\x0b\x32\x08.MnetApn\">\n\rMnetApnSetCfg\x12\x13\n\x0buse_default\x18\x01 \x01(\x08\x12\x18\n\x03\x63\x66g\x18\x02 \x01(\x0b\x32\x0b.MnetApnCfg\"~\n\x07MnetCfg\x12\x13\n\x0bmnet_enable\x18\x01 \x01(\x08\x12\x13\n\x0binet_enable\x18\x02 \x01(\x08\x12\x17\n\x04type\x18\x03 \x01(\x0e\x32\t.net_type\x12\x1b\n\x03\x61pn\x18\x04 \x01(\x0b\x32\x0e.MnetApnSetCfg\x12\x13\n\x0b\x61uto_select\x18\x05 \x01(\x08\" \n\rGetMnetCfgReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"G\n\rGetMnetCfgRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\x12\x15\n\x03\x63\x66g\x18\x03 \x01(\x0b\x32\x08.MnetCfg\"7\n\rSetMnetCfgReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x15\n\x03\x63\x66g\x18\x02 \x01(\x0b\x32\x08.MnetCfg\"0\n\rSetMnetCfgRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\"N\n\x0e\x44rvDebugDdsZmq\x12\x11\n\tis_enable\x18\x01 \x01(\x08\x12\x15\n\rrx_topic_name\x18\x02 \x01(\t\x12\x12\n\ntx_zmq_url\x18\x03 \x01(\t\"!\n\x0cSetDrvBleMTU\x12\x11\n\tmtu_count\x18\x01 \x01(\x05\">\n\x0f\x42leSignatureReq\x12\x16\n\x0esignature_data\x18\x01 \x01(\t\x12\x13\n\x0brandom_data\x18\x02 \x01(\t\"\xb0\x01\n\x1a\x42leLogUploadUpdateProgress\x12\x0b\n\x03ver\x18\x01 \x01(\x05\x12\x0e\n\x06status\x18\x02 \x01(\x05\x12\r\n\x05\x62izId\x18\x03 \x01(\t\x12\x0c\n\x04prog\x18\x04 \x01(\x05\x12\x0f\n\x07subProg\x18\x05 \x01(\x05\x12\x0c\n\x04\x66Num\x18\x06 \x01(\x05\x12\r\n\x05speed\x18\x07 \x01(\x05\x12\x0c\n\x04\x66Idx\x18\x08 \x01(\x05\x12\r\n\x05\x66Path\x18\t \x01(\t\x12\r\n\x05\x66Size\x18\n \x01(\x05\"\xcb\x0b\n\x06\x44\x65vNet\x12\x18\n\x0etodev_ble_sync\x18\x01 \x01(\x05H\x00\x12\'\n\x0etodev_ConfType\x18\x02 \x01(\x0e\x32\r.WifiConfTypeH\x00\x12-\n\x13todev_WifiMsgUpload\x18\x03 \x01(\x0b\x32\x0e.DrvWifiUploadH\x00\x12,\n\x14todev_WifiListUpload\x18\x04 \x01(\x0b\x32\x0c.DrvWifiListH\x00\x12/\n\x18todev_Wifi_Configuration\x18\x05 \x01(\x0b\x32\x0b.DrvWifiSetH\x00\x12$\n\rtoapp_WifiMsg\x18\x06 \x01(\x0b\x32\x0b.DrvWifiMsgH\x00\x12&\n\x0etoapp_WifiConf\x18\x07 \x01(\x0b\x32\x0c.DrvWifiConfH\x00\x12*\n\x10toapp_ListUpload\x18\x08 \x01(\x0b\x32\x0e.DrvListUploadH\x00\x12/\n\x12todev_req_log_info\x18\t \x01(\x0b\x32\x11.DrvUploadFileReqH\x00\x12\x35\n\x15todev_log_data_cancel\x18\n \x01(\x0b\x32\x14.DrvUploadFileCancelH\x00\x12+\n\x11todev_devinfo_req\x18\x0b \x01(\x0b\x32\x0e.DrvDevInfoReqH\x00\x12-\n\x12toapp_devinfo_resp\x18\x0c \x01(\x0b\x32\x0f.DrvDevInfoRespH\x00\x12\x31\n\x14toapp_upgrade_report\x18\r \x01(\x0b\x32\x11.DrvUpgradeReportH\x00\x12\x35\n\x15toapp_wifi_iot_status\x18\x0e \x01(\x0b\x32\x14.WifiIotStatusReportH\x00\x12\x36\n\x14todev_uploadfile_req\x18\x0f \x01(\x0b\x32\x16.DrvUploadFileToAppReqH\x00\x12\x36\n\x14toapp_uploadfile_rsp\x18\x10 \x01(\x0b\x32\x16.DrvUploadFileToAppRspH\x00\x12\x33\n\x15todev_networkinfo_req\x18\x11 \x01(\x0b\x32\x12.GetNetworkInfoReqH\x00\x12\x33\n\x15toapp_networkinfo_rsp\x18\x12 \x01(\x0b\x32\x12.GetNetworkInfoRspH\x00\x12%\n\x0c\x62ir_testdata\x18\x13 \x01(\x0b\x32\r.BleTestBytesH\x00\x12.\n\x13todev_mnet_info_req\x18\x14 \x01(\x0b\x32\x0f.GetMnetInfoReqH\x00\x12.\n\x13toapp_mnet_info_rsp\x18\x15 \x01(\x0b\x32\x0f.GetMnetInfoRspH\x00\x12\x30\n\x16todev_get_mnet_cfg_req\x18\x16 \x01(\x0b\x32\x0e.GetMnetCfgReqH\x00\x12\x30\n\x16toapp_get_mnet_cfg_rsp\x18\x17 \x01(\x0b\x32\x0e.GetMnetCfgRspH\x00\x12\x30\n\x16todev_set_mnet_cfg_req\x18\x18 \x01(\x0b\x32\x0e.SetMnetCfgReqH\x00\x12\x30\n\x16toapp_set_mnet_cfg_rsp\x18\x19 \x01(\x0b\x32\x0e.SetMnetCfgRspH\x00\x12,\n\x11todev_set_dds2zmq\x18\x1a \x01(\x0b\x32\x0f.DrvDebugDdsZmqH\x00\x12*\n\x11todev_set_ble_mtu\x18\x1b \x01(\x0b\x32\r.SetDrvBleMTUH\x00\x12\x36\n\x19todev_set_iot_offline_req\x18\x1c \x01(\x0e\x32\x11.iot_conctrl_typeH\x00\x12\x36\n\x1atodev_verify_signature_req\x18\x1d \x01(\x0b\x32\x10.BleSignatureReqH\x00\x12G\n toapp_log_upload_update_progress\x18\x1e \x01(\x0b\x32\x1b.BleLogUploadUpdateProgressH\x00\x42\x0c\n\nNetSubType*l\n\x0cWifiConfType\x12\x12\n\x0e\x44isconnectWifi\x10\x00\x12\x0e\n\nForgetWifi\x10\x01\x12\x15\n\x11\x44irectConnectWifi\x10\x02\x12\x11\n\rReconnectWifi\x10\x03\x12\x0e\n\nset_enable\x10\x04*l\n\x15\x44rvUploadFileFileType\x12\x11\n\rFILE_TYPE_ALL\x10\x00\x12\x14\n\x10\x46ILE_TYPE_SYSLOG\x10\x01\x12\x14\n\x10\x46ILE_TYPE_NAVLOG\x10\x02\x12\x14\n\x10\x46ILE_TYPE_RTKLOG\x10\x03*R\n\x10\x44rvDevInfoResult\x12\x13\n\x0f\x44RV_RESULT_FAIL\x10\x00\x12\x12\n\x0e\x44RV_RESULT_SUC\x10\x01\x12\x15\n\x11\x44RV_RESULT_NOTSUP\x10\x02*p\n\x0csim_card_sta\x12\x0c\n\x08SIM_NONE\x10\x00\x12\x0f\n\x0bSIM_NO_CARD\x10\x01\x12\x0f\n\x0bSIM_INVALID\x10\x02\x12\x11\n\rSIM_INPUT_PIN\x10\x03\x12\x11\n\rSIM_INPUT_PUK\x10\x04\x12\n\n\x06SIM_OK\x10\x05*Z\n\x0emnet_link_type\x12\x12\n\x0eMNET_LINK_NONE\x10\x00\x12\x10\n\x0cMNET_LINK_2G\x10\x01\x12\x10\n\x0cMNET_LINK_3G\x10\x02\x12\x10\n\x0cMNET_LINK_4G\x10\x03*^\n\rapn_auth_type\x12\x11\n\rAPN_AUTH_NONE\x10\x00\x12\x10\n\x0c\x41PN_AUTH_PAP\x10\x01\x12\x11\n\rAPN_AUTH_CHAP\x10\x02\x12\x15\n\x11\x41PN_AUTH_PAP_CHAP\x10\x03*0\n\x08net_type\x12\x11\n\rNET_TYPE_WIFI\x10\x00\x12\x11\n\rNET_TYPE_MNET\x10\x01*Q\n\x10iot_conctrl_type\x12\x14\n\x10IOT_TYPE_OFFLINE\x10\x00\x12\x13\n\x0fIOT_TYPE_ONLINE\x10\x01\x12\x12\n\x0eIOT_TYPE_RESET\x10\x02\x62\x06proto3')
16
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fpymammotion/proto/dev_net.proto\"(\n\rDrvWifiUpload\x12\x17\n\x0fwifi_msg_upload\x18\x01 \x01(\x05\"&\n\x0b\x44rvWifiList\x12\x17\n\x0fnvs_wifi_upload\x18\x01 \x01(\x05\"H\n\nDrvWifiSet\x12\x13\n\x0b\x63onfigParam\x18\x01 \x01(\x05\x12\x10\n\x08\x43onfssid\x18\x02 \x01(\t\x12\x13\n\x0bwifi_enable\x18\x03 \x01(\x08\"\xa8\x01\n\nDrvWifiMsg\x12\x0f\n\x07status1\x18\x01 \x01(\x08\x12\x0f\n\x07status2\x18\x02 \x01(\x08\x12\n\n\x02ip\x18\x03 \x01(\t\x12\x0f\n\x07msgssid\x18\x04 \x01(\t\x12\x10\n\x08password\x18\x05 \x01(\t\x12\x0c\n\x04rssi\x18\x06 \x01(\x05\x12\x12\n\nproductkey\x18\x07 \x01(\t\x12\x12\n\ndevicename\x18\x08 \x01(\t\x12\x13\n\x0bwifi_enable\x18\t \x01(\x08\"?\n\x0b\x44rvWifiConf\x12\x10\n\x08succFlag\x18\x01 \x01(\x08\x12\x0c\n\x04\x63ode\x18\x02 \x01(\x05\x12\x10\n\x08\x43onfssid\x18\x03 \x01(\t\"\\\n\rDrvListUpload\x12\x0b\n\x03sum\x18\x01 \x01(\x05\x12\x0f\n\x07\x63urrent\x18\x02 \x01(\x05\x12\x0e\n\x06status\x18\x03 \x01(\x05\x12\x0f\n\x07Memssid\x18\x04 \x01(\t\x12\x0c\n\x04rssi\x18\x05 \x01(\x05\"Y\n\x10\x44rvUploadFileReq\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x0e\n\x06userId\x18\x03 \x01(\t\x12\x0b\n\x03num\x18\x04 \x01(\x05\x12\x0c\n\x04type\x18\x05 \x01(\x05\"$\n\x13\x44rvUploadFileCancel\x12\r\n\x05\x62izId\x18\x01 \x01(\t\"z\n\x15\x44rvUploadFileToAppReq\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x11\n\toperation\x18\x02 \x01(\x05\x12\x10\n\x08serverIp\x18\x03 \x01(\x07\x12\x12\n\nserverPort\x18\x04 \x01(\x05\x12\x0b\n\x03num\x18\x05 \x01(\x05\x12\x0c\n\x04type\x18\x06 \x01(\x05\"I\n\x15\x44rvUploadFileToAppRsp\x12\r\n\x05\x62izId\x18\x01 \x01(\t\x12\x11\n\toperation\x18\x02 \x01(\x05\x12\x0e\n\x06result\x18\x03 \x01(\x05\"+\n\x0f\x44rvDevInfoReqId\x12\n\n\x02id\x18\x01 \x01(\x05\x12\x0c\n\x04type\x18\x02 \x01(\x05\"Z\n\x10\x44rvDevInfoRespId\x12\n\n\x02id\x18\x01 \x01(\x05\x12\x0c\n\x04type\x18\x02 \x01(\x05\x12\x1e\n\x03res\x18\x03 \x01(\x0e\x32\x11.DrvDevInfoResult\x12\x0c\n\x04info\x18\x04 \x01(\t\"2\n\rDrvDevInfoReq\x12!\n\x07req_ids\x18\x01 \x03(\x0b\x32\x10.DrvDevInfoReqId\"5\n\x0e\x44rvDevInfoResp\x12#\n\x08resp_ids\x18\x01 \x03(\x0b\x32\x11.DrvDevInfoRespId\"\x9c\x01\n\x10\x44rvUpgradeReport\x12\x0f\n\x07\x64\x65vname\x18\x01 \x01(\t\x12\r\n\x05otaid\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12\x10\n\x08progress\x18\x04 \x01(\x05\x12\x0e\n\x06result\x18\x05 \x01(\x05\x12\x0f\n\x07message\x18\x06 \x01(\t\x12\x12\n\nproperties\x18\x07 \x01(\t\x12\x10\n\x08recv_cnt\x18\x08 \x01(\x05\"l\n\x13WifiIotStatusReport\x12\x16\n\x0ewifi_connected\x18\x01 \x01(\x08\x12\x15\n\riot_connected\x18\x02 \x01(\x08\x12\x12\n\nproductkey\x18\x03 \x01(\t\x12\x12\n\ndevicename\x18\x04 \x01(\t\"*\n\x0c\x42leTestBytes\x12\x0c\n\x04seqs\x18\x01 \x01(\x05\x12\x0c\n\x04\x64\x61ta\x18\x02 \x03(\x07\"$\n\x11GetNetworkInfoReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"\x87\x01\n\x11GetNetworkInfoRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x11\n\twifi_ssid\x18\x02 \x01(\t\x12\x10\n\x08wifi_mac\x18\x03 \x01(\t\x12\x11\n\twifi_rssi\x18\x04 \x01(\x05\x12\n\n\x02ip\x18\x05 \x01(\x07\x12\x0c\n\x04mask\x18\x06 \x01(\x07\x12\x0f\n\x07gateway\x18\x07 \x01(\x07\"N\n\x10mnet_inet_status\x12\x0f\n\x07\x63onnect\x18\x01 \x01(\x08\x12\n\n\x02ip\x18\x02 \x01(\x07\x12\x0c\n\x04mask\x18\x03 \x01(\x07\x12\x0f\n\x07gateway\x18\x04 \x01(\x07\"\xd7\x01\n\x08MnetInfo\x12\r\n\x05model\x18\x01 \x01(\t\x12\x10\n\x08revision\x18\x02 \x01(\t\x12\x0c\n\x04imei\x18\x03 \x01(\t\x12\x1a\n\x03sim\x18\x04 \x01(\x0e\x32\r.sim_card_sta\x12\x0c\n\x04imsi\x18\x05 \x01(\t\x12\"\n\tlink_type\x18\x06 \x01(\x0e\x32\x0f.mnet_link_type\x12\x0c\n\x04rssi\x18\x07 \x01(\x05\x12\x1f\n\x04inet\x18\x08 \x01(\x0b\x32\x11.mnet_inet_status\x12\r\n\x05iccid\x18\t \x01(\t\x12\x10\n\x08operator\x18\n \x01(\t\"!\n\x0eGetMnetInfoReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"J\n\x0eGetMnetInfoRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\x12\x17\n\x04mnet\x18\x03 \x01(\x0b\x32\t.MnetInfo\"}\n\x07MnetApn\x12\x0b\n\x03\x63id\x18\x01 \x01(\x05\x12\x11\n\tapn_alias\x18\x02 \x01(\t\x12\x10\n\x08\x61pn_name\x18\x03 \x01(\t\x12\x1c\n\x04\x61uth\x18\x04 \x01(\x0e\x32\x0e.apn_auth_type\x12\x10\n\x08username\x18\x05 \x01(\t\x12\x10\n\x08password\x18\x06 \x01(\t\"9\n\nMnetApnCfg\x12\x14\n\x0c\x61pn_used_idx\x18\x01 \x01(\x05\x12\x15\n\x03\x61pn\x18\x02 \x03(\x0b\x32\x08.MnetApn\">\n\rMnetApnSetCfg\x12\x13\n\x0buse_default\x18\x01 \x01(\x08\x12\x18\n\x03\x63\x66g\x18\x02 \x01(\x0b\x32\x0b.MnetApnCfg\"~\n\x07MnetCfg\x12\x13\n\x0bmnet_enable\x18\x01 \x01(\x08\x12\x13\n\x0binet_enable\x18\x02 \x01(\x08\x12\x17\n\x04type\x18\x03 \x01(\x0e\x32\t.net_type\x12\x1b\n\x03\x61pn\x18\x04 \x01(\x0b\x32\x0e.MnetApnSetCfg\x12\x13\n\x0b\x61uto_select\x18\x05 \x01(\x08\" \n\rGetMnetCfgReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\"G\n\rGetMnetCfgRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\x12\x15\n\x03\x63\x66g\x18\x03 \x01(\x0b\x32\x08.MnetCfg\"7\n\rSetMnetCfgReq\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x15\n\x03\x63\x66g\x18\x02 \x01(\x0b\x32\x08.MnetCfg\"0\n\rSetMnetCfgRsp\x12\x0f\n\x07req_ids\x18\x01 \x01(\x05\x12\x0e\n\x06result\x18\x02 \x01(\x05\"N\n\x0e\x44rvDebugDdsZmq\x12\x11\n\tis_enable\x18\x01 \x01(\x08\x12\x15\n\rrx_topic_name\x18\x02 \x01(\t\x12\x12\n\ntx_zmq_url\x18\x03 \x01(\t\"!\n\x0cSetDrvBleMTU\x12\x11\n\tmtu_count\x18\x01 \x01(\x05\">\n\x0f\x42leSignatureReq\x12\x16\n\x0esignature_data\x18\x01 \x01(\t\x12\x13\n\x0brandom_data\x18\x02 \x01(\t\"\xb0\x01\n\x1a\x42leLogUploadUpdateProgress\x12\x0b\n\x03ver\x18\x01 \x01(\x05\x12\x0e\n\x06status\x18\x02 \x01(\x05\x12\r\n\x05\x62izId\x18\x03 \x01(\t\x12\x0c\n\x04prog\x18\x04 \x01(\x05\x12\x0f\n\x07subProg\x18\x05 \x01(\x05\x12\x0c\n\x04\x66Num\x18\x06 \x01(\x05\x12\r\n\x05speed\x18\x07 \x01(\x05\x12\x0c\n\x04\x66Idx\x18\x08 \x01(\x05\x12\r\n\x05\x66Path\x18\t \x01(\t\x12\r\n\x05\x66Size\x18\n \x01(\x05\"\xcb\x0b\n\x06\x44\x65vNet\x12\x18\n\x0etodev_ble_sync\x18\x01 \x01(\x05H\x00\x12\'\n\x0etodev_ConfType\x18\x02 \x01(\x0e\x32\r.WifiConfTypeH\x00\x12-\n\x13todev_WifiMsgUpload\x18\x03 \x01(\x0b\x32\x0e.DrvWifiUploadH\x00\x12,\n\x14todev_WifiListUpload\x18\x04 \x01(\x0b\x32\x0c.DrvWifiListH\x00\x12/\n\x18todev_Wifi_Configuration\x18\x05 \x01(\x0b\x32\x0b.DrvWifiSetH\x00\x12$\n\rtoapp_WifiMsg\x18\x06 \x01(\x0b\x32\x0b.DrvWifiMsgH\x00\x12&\n\x0etoapp_WifiConf\x18\x07 \x01(\x0b\x32\x0c.DrvWifiConfH\x00\x12*\n\x10toapp_ListUpload\x18\x08 \x01(\x0b\x32\x0e.DrvListUploadH\x00\x12/\n\x12todev_req_log_info\x18\t \x01(\x0b\x32\x11.DrvUploadFileReqH\x00\x12\x35\n\x15todev_log_data_cancel\x18\n \x01(\x0b\x32\x14.DrvUploadFileCancelH\x00\x12+\n\x11todev_devinfo_req\x18\x0b \x01(\x0b\x32\x0e.DrvDevInfoReqH\x00\x12-\n\x12toapp_devinfo_resp\x18\x0c \x01(\x0b\x32\x0f.DrvDevInfoRespH\x00\x12\x31\n\x14toapp_upgrade_report\x18\r \x01(\x0b\x32\x11.DrvUpgradeReportH\x00\x12\x35\n\x15toapp_wifi_iot_status\x18\x0e \x01(\x0b\x32\x14.WifiIotStatusReportH\x00\x12\x36\n\x14todev_uploadfile_req\x18\x0f \x01(\x0b\x32\x16.DrvUploadFileToAppReqH\x00\x12\x36\n\x14toapp_uploadfile_rsp\x18\x10 \x01(\x0b\x32\x16.DrvUploadFileToAppRspH\x00\x12\x33\n\x15todev_networkinfo_req\x18\x11 \x01(\x0b\x32\x12.GetNetworkInfoReqH\x00\x12\x33\n\x15toapp_networkinfo_rsp\x18\x12 \x01(\x0b\x32\x12.GetNetworkInfoRspH\x00\x12%\n\x0c\x62ir_testdata\x18\x13 \x01(\x0b\x32\r.BleTestBytesH\x00\x12.\n\x13todev_mnet_info_req\x18\x14 \x01(\x0b\x32\x0f.GetMnetInfoReqH\x00\x12.\n\x13toapp_mnet_info_rsp\x18\x15 \x01(\x0b\x32\x0f.GetMnetInfoRspH\x00\x12\x30\n\x16todev_get_mnet_cfg_req\x18\x16 \x01(\x0b\x32\x0e.GetMnetCfgReqH\x00\x12\x30\n\x16toapp_get_mnet_cfg_rsp\x18\x17 \x01(\x0b\x32\x0e.GetMnetCfgRspH\x00\x12\x30\n\x16todev_set_mnet_cfg_req\x18\x18 \x01(\x0b\x32\x0e.SetMnetCfgReqH\x00\x12\x30\n\x16toapp_set_mnet_cfg_rsp\x18\x19 \x01(\x0b\x32\x0e.SetMnetCfgRspH\x00\x12,\n\x11todev_set_dds2zmq\x18\x1a \x01(\x0b\x32\x0f.DrvDebugDdsZmqH\x00\x12*\n\x11todev_set_ble_mtu\x18\x1b \x01(\x0b\x32\r.SetDrvBleMTUH\x00\x12\x36\n\x19todev_set_iot_offline_req\x18\x1c \x01(\x0e\x32\x11.iot_conctrl_typeH\x00\x12\x36\n\x1atodev_verify_signature_req\x18\x1d \x01(\x0b\x32\x10.BleSignatureReqH\x00\x12G\n toapp_log_upload_update_progress\x18\x1e \x01(\x0b\x32\x1b.BleLogUploadUpdateProgressH\x00\x42\x0c\n\nNetSubType*l\n\x0cWifiConfType\x12\x12\n\x0e\x44isconnectWifi\x10\x00\x12\x0e\n\nForgetWifi\x10\x01\x12\x15\n\x11\x44irectConnectWifi\x10\x02\x12\x11\n\rReconnectWifi\x10\x03\x12\x0e\n\nset_enable\x10\x04*l\n\x15\x44rvUploadFileFileType\x12\x11\n\rFILE_TYPE_ALL\x10\x00\x12\x14\n\x10\x46ILE_TYPE_SYSLOG\x10\x01\x12\x14\n\x10\x46ILE_TYPE_NAVLOG\x10\x02\x12\x14\n\x10\x46ILE_TYPE_RTKLOG\x10\x03*R\n\x10\x44rvDevInfoResult\x12\x13\n\x0f\x44RV_RESULT_FAIL\x10\x00\x12\x12\n\x0e\x44RV_RESULT_SUC\x10\x01\x12\x15\n\x11\x44RV_RESULT_NOTSUP\x10\x02*p\n\x0csim_card_sta\x12\x0c\n\x08SIM_NONE\x10\x00\x12\x0f\n\x0bSIM_NO_CARD\x10\x01\x12\x0f\n\x0bSIM_INVALID\x10\x02\x12\x11\n\rSIM_INPUT_PIN\x10\x03\x12\x11\n\rSIM_INPUT_PUK\x10\x04\x12\n\n\x06SIM_OK\x10\x05*Z\n\x0emnet_link_type\x12\x12\n\x0eMNET_LINK_NONE\x10\x00\x12\x10\n\x0cMNET_LINK_2G\x10\x01\x12\x10\n\x0cMNET_LINK_3G\x10\x02\x12\x10\n\x0cMNET_LINK_4G\x10\x03*^\n\rapn_auth_type\x12\x11\n\rAPN_AUTH_NONE\x10\x00\x12\x10\n\x0c\x41PN_AUTH_PAP\x10\x01\x12\x11\n\rAPN_AUTH_CHAP\x10\x02\x12\x15\n\x11\x41PN_AUTH_PAP_CHAP\x10\x03*0\n\x08net_type\x12\x11\n\rNET_TYPE_WIFI\x10\x00\x12\x11\n\rNET_TYPE_MNET\x10\x01*Q\n\x10iot_conctrl_type\x12\x14\n\x10IOT_TYPE_OFFLINE\x10\x00\x12\x13\n\x0fIOT_TYPE_ONLINE\x10\x01\x12\x12\n\x0eIOT_TYPE_RESET\x10\x02\x62\x06proto3')
17
17
 
18
18
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
19
19
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'pymammotion.proto.dev_net_pb2', globals())
20
20
  if _descriptor._USE_C_DESCRIPTORS == False:
21
21
 
22
22
  DESCRIPTOR._options = None
23
- _WIFICONFTYPE._serialized_start=4391
24
- _WIFICONFTYPE._serialized_end=4499
25
- _DRVUPLOADFILEFILETYPE._serialized_start=4501
26
- _DRVUPLOADFILEFILETYPE._serialized_end=4609
27
- _DRVDEVINFORESULT._serialized_start=4611
28
- _DRVDEVINFORESULT._serialized_end=4693
29
- _SIM_CARD_STA._serialized_start=4695
30
- _SIM_CARD_STA._serialized_end=4807
31
- _MNET_LINK_TYPE._serialized_start=4809
32
- _MNET_LINK_TYPE._serialized_end=4899
33
- _APN_AUTH_TYPE._serialized_start=4901
34
- _APN_AUTH_TYPE._serialized_end=4995
35
- _NET_TYPE._serialized_start=4997
36
- _NET_TYPE._serialized_end=5045
37
- _IOT_CONCTRL_TYPE._serialized_start=5047
38
- _IOT_CONCTRL_TYPE._serialized_end=5128
23
+ _WIFICONFTYPE._serialized_start=4427
24
+ _WIFICONFTYPE._serialized_end=4535
25
+ _DRVUPLOADFILEFILETYPE._serialized_start=4537
26
+ _DRVUPLOADFILEFILETYPE._serialized_end=4645
27
+ _DRVDEVINFORESULT._serialized_start=4647
28
+ _DRVDEVINFORESULT._serialized_end=4729
29
+ _SIM_CARD_STA._serialized_start=4731
30
+ _SIM_CARD_STA._serialized_end=4843
31
+ _MNET_LINK_TYPE._serialized_start=4845
32
+ _MNET_LINK_TYPE._serialized_end=4935
33
+ _APN_AUTH_TYPE._serialized_start=4937
34
+ _APN_AUTH_TYPE._serialized_end=5031
35
+ _NET_TYPE._serialized_start=5033
36
+ _NET_TYPE._serialized_end=5081
37
+ _IOT_CONCTRL_TYPE._serialized_start=5083
38
+ _IOT_CONCTRL_TYPE._serialized_end=5164
39
39
  _DRVWIFIUPLOAD._serialized_start=35
40
40
  _DRVWIFIUPLOAD._serialized_end=75
41
41
  _DRVWIFILIST._serialized_start=77
@@ -65,47 +65,47 @@ if _descriptor._USE_C_DESCRIPTORS == False:
65
65
  _DRVDEVINFORESP._serialized_start=1038
66
66
  _DRVDEVINFORESP._serialized_end=1091
67
67
  _DRVUPGRADEREPORT._serialized_start=1094
68
- _DRVUPGRADEREPORT._serialized_end=1232
69
- _WIFIIOTSTATUSREPORT._serialized_start=1234
70
- _WIFIIOTSTATUSREPORT._serialized_end=1342
71
- _BLETESTBYTES._serialized_start=1344
72
- _BLETESTBYTES._serialized_end=1386
73
- _GETNETWORKINFOREQ._serialized_start=1388
74
- _GETNETWORKINFOREQ._serialized_end=1424
75
- _GETNETWORKINFORSP._serialized_start=1427
76
- _GETNETWORKINFORSP._serialized_end=1562
77
- _MNET_INET_STATUS._serialized_start=1564
78
- _MNET_INET_STATUS._serialized_end=1642
79
- _MNETINFO._serialized_start=1645
80
- _MNETINFO._serialized_end=1842
81
- _GETMNETINFOREQ._serialized_start=1844
82
- _GETMNETINFOREQ._serialized_end=1877
83
- _GETMNETINFORSP._serialized_start=1879
84
- _GETMNETINFORSP._serialized_end=1953
85
- _MNETAPN._serialized_start=1955
86
- _MNETAPN._serialized_end=2080
87
- _MNETAPNCFG._serialized_start=2082
88
- _MNETAPNCFG._serialized_end=2139
89
- _MNETAPNSETCFG._serialized_start=2141
90
- _MNETAPNSETCFG._serialized_end=2203
91
- _MNETCFG._serialized_start=2205
92
- _MNETCFG._serialized_end=2331
93
- _GETMNETCFGREQ._serialized_start=2333
94
- _GETMNETCFGREQ._serialized_end=2365
95
- _GETMNETCFGRSP._serialized_start=2367
96
- _GETMNETCFGRSP._serialized_end=2438
97
- _SETMNETCFGREQ._serialized_start=2440
98
- _SETMNETCFGREQ._serialized_end=2495
99
- _SETMNETCFGRSP._serialized_start=2497
100
- _SETMNETCFGRSP._serialized_end=2545
101
- _DRVDEBUGDDSZMQ._serialized_start=2547
102
- _DRVDEBUGDDSZMQ._serialized_end=2625
103
- _SETDRVBLEMTU._serialized_start=2627
104
- _SETDRVBLEMTU._serialized_end=2660
105
- _BLESIGNATUREREQ._serialized_start=2662
106
- _BLESIGNATUREREQ._serialized_end=2724
107
- _BLELOGUPLOADUPDATEPROGRESS._serialized_start=2727
108
- _BLELOGUPLOADUPDATEPROGRESS._serialized_end=2903
109
- _DEVNET._serialized_start=2906
110
- _DEVNET._serialized_end=4389
68
+ _DRVUPGRADEREPORT._serialized_end=1250
69
+ _WIFIIOTSTATUSREPORT._serialized_start=1252
70
+ _WIFIIOTSTATUSREPORT._serialized_end=1360
71
+ _BLETESTBYTES._serialized_start=1362
72
+ _BLETESTBYTES._serialized_end=1404
73
+ _GETNETWORKINFOREQ._serialized_start=1406
74
+ _GETNETWORKINFOREQ._serialized_end=1442
75
+ _GETNETWORKINFORSP._serialized_start=1445
76
+ _GETNETWORKINFORSP._serialized_end=1580
77
+ _MNET_INET_STATUS._serialized_start=1582
78
+ _MNET_INET_STATUS._serialized_end=1660
79
+ _MNETINFO._serialized_start=1663
80
+ _MNETINFO._serialized_end=1878
81
+ _GETMNETINFOREQ._serialized_start=1880
82
+ _GETMNETINFOREQ._serialized_end=1913
83
+ _GETMNETINFORSP._serialized_start=1915
84
+ _GETMNETINFORSP._serialized_end=1989
85
+ _MNETAPN._serialized_start=1991
86
+ _MNETAPN._serialized_end=2116
87
+ _MNETAPNCFG._serialized_start=2118
88
+ _MNETAPNCFG._serialized_end=2175
89
+ _MNETAPNSETCFG._serialized_start=2177
90
+ _MNETAPNSETCFG._serialized_end=2239
91
+ _MNETCFG._serialized_start=2241
92
+ _MNETCFG._serialized_end=2367
93
+ _GETMNETCFGREQ._serialized_start=2369
94
+ _GETMNETCFGREQ._serialized_end=2401
95
+ _GETMNETCFGRSP._serialized_start=2403
96
+ _GETMNETCFGRSP._serialized_end=2474
97
+ _SETMNETCFGREQ._serialized_start=2476
98
+ _SETMNETCFGREQ._serialized_end=2531
99
+ _SETMNETCFGRSP._serialized_start=2533
100
+ _SETMNETCFGRSP._serialized_end=2581
101
+ _DRVDEBUGDDSZMQ._serialized_start=2583
102
+ _DRVDEBUGDDSZMQ._serialized_end=2661
103
+ _SETDRVBLEMTU._serialized_start=2663
104
+ _SETDRVBLEMTU._serialized_end=2696
105
+ _BLESIGNATUREREQ._serialized_start=2698
106
+ _BLESIGNATUREREQ._serialized_end=2760
107
+ _BLELOGUPLOADUPDATEPROGRESS._serialized_start=2763
108
+ _BLELOGUPLOADUPDATEPROGRESS._serialized_end=2939
109
+ _DEVNET._serialized_start=2942
110
+ _DEVNET._serialized_end=4425
111
111
  # @@protoc_insertion_point(module_scope)
@@ -198,12 +198,13 @@ class DrvListUpload(_message.Message):
198
198
  def __init__(self, sum: _Optional[int] = ..., current: _Optional[int] = ..., status: _Optional[int] = ..., Memssid: _Optional[str] = ..., rssi: _Optional[int] = ...) -> None: ...
199
199
 
200
200
  class DrvUpgradeReport(_message.Message):
201
- __slots__ = ["devname", "message", "otaid", "progress", "properties", "result", "version"]
201
+ __slots__ = ["devname", "message", "otaid", "progress", "properties", "recv_cnt", "result", "version"]
202
202
  DEVNAME_FIELD_NUMBER: _ClassVar[int]
203
203
  MESSAGE_FIELD_NUMBER: _ClassVar[int]
204
204
  OTAID_FIELD_NUMBER: _ClassVar[int]
205
205
  PROGRESS_FIELD_NUMBER: _ClassVar[int]
206
206
  PROPERTIES_FIELD_NUMBER: _ClassVar[int]
207
+ RECV_CNT_FIELD_NUMBER: _ClassVar[int]
207
208
  RESULT_FIELD_NUMBER: _ClassVar[int]
208
209
  VERSION_FIELD_NUMBER: _ClassVar[int]
209
210
  devname: str
@@ -211,9 +212,10 @@ class DrvUpgradeReport(_message.Message):
211
212
  otaid: str
212
213
  progress: int
213
214
  properties: str
215
+ recv_cnt: int
214
216
  result: int
215
217
  version: str
216
- def __init__(self, devname: _Optional[str] = ..., otaid: _Optional[str] = ..., version: _Optional[str] = ..., progress: _Optional[int] = ..., result: _Optional[int] = ..., message: _Optional[str] = ..., properties: _Optional[str] = ...) -> None: ...
218
+ def __init__(self, devname: _Optional[str] = ..., otaid: _Optional[str] = ..., version: _Optional[str] = ..., progress: _Optional[int] = ..., result: _Optional[int] = ..., message: _Optional[str] = ..., properties: _Optional[str] = ..., recv_cnt: _Optional[int] = ...) -> None: ...
217
219
 
218
220
  class DrvUploadFileCancel(_message.Message):
219
221
  __slots__ = ["bizId"]
@@ -418,13 +420,14 @@ class MnetCfg(_message.Message):
418
420
  def __init__(self, mnet_enable: bool = ..., inet_enable: bool = ..., type: _Optional[_Union[net_type, str]] = ..., apn: _Optional[_Union[MnetApnSetCfg, _Mapping]] = ..., auto_select: bool = ...) -> None: ...
419
421
 
420
422
  class MnetInfo(_message.Message):
421
- __slots__ = ["iccid", "imei", "imsi", "inet", "link_type", "model", "revision", "rssi", "sim"]
423
+ __slots__ = ["iccid", "imei", "imsi", "inet", "link_type", "model", "operator", "revision", "rssi", "sim"]
422
424
  ICCID_FIELD_NUMBER: _ClassVar[int]
423
425
  IMEI_FIELD_NUMBER: _ClassVar[int]
424
426
  IMSI_FIELD_NUMBER: _ClassVar[int]
425
427
  INET_FIELD_NUMBER: _ClassVar[int]
426
428
  LINK_TYPE_FIELD_NUMBER: _ClassVar[int]
427
429
  MODEL_FIELD_NUMBER: _ClassVar[int]
430
+ OPERATOR_FIELD_NUMBER: _ClassVar[int]
428
431
  REVISION_FIELD_NUMBER: _ClassVar[int]
429
432
  RSSI_FIELD_NUMBER: _ClassVar[int]
430
433
  SIM_FIELD_NUMBER: _ClassVar[int]
@@ -434,10 +437,11 @@ class MnetInfo(_message.Message):
434
437
  inet: mnet_inet_status
435
438
  link_type: mnet_link_type
436
439
  model: str
440
+ operator: str
437
441
  revision: str
438
442
  rssi: int
439
443
  sim: sim_card_sta
440
- def __init__(self, model: _Optional[str] = ..., revision: _Optional[str] = ..., imei: _Optional[str] = ..., sim: _Optional[_Union[sim_card_sta, str]] = ..., imsi: _Optional[str] = ..., link_type: _Optional[_Union[mnet_link_type, str]] = ..., rssi: _Optional[int] = ..., inet: _Optional[_Union[mnet_inet_status, _Mapping]] = ..., iccid: _Optional[str] = ...) -> None: ...
444
+ def __init__(self, model: _Optional[str] = ..., revision: _Optional[str] = ..., imei: _Optional[str] = ..., sim: _Optional[_Union[sim_card_sta, str]] = ..., imsi: _Optional[str] = ..., link_type: _Optional[_Union[mnet_link_type, str]] = ..., rssi: _Optional[int] = ..., inet: _Optional[_Union[mnet_inet_status, _Mapping]] = ..., iccid: _Optional[str] = ..., operator: _Optional[str] = ...) -> None: ...
441
445
 
442
446
  class SetDrvBleMTU(_message.Message):
443
447
  __slots__ = ["mtu_count"]
@@ -8,7 +8,8 @@ enum MUL_LANGUAGE {
8
8
  SPANISH = 4;
9
9
  PORTUGUESE = 5;
10
10
  DUTCH = 6;
11
- NONE_LAN = 7;
11
+ SWEDISH = 7;
12
+ NONE_LAN = 8;
12
13
  }
13
14
 
14
15
  enum MUL_SEX {
@@ -30,7 +31,6 @@ enum MUL_VIDEO_ERROR_CODE {
30
31
  NETWORK_NOT_AVAILABLE = 2;
31
32
  CREATE_CHANNEL_FAILED = 3;
32
33
  PARAM_INVAILD = 4;
33
- CELLULAR_RESTRICTION = 5;
34
34
  }
35
35
 
36
36
  enum MUL_WIPER_ERROR_CODE {