| | |
| | | private TyClient tyClient; |
| | | @Autowired |
| | | private RouteStateMachineService stateMachineService; |
| | | @Autowired |
| | | private IArdFlightTaskPartService ardFlightTaskPartService; |
| | | @Resource |
| | | private MediamtxConfig mediamtxConfig; |
| | | private UavPositionChangeService uavPositionChangeService; |
| | | @Resource |
| | | private UavRegionDetectService uavRegionDetectService; |
| | | /** |
| | | * 获取边缘服务器token信息 |
| | | * |
| | |
| | | // 处理无人机遥测消息 |
| | | UavTelemetryDataCmd uavTelemetryDataCmd = (UavTelemetryDataCmd) tyCommand; |
| | | TelemetryData telemetryData = uavTelemetryDataCmd.getTelemetryData(); |
| | | |
| | | // 判断是否需要触发区域检测 |
| | | if (uavPositionChangeService.shouldTriggerRegionCheck(telemetryData)) { |
| | | log.debug("无人机 {} 位置变化,触发区域检测", telemetryData.getBoxSn()); |
| | | // 异步触发区域检测(不阻塞) |
| | | uavRegionDetectService.detectRegionAsync(telemetryData); |
| | | } else { |
| | | log.debug("无人机 {} 位置未变化,跳过区域检测", telemetryData.getBoxSn()); |
| | | } |
| | | |
| | | UavTelemetryDataCache.put(telemetryData); |
| | | //logPrint("无人机遥测", uavTelemetryDataCmd.getTelemetryData().getBoxSn()); |
| | | //WebSocketUtil.sendMessageAll(uavTelemetryDataCmd.getTelemetryData()); |