支持设备定时定位上报与OTA通道选择
This commit is contained in:
@@ -158,7 +158,18 @@ class TalkingQMQTTService:
|
||||
signal = data.get("signal")
|
||||
version = data.get("version")
|
||||
voice = data.get("voice")
|
||||
logger.info(device_id, "", f"[设备信息] 设备 {d_id} 信息: 电量={power}, 信号强度={signal}, 版本号={version}, 音量={voice}")
|
||||
imei = data.get("imei")
|
||||
device_type = data.get("device_type")
|
||||
latitude = data.get("latitude")
|
||||
longitude = data.get("longitude")
|
||||
logger.info(
|
||||
device_id,
|
||||
"",
|
||||
(
|
||||
f"[设备信息] 设备 {d_id} 信息: 电量={power}, 信号强度={signal}, "
|
||||
f"版本号={version}, 音量={voice}, IMEI={imei}, 设备类型={device_type}"
|
||||
),
|
||||
)
|
||||
|
||||
await self._schedule_persistence(
|
||||
device_id,
|
||||
@@ -169,8 +180,27 @@ class TalkingQMQTTService:
|
||||
signal_strength=data.get("signal"),
|
||||
version_str=data.get("version"),
|
||||
volume=data.get("voice"),
|
||||
imei=str(imei).strip() if imei is not None and str(imei).strip() else None,
|
||||
device_type=device_type,
|
||||
),
|
||||
)
|
||||
if latitude is not None and longitude is not None:
|
||||
await self._schedule_persistence(
|
||||
device_id,
|
||||
"device_info_location",
|
||||
location_service.report_mqtt_device_location(
|
||||
device_id=device_id,
|
||||
latitude=latitude,
|
||||
longitude=longitude,
|
||||
coord_type=data.get("coord_type"),
|
||||
accuracy_m=data.get("accuracy_m"),
|
||||
altitude_m=data.get("altitude_m"),
|
||||
speed_mps=data.get("speed_mps"),
|
||||
heading_deg=data.get("heading_deg"),
|
||||
source=data.get("source", 0),
|
||||
battery_pct=data.get("battery_pct") or data.get("power"),
|
||||
),
|
||||
)
|
||||
# await self._sync_desired_volume(device_id, current_volume)
|
||||
await self._publish(f"device/{device_id}/event_resp", {"msg_id": "000", "status": "success"})
|
||||
|
||||
@@ -272,13 +302,13 @@ class TalkingQMQTTService:
|
||||
|
||||
await self._schedule_persistence(
|
||||
device_id,
|
||||
"ota",
|
||||
device_firmware_update_manager.update_firmware_update(
|
||||
device_id=device_id,
|
||||
firmware_version=data.get("version") or data.get("new_version") or "unknown",
|
||||
update_status="accepted",
|
||||
progress=progress_value if progress_value is not None else 0.0,
|
||||
),
|
||||
"ota",
|
||||
device_firmware_update_manager.update_firmware_update(
|
||||
device_id=device_id,
|
||||
firmware_version=data.get("target_version") or data.get("version") or data.get("new_version") or "unknown",
|
||||
update_status="accepted",
|
||||
progress=progress_value if progress_value is not None else 0.0,
|
||||
),
|
||||
)
|
||||
elif status == "updating":
|
||||
await self._schedule_persistence(
|
||||
|
||||
Reference in New Issue
Block a user