From f5f485b1b1919e6d312ed72628ed7c01d2f57def Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Wed, 19 Mar 2025 16:57:48 +0800
Subject: [PATCH] 增加图片回传完成通知解析
---
ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java | 231 +++++++++++++++++++++++++++++++++------------------------
1 files changed, 135 insertions(+), 96 deletions(-)
diff --git a/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java b/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java
index 8c16ec9..675a2d9 100644
--- a/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java
+++ b/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java
@@ -1,33 +1,32 @@
package com.ard.tianyu.service.impl;
import com.ard.common.utils.ByteUtils;
+import com.ard.tianyu.aspect.annotation.CheckTakeoffAltitude;
+import com.ard.tianyu.aspect.annotation.CheckControlRight;
import com.ard.tianyu.config.TyConfiguration;
-import com.ard.tianyu.http.TyClient;
-import com.ard.tianyu.model.cache.TyTcpServerCache;
-import com.ard.tianyu.model.cache.UavSignalInfoCache;
-import com.ard.tianyu.model.cache.UavStateCache;
-import com.ard.tianyu.model.cache.UavTelemetryDataCache;
-import com.ard.tianyu.model.dto.BoxHistoryDTO;
-import com.ard.tianyu.model.dto.BoxPhotosDTO;
-import com.ard.tianyu.model.dto.BoxSettingsDTO;
-import com.ard.tianyu.model.dto.camera.*;
-import com.ard.tianyu.model.dto.control.AbsAngleControlDTO;
-import com.ard.tianyu.model.dto.control.AngleControlDTO;
-import com.ard.tianyu.model.dto.control.SpeedControlDTO;
-import com.ard.tianyu.model.dto.converter.UavSignalInfoConverter;
-import com.ard.tianyu.model.dto.converter.UavStateConverter;
-import com.ard.tianyu.model.dto.converter.UavTelemetryDataConverter;
-import com.ard.tianyu.model.dto.converter.wayline.PlanLineDataConverter;
-import com.ard.tianyu.model.dto.manual.*;
-import com.ard.tianyu.model.dto.settings.ReturnHeightSettingDTO;
-import com.ard.tianyu.model.dto.settings.ReturnPointSettingDTO;
-import com.ard.tianyu.model.dto.settings.VideoStreamSettingDTO;
-import com.ard.tianyu.model.dto.signal.SignalInfo;
-import com.ard.tianyu.model.dto.speaker.*;
-import com.ard.tianyu.model.dto.state.UavState;
-import com.ard.tianyu.model.dto.telemetry.TelemetryData;
-import com.ard.tianyu.model.dto.wayline.*;
-import com.ard.tianyu.model.receiver.*;
+import com.ard.tianyu.domain.dto.camera.*;
+import com.ard.tianyu.domain.dto.manual.*;
+import com.ard.tianyu.domain.dto.speaker.*;
+import com.ard.tianyu.domain.dto.wayline.*;
+import com.ard.tianyu.domain.receiver.*;
+import com.ard.tianyu.forest.TyClient;
+import com.ard.tianyu.domain.cache.TyTcpServerCache;
+import com.ard.tianyu.domain.cache.UavSignalInfoCache;
+import com.ard.tianyu.domain.cache.UavStateCache;
+import com.ard.tianyu.domain.cache.UavTelemetryDataCache;
+import com.ard.tianyu.domain.dto.BoxHistoryDTO;
+import com.ard.tianyu.domain.dto.BoxPhotosDTO;
+import com.ard.tianyu.domain.dto.BoxSettingsDTO;
+import com.ard.tianyu.domain.dto.control.AbsAngleControlDTO;
+import com.ard.tianyu.domain.dto.control.AngleControlDTO;
+import com.ard.tianyu.domain.dto.control.SpeedControlDTO;
+import com.ard.tianyu.domain.dto.converter.wayline.PlanLineDataConverter;
+import com.ard.tianyu.domain.dto.settings.ReturnHeightSettingDTO;
+import com.ard.tianyu.domain.dto.settings.ReturnPointSettingDTO;
+import com.ard.tianyu.domain.dto.settings.VideoStreamSettingDTO;
+import com.ard.tianyu.domain.dto.signal.SignalInfo;
+import com.ard.tianyu.domain.dto.state.UavState;
+import com.ard.tianyu.domain.dto.telemetry.TelemetryData;
import com.ard.tianyu.netty.command.*;
import com.ard.tianyu.netty.TyNettyTcpClient;
import com.ard.tianyu.netty.command.camera.*;
@@ -48,7 +47,8 @@
import com.ard.tianyu.netty.handler.ErrorCodeEnum;
import com.ard.tianyu.netty.protobuf.TelemetryDataPB;
import com.ard.tianyu.service.ITyService;
-import com.ard.tianyu.websocket.utils.WebSocketUtil;
+import com.ard.tianyu.websocket.domain.UavControlType;
+import com.ard.vtdu.service.IMediaService;
import io.netty.channel.Channel;
import io.netty.channel.ChannelFuture;
import lombok.extern.slf4j.Slf4j;
@@ -58,10 +58,7 @@
import javax.annotation.Resource;
import java.net.InetSocketAddress;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.List;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
/**
* TyServiceImpl
@@ -79,8 +76,8 @@
@Resource
private TyConfiguration tyConfiguration;
- // 存储每个无人机的最后遥测处理时间
- private Map<String, Long> lastTelemetryTimes = new ConcurrentHashMap<>();
+ @Resource
+ private IMediaService mediaService;
/**
* 获取天宇token信息
@@ -101,7 +98,7 @@
public List<BoxInfoReceiver> getBoxList() {
//请求云盒列表
try {
- TyHttpCommonReceiver<List<BoxInfoReceiver>> boxListReveiver = tyClient.getBoxList(tyConfiguration.getAccessToken().convertFromDTO());
+ TyHttpCommonReceiver<List<BoxInfoReceiver>> boxListReveiver = tyClient.getBoxList();
return boxListReveiver.getContent();
} catch (Exception e) {
log.error("获取云盒列表失败:{}", e.getMessage());
@@ -117,7 +114,7 @@
@Override
public BoxStreamUrlReceiver getBoxLiveUrl(String boxSn) {
- TyHttpCommonReceiver<BoxStreamUrlReceiver> boxLiveUrl = tyClient.getBoxLiveUrl(boxSn, tyConfiguration.getAccessToken().convertFromDTO());
+ TyHttpCommonReceiver<BoxStreamUrlReceiver> boxLiveUrl = tyClient.getBoxLiveUrl(boxSn);
return boxLiveUrl.getContent();
}
@@ -128,7 +125,7 @@
*/
@Override
public List<BoxHistoryReceiver> getBoxHistory(BoxHistoryDTO boxHistoryDTO) {
- TyHttpCommonReceiver<List<BoxHistoryReceiver>> boxHistory = tyClient.getBoxHistory(boxHistoryDTO, tyConfiguration.getAccessToken().convertFromDTO());
+ TyHttpCommonReceiver<List<BoxHistoryReceiver>> boxHistory = tyClient.getBoxHistory(boxHistoryDTO);
return boxHistory.getContent();
}
@@ -139,7 +136,7 @@
*/
@Override
public List<BoxPhotosReceiver> getBoxPhotos(BoxPhotosDTO boxPhotosDTO) {
- TyHttpCommonReceiver<List<BoxPhotosReceiver>> boxPhotos = tyClient.getBoxPhotos(boxPhotosDTO, tyConfiguration.getAccessToken().convertFromDTO());
+ TyHttpCommonReceiver<List<BoxPhotosReceiver>> boxPhotos = tyClient.getBoxPhotos(boxPhotosDTO);
return boxPhotos.getContent();
}
@@ -148,7 +145,7 @@
*/
@Override
public Boolean updateBoxSettings(BoxSettingsDTO boxSettingsDTO) {
- TyHttpCommonReceiver<?> result = tyClient.updateBoxSettings(boxSettingsDTO, tyConfiguration.getAccessToken().convertFromDTO());
+ TyHttpCommonReceiver<?> result = tyClient.updateBoxSettings(boxSettingsDTO);
return result.getState() == 1;
}
@@ -156,34 +153,37 @@
* 设置返航高度
*/
@Override
- public void updateReturnHeight(ReturnHeightSettingDTO returnHeightSettingDTO) {
+ public Boolean updateReturnHeight(ReturnHeightSettingDTO returnHeightSettingDTO) {
ReturnHeightSettingCmd returnHeightSettingCmd = new ReturnHeightSettingCmd(returnHeightSettingDTO);
this.sendMessage(tyConfiguration.getIpPort(), returnHeightSettingCmd);
+ return true;
}
/**
* 设置返航点
*/
@Override
- public void updateReturnPoint(ReturnPointSettingDTO returnPointSettingDTO) {
+ public Boolean updateReturnPoint(ReturnPointSettingDTO returnPointSettingDTO) {
ReturnPointSettingCmd returnPointSettingCmd = new ReturnPointSettingCmd(returnPointSettingDTO);
this.sendMessage(tyConfiguration.getIpPort(), returnPointSettingCmd);
+ return true;
}
/**
* 设置视频码流
*/
@Override
- public void updateVideoStream(VideoStreamSettingDTO videoStreamSettingDTO) {
+ public Boolean updateVideoStream(VideoStreamSettingDTO videoStreamSettingDTO) {
VideoStreamSettingCmd videoStreamSettingCmd = new VideoStreamSettingCmd(videoStreamSettingDTO);
this.sendMessage(tyConfiguration.getIpPort(), videoStreamSettingCmd);
+ return true;
}
/**
* 注册天宇平台
*/
@Override
- public void registerMessage() {
+ public Boolean registerMessage() {
try {
AccessTokenReceiver tyToken = tyConfiguration.getAccessToken();
RegisterCmd registerMessage = new RegisterCmd(tyToken.getCompanyId(), tyToken.getAccessToken().getBytes());
@@ -191,59 +191,72 @@
} catch (Exception e) {
log.error("注册天宇平台失败:{}", e.getMessage());
}
+ return true;
}
/**
* 云台控制基于角度
*/
+ @CheckControlRight(UavControlType.PAYLOAD)
@Override
- public void angleControl(AngleControlDTO angleControlDto) {
+ public Boolean angleControl(AngleControlDTO angleControlDto) {
AngleControlCmd controlAngleCommand = new AngleControlCmd(angleControlDto);
this.sendMessage(tyConfiguration.getIpPort(), controlAngleCommand);
+ return true;
}
/**
* 云台绝对值控制(基于角度)
*/
+ @CheckControlRight(UavControlType.PAYLOAD)
@Override
- public void absAngleControl(AbsAngleControlDTO absAngleControlDto) {
+ public Boolean absAngleControl(AbsAngleControlDTO absAngleControlDto) {
AbsAngleControlCmd absAngleControlCommand = new AbsAngleControlCmd(absAngleControlDto);
this.sendMessage(tyConfiguration.getIpPort(), absAngleControlCommand);
+ return true;
}
/**
* 云台转动(基于速度)
*/
+ @CheckControlRight(UavControlType.PAYLOAD)
@Override
- public void speedControl(SpeedControlDTO speedControlDto) {
+ public Boolean speedControl(SpeedControlDTO speedControlDto) {
SpeedControlCmd speedControlCommand = new SpeedControlCmd(speedControlDto);
this.sendMessage(tyConfiguration.getIpPort(), speedControlCommand);
+ return true;
}
/**
* 设置相机模式
*/
@Override
- public void updateCameraMode(CameraModeDTO cameraModeDTO) {
+ public Boolean updateCameraMode(CameraModeDTO cameraModeDTO) {
CameraModeCmd cameraModeCommand = new CameraModeCmd(cameraModeDTO);
this.sendMessage(tyConfiguration.getIpPort(), cameraModeCommand);
+ return true;
}
/**
* 拍照
*/
@Override
- public void capturePic(CapturePicDTO capturePicDto) {
+ public Boolean capturePic(CapturePicDTO capturePicDto) {
+ //设置相机模式为拍照模式
updateCameraMode(CameraModeDTO.builder().boxSn(capturePicDto.getBoxSn()).actionParam((byte) 0x01).build());
+ //设置拍照回传
+ photoReturnToggle(PhotoReturnToggleDTO.builder().boxSn(capturePicDto.getBoxSn()).actionParam((byte) 0x01).build());
+
CapturePicCmd capturePicCommand = new CapturePicCmd(capturePicDto);
this.sendMessage(tyConfiguration.getIpPort(), capturePicCommand);
+ return true;
}
/**
* 录像
*/
@Override
- public void record(RecordDTO recordDto) {
+ public Boolean record(RecordDTO recordDto) {
BaseCmd baseCmd;
if (recordDto.getIsRecord()) {
updateCameraMode(CameraModeDTO.builder().boxSn(recordDto.getBoxSn()).actionParam((byte) 0x02).build());
@@ -252,150 +265,181 @@
baseCmd = new RecordStopCmd(recordDto);
}
this.sendMessage(tyConfiguration.getIpPort(), baseCmd);
+ return true;
}
/**
* 变倍
*/
+ @CheckControlRight(UavControlType.PAYLOAD)
@Override
- public void zoom(ZoomDTO zoomDTO) {
+ public Boolean zoom(ZoomDTO zoomDTO) {
ZoomCmd zoomCommand = new ZoomCmd(zoomDTO);
this.sendMessage(tyConfiguration.getIpPort(), zoomCommand);
+ return true;
}
/**
* 变倍到指定倍数
*/
+ @CheckControlRight(UavControlType.PAYLOAD)
@Override
- public void zoomToLevel(ZoomToLevelDTO zoomToLevelDTO) {
+ public Boolean zoomToLevel(ZoomToLevelDTO zoomToLevelDTO) {
ZoomToLevelCmd zoomToLevelCommand = new ZoomToLevelCmd(zoomToLevelDTO);
this.sendMessage(tyConfiguration.getIpPort(), zoomToLevelCommand);
+ return true;
}
/**
* 切换摄像头
*/
@Override
- public void switchCamera(SwitchCameraDTO switchCameraDTO) {
+ public Boolean switchCamera(SwitchCameraDTO switchCameraDTO) {
SwitchCameraCmd switchCameraCmd = new SwitchCameraCmd(switchCameraDTO);
this.sendMessage(tyConfiguration.getIpPort(), switchCameraCmd);
+ return true;
}
/**
* 切换视频源
*/
@Override
- public void switchSource(SwitchSourceDTO switchSourceDTO) {
+ public Boolean switchSource(SwitchSourceDTO switchSourceDTO) {
SwitchSourceCmd switchSourceCmd = new SwitchSourceCmd(switchSourceDTO);
this.sendMessage(tyConfiguration.getIpPort(), switchSourceCmd);
+ return true;
}
/**
* 打开或关闭照片回传
*/
@Override
- public void photoReturnToggle(PhotoReturnToggleDTO photoReturnToggleDTO) {
+ public Boolean photoReturnToggle(PhotoReturnToggleDTO photoReturnToggleDTO) {
PhotoReturnToggleCmd photoReturnToggleCmd = new PhotoReturnToggleCmd(photoReturnToggleDTO);
this.sendMessage(tyConfiguration.getIpPort(), photoReturnToggleCmd);
+ return true;
}
/**
* 切换无人机控制权
*/
@Override
- public void switchUavControl(SwitchUavControlDTO switchUavControlDTO) {
+ public Boolean switchUavControl(SwitchUavControlDTO switchUavControlDTO) {
SwitchUavControlCmd switchUavControlCmd = new SwitchUavControlCmd(switchUavControlDTO);
this.sendMessage(tyConfiguration.getIpPort(), switchUavControlCmd);
+ return true;
}
/**
* 起飞
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
- public void takeOff(TakeOffDTO takeOffDTO) {
+ public Boolean takeOff(TakeOffDTO takeOffDTO) {
TakeOffCmd takeOffCmd = new TakeOffCmd(takeOffDTO);
this.sendMessage(tyConfiguration.getIpPort(), takeOffCmd);
+ return true;
}
/**
* 返航
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
- public void returnHome(ReturnHomeDTO returnHomeDTO) {
+ public Boolean returnHome(ReturnHomeDTO returnHomeDTO) {
ReturnHomeCmd returnHomeCmd = new ReturnHomeCmd(returnHomeDTO);
this.sendMessage(tyConfiguration.getIpPort(), returnHomeCmd);
+ return true;
}
/**
* 取消返航
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
- public void returnHomeCancel(ReturnHomeCancelDTO returnHomeCancelDTO) {
+ public Boolean returnHomeCancel(ReturnHomeCancelDTO returnHomeCancelDTO) {
ReturnHomeCancelCmd returnHomeCancelCmd = new ReturnHomeCancelCmd(returnHomeCancelDTO);
this.sendMessage(tyConfiguration.getIpPort(), returnHomeCancelCmd);
+ return true;
}
/**
* 降落
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
- public void land(LandDTO landDTO) {
+ public Boolean land(LandDTO landDTO) {
LandCmd landCmd = new LandCmd(landDTO);
this.sendMessage(tyConfiguration.getIpPort(), landCmd);
+ return true;
}
/**
* 取消降落
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
- public void landCancel(LandCancelDTO landCancelDTO) {
+ public Boolean landCancel(LandCancelDTO landCancelDTO) {
LandCancelCmd landCancelCmd = new LandCancelCmd(landCancelDTO);
this.sendMessage(tyConfiguration.getIpPort(), landCancelCmd);
+ return true;
}
/**
* 强制降落
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
- public void landForced(LandForcedDTO landForcedDTO) {
+ public Boolean landForced(LandForcedDTO landForcedDTO) {
LandForcedCmd landForcedCmd = new LandForcedCmd(landForcedDTO);
this.sendMessage(tyConfiguration.getIpPort(), landForcedCmd);
+ return true;
}
/**
* 方向控制
*/
+ @CheckControlRight(UavControlType.FLY)
+ @CheckTakeoffAltitude(minAltitude = 30.0)
@Override
- public void flyControl(FlyControlDTO flyControlDTO) {
+ public Boolean flyControl(FlyControlDTO flyControlDTO) {
FlyControlCmd flyControlCmd = new FlyControlCmd(flyControlDTO);
this.sendMessage(tyConfiguration.getIpPort(), flyControlCmd);
+ return true;
}
/**
* 指点飞行控制
*/
+ @CheckControlRight(UavControlType.FLY)
+ @CheckTakeoffAltitude(minAltitude = 30.0)
@Override
- public void flyPointControl(FlyPointControlDTO flyPointControlDTO) {
+ public Boolean flyPointControl(FlyPointControlDTO flyPointControlDTO) {
FlyPointControlCmd flyPointControlCmd = new FlyPointControlCmd(flyPointControlDTO);
this.sendMessage(tyConfiguration.getIpPort(), flyPointControlCmd);
+ return true;
}
/**
* 停止指点飞行控制
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
- public void flyPointControlCancel(FlyPointControlCancelDTO flyPointControlCancelDTO) {
+ public Boolean flyPointControlCancel(FlyPointControlCancelDTO flyPointControlCancelDTO) {
FlyPointControlCancelCmd flyPointControlCancelCmd = new FlyPointControlCancelCmd(flyPointControlCancelDTO);
this.sendMessage(tyConfiguration.getIpPort(), flyPointControlCancelCmd);
+ return true;
}
/**
* 紧急制动
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
- public void emeragencyBrake(EmeragencyBrakeDTO emeragencyBrakeDTO) {
+ public Boolean emeragencyBrake(EmeragencyBrakeDTO emeragencyBrakeDTO) {
EmergencyBrakeCmd emergencyBrakeCmd = new EmergencyBrakeCmd(emeragencyBrakeDTO);
this.sendMessage(tyConfiguration.getIpPort(), emergencyBrakeCmd);
+ return true;
}
/**
@@ -532,6 +576,7 @@
/**
* 航线开始
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
public void wayLineBegin(WayLineBeginDTO wayLineBeginDTO) {
WayLineBeginCmd wayLineBeginCmd = new WayLineBeginCmd(wayLineBeginDTO);
@@ -541,6 +586,7 @@
/**
* 航线暂停
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
public void wayLinePause(WayLinePauseDTO wayLinePauseDTO) {
WayLinePauseCmd wayLinePauseCmd = new WayLinePauseCmd(wayLinePauseDTO);
@@ -550,6 +596,7 @@
/**
* 航线恢复
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
public void wayLineResume(WayLineResumeDTO wayLineResumeDTO) {
WayLineResumeCmd wayLineResumeCmd = new WayLineResumeCmd(wayLineResumeDTO);
@@ -559,6 +606,7 @@
/**
* 航线结束
*/
+ @CheckControlRight(UavControlType.FLY)
@Override
public void wayLineEnd(WayLineEndDTO wayLineEndDTO) {
WayLineEndCmd wayLineEndCmd = new WayLineEndCmd(wayLineEndDTO);
@@ -585,13 +633,18 @@
case 0x02:
// 处理注册消息
HeartbeatReplyCmd heartbeatReplyCmd = (HeartbeatReplyCmd) tyCommand;
- logPrint("心跳消息", heartbeatReplyCmd.getTimestamp());
+ //logPrint("心跳消息", heartbeatReplyCmd.getTimestamp());
break;
case 0x03:
// 处理订阅消息
break;
case 0x04:
// 处理取消订阅消息
+ break;
+ case 0x09:
+ // 处理图片上传完成通知
+ PicUploadCompletedReplyCmd picUploadCompletedReplyCmd = (PicUploadCompletedReplyCmd) tyCommand;
+ logPrint("图片上传完成", picUploadCompletedReplyCmd.getPicUrl());
break;
case 0x0A:
// 处理云盒开关机通知消息
@@ -601,42 +654,23 @@
case (byte) 0xA8:
// 处理无人机状态消息
UavStateCmd uavStateCmd = (UavStateCmd) tyCommand;
- UavState uavState = UavStateConverter.convertProtoToEntity(uavStateCmd.getUavState());
- UavStateCache.putUavState(uavState);
- logPrint("无人机状态", uavState.getBoxSn());
- WebSocketUtil.sendMessageAll(uavState);
+ UavStateCache.putUavState(uavStateCmd.getUavState());
+ //logPrint("无人机状态", uavStateCmd.getUavState().getBoxSn());
+ // WebSocketUtil.sendMessageAll(uavStateCmd.getUavState());
break;
case (byte) 0xA9:
// 处理无人机遥测消息
UavTelemetryDataCmd uavTelemetryDataCmd = (UavTelemetryDataCmd) tyCommand;
- if (uavTelemetryDataCmd.getBoxSn() == null) {
- return;
- }
- String boxSn = ByteUtils.bytesToString(uavTelemetryDataCmd.getBoxSn()); // 假设有获取无人机ID的方法
- long currentTime = System.currentTimeMillis();
-
- // 获取无人机的最后处理时间,如果没有则设置为0
- long lastTelemetryTime = lastTelemetryTimes.getOrDefault(boxSn, 0L);
-
- // 检查与上次处理时间的间隔
- if (currentTime - lastTelemetryTime >= 1000) { // 1秒
- TelemetryData telemetryData = UavTelemetryDataConverter.convertProtoToEntity(uavTelemetryDataCmd.getTelemetryData());
- UavTelemetryDataCache.putUavTelemetryData(telemetryData);
- logPrint("无人机遥测", telemetryData.getBoxSn());
-
- // 更新最后处理时间
- lastTelemetryTimes.put(boxSn, currentTime);
- } else {
- log.debug("无人机 " + boxSn + " 遥测数据接收过于频繁,已跳过处理");
- }
+ UavTelemetryDataCache.putUavTelemetryData(uavTelemetryDataCmd.getTelemetryData());
+ //logPrint("无人机遥测", uavTelemetryDataCmd.getTelemetryData().getBoxSn());
+ //WebSocketUtil.sendMessageAll(uavTelemetryDataCmd.getTelemetryData());
break;
case (byte) 0x0C:
// 处理无人机信道质量数据
SignalInfoCmd signalInfoCmd = (SignalInfoCmd) tyCommand;
- SignalInfo signalInfo = UavSignalInfoConverter.convertProtoToEntity(signalInfoCmd.getSignalInfo());
- UavSignalInfoCache.putUavSignalInfoCache(signalInfo);
- logPrint("无人机信道质量", signalInfo.getBoxSn());
+ UavSignalInfoCache.putUavSignalInfoCache(signalInfoCmd.getSignalInfo());
+ //logPrint("无人机信道质量", signalInfoCmd.getSignalInfo().getBoxSn());
break;
case (byte) 0xD1:
// 处理无人机
@@ -703,7 +737,8 @@
//到达指点飞行位置回复
if (tyCommand instanceof PointControlReachedReplyCmd) {
PointControlReachedReplyCmd pointControlReachedReplyCmd = (PointControlReachedReplyCmd) tyCommand;
- logPrint("到达指点飞行位置", pointControlReachedReplyCmd.getResult(), pointControlReachedReplyCmd.getErrorCode());
+ logPrint("到达指点飞行位置", pointControlReachedReplyCmd.getResult(),
+ pointControlReachedReplyCmd.getErrorCode());
}
//紧急制动回复
if (tyCommand instanceof EmergencyBrakeReplyCmd) {
@@ -738,19 +773,22 @@
//设置返航高度回复
if (tyCommand instanceof ReturnHeightSettingReplyCmd) {
ReturnHeightSettingReplyCmd returnHeightSettingReplyCmd = (ReturnHeightSettingReplyCmd) tyCommand;
- logPrint("设置返航高度", returnHeightSettingReplyCmd.getResult(), returnHeightSettingReplyCmd.getErrorCode());
+ logPrint("设置返航高度", returnHeightSettingReplyCmd.getResult(),
+ returnHeightSettingReplyCmd.getErrorCode());
}
//设置返航点回复
if (tyCommand instanceof ReturnPointSettingReplyCmd) {
ReturnPointSettingReplyCmd returnPointSettingReplyCmd = (ReturnPointSettingReplyCmd) tyCommand;
- logPrint("设置返航点", returnPointSettingReplyCmd.getResult(), returnPointSettingReplyCmd.getErrorCode());
+ logPrint("设置返航点", returnPointSettingReplyCmd.getResult(),
+ returnPointSettingReplyCmd.getErrorCode());
}
break;
case (byte) 0xD2:
//设置视频码流回复
if (tyCommand instanceof VideoStreamSettingReplyCmd) {
VideoStreamSettingReplyCmd videoStreamSettingReplyCmd = (VideoStreamSettingReplyCmd) tyCommand;
- logPrint("设置视频码流", videoStreamSettingReplyCmd.getResult(), videoStreamSettingReplyCmd.getErrorCode());
+ logPrint("设置视频码流", videoStreamSettingReplyCmd.getResult(),
+ videoStreamSettingReplyCmd.getErrorCode());
}
break;
default:
@@ -761,7 +799,7 @@
//公共日志打印
private void logPrint(String message, Object obj) {
- log.debug("收到{}回复{}", message, obj);
+ log.warn("收到{}回复{}", message, obj);
}
//公共日志打印
@@ -807,4 +845,5 @@
log.error("发送消息异常:{}", e.getMessage());
}
}
+
}
\ No newline at end of file
--
Gitblit v1.9.3