diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/device/AirConditionerStateEnum.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/device/AirConditionerStateEnum.java index 0ea9558..7d1f9ac 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/device/AirConditionerStateEnum.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/device/AirConditionerStateEnum.java @@ -11,7 +11,7 @@ import java.util.Arrays; * @version 1.7 * @date 2023/6/30 */ -public enum AirConditionerStateEnum { +public enum AirConditionerStateEnum { IDLE(0), @@ -33,6 +33,18 @@ public enum AirConditionerStateEnum { DEHUMIDIFICATION_PREPARATION(9), + FORCED_AIR_COOLING_PREPARE(10), + + FORCED_AIR_COOLING_CENTRE(11), + + FORCED_AIR_COOLING_EXIT(12), + + MIST_PREPARE(13), + + MIST_CENTRE(14), + + MIST_EXIT(15), + DISCONNECTED(32767), ; diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/device/api/AbstractDeviceService.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/device/api/AbstractDeviceService.java index 9676d1b..a2e8fa1 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/device/api/AbstractDeviceService.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/device/api/AbstractDeviceService.java @@ -5,6 +5,8 @@ import org.dromara.common.sdk.cloudapi.device.*; import org.dromara.common.sdk.cloudapi.property.DockDroneCommanderFlightHeight; import org.dromara.common.sdk.cloudapi.property.DockDroneCommanderModeLostAction; import org.dromara.common.sdk.cloudapi.property.DockDroneRthMode; +import org.dromara.common.sdk.cloudapi.psdk.PsdkUiResource; +import org.dromara.common.sdk.cloudapi.psdk.PsdkWidgetValues; import org.dromara.common.sdk.config.version.CloudSDKVersionEnum; import org.dromara.common.sdk.config.version.GatewayTypeEnum; import org.dromara.common.sdk.mqtt.ChannelName; @@ -271,4 +273,17 @@ public class AbstractDeviceService { throw new UnsupportedOperationException("dockSilentMode not implemented"); } + + @CloudSDKVersion(since = CloudSDKVersionEnum.V1_0_2, include = GatewayTypeEnum.DOCK) + @ServiceActivator(inputChannel = ChannelName.INBOUND_STATE_DOCK_PSDK_UI_RESOURCE, outputChannel = ChannelName.OUTBOUND_STATE) + public void dockPsdkUiResource(TopicStateRequest request, MessageHeaders headers) { + throw new UnsupportedOperationException("dockPsdkUiResource not implemented"); + } + + @CloudSDKVersion(since = CloudSDKVersionEnum.V1_0_2, include = GatewayTypeEnum.DOCK) + @ServiceActivator(inputChannel = ChannelName.INBOUND_STATE_DOCK_PSDK_WIDGE_VALUES, outputChannel = ChannelName.OUTBOUND_STATE) + public void dockPsdkWidgetValues(TopicStateRequest request, MessageHeaders headers) { + throw new UnsupportedOperationException("dockPsdkWidgetValues not implemented"); + } + } diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/interconnection/PsdkFloatingWindowTextPsdk.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/interconnection/PsdkFloatingWindowTextPsdk.java new file mode 100644 index 0000000..4f50618 --- /dev/null +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/interconnection/PsdkFloatingWindowTextPsdk.java @@ -0,0 +1,48 @@ +package org.dromara.common.sdk.cloudapi.interconnection; + +/** + * @author sean + * @version 1.7 + * @date 2023/10/16 + */ +public class PsdkFloatingWindowTextPsdk { + + /** + * Data content + * length: Less than 256 + */ + private Integer psdkIndex; + + private String value; + + + public PsdkFloatingWindowTextPsdk() { + } + + @Override + public String toString() { + return "PsdkFloatingWindowTextPsdk{" + + "psdkIndex=" + psdkIndex + + ",value='" + value + '\'' + + '}'; + } + + public String getValue() { + return value; + } + + public PsdkFloatingWindowTextPsdk setValue(String value) { + this.value = value; + return this; + } + + + public Integer getPsdkIndex() { + return psdkIndex; + } + + public PsdkFloatingWindowTextPsdk setPsdkIndex(Integer psdkIndex) { + this.psdkIndex = psdkIndex; + return this; + } +} diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/interconnection/api/AbstractInterconnectionService.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/interconnection/api/AbstractInterconnectionService.java index 2b8051a..9354463 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/interconnection/api/AbstractInterconnectionService.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/interconnection/api/AbstractInterconnectionService.java @@ -1,10 +1,7 @@ package org.dromara.common.sdk.cloudapi.interconnection.api; import org.dromara.common.sdk.annotations.CloudSDKVersion; -import org.dromara.common.sdk.cloudapi.interconnection.CustomDataTransmissionFromEsdk; -import org.dromara.common.sdk.cloudapi.interconnection.CustomDataTransmissionToEsdkRequest; -import org.dromara.common.sdk.cloudapi.interconnection.CustomDataTransmissionToPsdkRequest; -import org.dromara.common.sdk.cloudapi.interconnection.InterconnectionMethodEnum; +import org.dromara.common.sdk.cloudapi.interconnection.*; import org.dromara.common.sdk.config.version.CloudSDKVersionEnum; import org.dromara.common.sdk.config.version.GatewayManager; import org.dromara.common.sdk.config.version.GatewayTypeEnum; @@ -64,10 +61,16 @@ public abstract class AbstractInterconnectionService { */ @ServiceActivator(inputChannel = ChannelName.INBOUND_EVENTS_CUSTOM_DATA_TRANSMISSION_FROM_PSDK, outputChannel = ChannelName.OUTBOUND_EVENTS) @CloudSDKVersion(since = CloudSDKVersionEnum.V1_0_0) - public TopicEventsResponse customDataTransmissionFromPsdk(TopicEventsRequest request, MessageHeaders headers) { + public void customDataTransmissionFromPsdk(TopicEventsRequest request, MessageHeaders headers) { throw new UnsupportedOperationException("customDataTransmissionFromPsdk not implemented"); } + @ServiceActivator(inputChannel = ChannelName.INBOUND_EVENTS_PSDK_FLOARUBF_WINDOW_TEXT, outputChannel = ChannelName.OUTBOUND_EVENTS) + @CloudSDKVersion(since = CloudSDKVersionEnum.V1_0_0) + public void psdkFloatingWindowText(TopicEventsRequest request, MessageHeaders headers) { + throw new UnsupportedOperationException("psdkFloatingWindowText not implemented"); + } + /** * cloud-custom data transmit to psdk * @param gateway gateway device diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/livestream/VideoTypeEnum.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/livestream/VideoTypeEnum.java index 0003810..f701a25 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/livestream/VideoTypeEnum.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/livestream/VideoTypeEnum.java @@ -36,7 +36,7 @@ public enum VideoTypeEnum { @JsonCreator public static VideoTypeEnum find(String videoType) { - return Arrays.stream(values()).filter(typeEnum -> typeEnum.type.equals(videoType)).findAny() + return Arrays.stream(values()).filter(typeEnum -> typeEnum.type.equals(videoType)).findAny() .orElseThrow(() -> new CloudSDKException(VideoTypeEnum.class , videoType)); } } diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkSpeaker.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkSpeaker.java new file mode 100644 index 0000000..48034be --- /dev/null +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkSpeaker.java @@ -0,0 +1,104 @@ +package org.dromara.common.sdk.cloudapi.psdk; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.dromara.common.sdk.common.BaseModel; + +/** + * @auther wuyuan + * @data 2025/3/29 + */ +public class PsdkSpeaker { + + @JsonProperty("play_file_md5") + private Integer playFileMd5; + + @JsonProperty("play_file_name") + private String playFileName; + + @JsonProperty("play_mode") + private String playMode; + + + + @JsonProperty("play_volume") + private Integer playVolume; + + @JsonProperty("system_state") + private Integer systemState; + + + @JsonProperty("work_mode") + private Integer workMode; + + + public PsdkSpeaker() { + } + + @Override + public String toString() { + return "PsdkSpeaker{" + + "playFileMd5=" + playFileMd5 + + ",playFileName=" + playFileName + + ",playMode=" + playMode + + ",playVolume=" + playVolume + + ",systemState=" + systemState + + ",workMode=" + workMode + + '}'; + } + + public Integer getPlayFileMd5() { + return playFileMd5; + } + + public PsdkSpeaker setPlayFileMd5(Integer playFileMd5) { + this.playFileMd5 = playFileMd5; + return this; + } + + public String getPlayFileName() { + return playFileName; + } + + public PsdkSpeaker setPlayFileName(String playFileName) { + this.playFileName = playFileName; + return this; + } + + public String getPlayMode() { + return playMode; + } + + public PsdkSpeaker setPlayMode(String playMode) { + this.playMode = playMode; + return this; + } + + public Integer getPlayVolume() { + return playVolume; + } + + public PsdkSpeaker setPlayVolume(Integer playVolume) { + this.playVolume = playVolume; + return this; + } + + public Integer getSystemState() { + return systemState; + } + + public PsdkSpeaker setSystemState(Integer systemState) { + this.systemState = systemState; + return this; + } + + public Integer getWorkMode() { + return workMode; + } + + public PsdkSpeaker setWorkMode(Integer workMode) { + this.workMode = workMode; + return this; + } + + +} diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkUiResource.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkUiResource.java new file mode 100644 index 0000000..dd3236e --- /dev/null +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkUiResource.java @@ -0,0 +1,56 @@ +package org.dromara.common.sdk.cloudapi.psdk; + +import com.fasterxml.jackson.annotation.JsonProperty; +import org.dromara.common.sdk.common.BaseModel; + +/** + * @auther wuyuan + * @data 2025/3/29 + */ +public class PsdkUiResource { + + @JsonProperty("object_key") + private Integer objectKey; + + @JsonProperty("psdk_index") + private Integer psdkIndex; + + @JsonProperty("psdk_ready") + private Integer psdkReady; + + @Override + public String toString() { + return "PsdkWidgetValue{" + + "objectKey=" + objectKey + + ",psdkIndex=" + psdkIndex + + ",psdkReady=" + psdkReady + + '}'; + } + + public Integer getObjectKey() { + return objectKey; + } + + public PsdkUiResource setObjectKey(Integer objectKey) { + this.objectKey = objectKey; + return this; + } + + public Integer getPsdkIndex() { + return psdkIndex; + } + + public PsdkUiResource setPsdkIndex(Integer psdkIndex) { + this.psdkIndex = psdkIndex; + return this; + } + + public Integer getPsdkReady() { + return psdkReady; + } + + public PsdkUiResource setPsdkReady(Integer psdkReady) { + this.psdkReady = psdkReady; + return this; + } +} diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkWidgetValue.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkWidgetValue.java new file mode 100644 index 0000000..1de1384 --- /dev/null +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkWidgetValue.java @@ -0,0 +1,119 @@ +package org.dromara.common.sdk.cloudapi.psdk; + +import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotNull; +import org.dromara.common.sdk.cloudapi.device.DockSilentMode; +import org.dromara.common.sdk.cloudapi.property.SilentModeEnum; +import org.dromara.common.sdk.common.BaseModel; + +import java.util.List; + +/** + * @auther wuyuan + * @data 2025/3/29 + */ +public class PsdkWidgetValue { + + @JsonProperty("psdk_index") + private Integer psdkIndex; + + @JsonProperty("psdk_lib_version") + private String psdkLibVersion; + + @JsonProperty("psdk_name") + private String psdkName; + + + + @JsonProperty("psdk_type") + private String psdkType; + + @JsonProperty("psdk_version") + private String psdkVersion; + + @JsonProperty("psdk_speaker") + private PsdkSpeaker psdkSpeaker; + + @JsonProperty("values") + private List values; + + public PsdkWidgetValue() { + } + + @Override + public String toString() { + return "PsdkWidgetValue{" + + "psdkIndex=" + psdkIndex + + ",psdkLibVersion=" + psdkLibVersion + + ",psdkName=" + psdkName + + ",psdkType=" + psdkType + + ",psdkVersion=" + psdkVersion + + ",psdkSpeaker=" + psdkSpeaker + + ",values=" + values + + '}'; + } + + + public Integer getPsdkIndex() { + return psdkIndex; + } + + public PsdkWidgetValue setPsdkIndex(Integer psdkIndex) { + this.psdkIndex = psdkIndex; + return this; + } + + public String getPsdkLibVersion() { + return psdkLibVersion; + } + + public PsdkWidgetValue setPsdkLibVersion(String psdkLibVersion) { + this.psdkLibVersion = psdkLibVersion; + return this; + } + + public String getPsdkName() { + return psdkName; + } + + public PsdkWidgetValue setPsdkName(String psdkName) { + this.psdkName = psdkName; + return this; + } + + public String getPsdkType() { + return psdkType; + } + + public PsdkWidgetValue setPsdkType(String psdkType) { + this.psdkType = psdkType; + return this; + } + + public String getPsdkVersion() { + return psdkVersion; + } + + public PsdkWidgetValue setPsdkVersion(String psdkVersion) { + this.psdkVersion = psdkVersion; + return this; + } + + public List getValues() { + return values; + } + + public PsdkWidgetValue setValues(List values) { + this.values = values; + return this; + } + + public PsdkSpeaker getPsdkSpeaker() { + return psdkSpeaker; + } + + public PsdkWidgetValue setPsdkSpeaker(PsdkSpeaker psdkSpeaker) { + this.psdkSpeaker = psdkSpeaker; + return this; + } +} diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkWidgetValues.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkWidgetValues.java new file mode 100644 index 0000000..40c43c3 --- /dev/null +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/psdk/PsdkWidgetValues.java @@ -0,0 +1,39 @@ +package org.dromara.common.sdk.cloudapi.psdk; + +import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotNull; +import org.dromara.common.sdk.cloudapi.device.DockPayloadControlSource; +import org.dromara.common.sdk.cloudapi.device.DockSilentMode; +import org.dromara.common.sdk.cloudapi.property.SilentModeEnum; +import org.dromara.common.sdk.common.BaseModel; + +import java.util.List; + +/** + * @auther wuyuan + * @data 2025/3/29 + */ +public class PsdkWidgetValues { + @JsonProperty("psdk_widget_values") + private List psdkWidgetValues; + + public PsdkWidgetValues() { + } + + @Override + public String toString() { + return "PsdkWidgetValues{" + + "psdkWidgetValues=" + psdkWidgetValues + + '}'; + } + + public List getPsdkWidgetValues() { + return psdkWidgetValues; + } + + public PsdkWidgetValues setPsdkWidgetValues(List psdkWidgetValues) { + this.psdkWidgetValues = psdkWidgetValues; + return this; + } + +} diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/api/AbstractWaylineService.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/api/AbstractWaylineService.java index 1ea8229..1d4da03 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/api/AbstractWaylineService.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/cloudapi/wayline/api/AbstractWaylineService.java @@ -189,7 +189,7 @@ public abstract class AbstractWaylineService { */ @ServiceActivator(inputChannel = ChannelName.INBOUND_EVENTS_RETURN_HOME_INFO, outputChannel = ChannelName.OUTBOUND_EVENTS) @CloudSDKVersion(since = CloudSDKVersionEnum.V1_0_0) - public TopicRequestsResponse returnHomeInfo(TopicRequestsRequest request, MessageHeaders headers) { + public void returnHomeInfo(TopicRequestsRequest request, MessageHeaders headers) { throw new UnsupportedOperationException("returnHomeInfo not implemented"); } diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/ChannelName.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/ChannelName.java index 58fb96e..3e45854 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/ChannelName.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/ChannelName.java @@ -67,6 +67,12 @@ public class ChannelName { public static final String INBOUND_STATE_DOCK_SILENT_MODE = "inboundStateDockSilentMode"; + public static final String INBOUND_STATE_DOCK_PSDK_WIDGE_VALUES = "inboundStateDockPsdkWidgetValues"; + + + public static final String INBOUND_STATE_DOCK_PSDK_UI_RESOURCE = "inboundStateDockPsdUiResource"; + + public static final String OUTBOUND_STATE = "outboundState"; @@ -146,6 +152,8 @@ public class ChannelName { public static final String INBOUND_EVENTS_CUSTOM_DATA_TRANSMISSION_FROM_PSDK = "inboundEventsCustomDataTransmissionFromPsdk"; + public static final String INBOUND_EVENTS_PSDK_FLOARUBF_WINDOW_TEXT = "inboundEventsPsdkFloatingWindowText"; + public static final String INBOUND_EVENTS_AIRSENSE_WARNING = "inboundEventsAirsenseWarning"; public static final String INBOUND_EVENTS_FLIGHT_AREAS_SYNC_PROGRESS = "inboundEventsFlightAreasSyncProgress"; diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/events/EventsMethodEnum.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/events/EventsMethodEnum.java index 8d85540..0016fda 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/events/EventsMethodEnum.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/events/EventsMethodEnum.java @@ -9,6 +9,7 @@ import org.dromara.common.sdk.cloudapi.flightarea.FlightAreasSyncProgress; import org.dromara.common.sdk.cloudapi.hms.Hms; import org.dromara.common.sdk.cloudapi.interconnection.CustomDataTransmissionFromEsdk; import org.dromara.common.sdk.cloudapi.interconnection.CustomDataTransmissionFromPsdk; +import org.dromara.common.sdk.cloudapi.interconnection.PsdkFloatingWindowTextPsdk; import org.dromara.common.sdk.cloudapi.log.FileUploadProgress; import org.dromara.common.sdk.cloudapi.map.OfflineMapSyncProgress; import org.dromara.common.sdk.cloudapi.media.FileUploadCallback; @@ -86,6 +87,10 @@ public enum EventsMethodEnum { CUSTOM_DATA_TRANSMISSION_FROM_PSDK("custom_data_transmission_from_psdk", ChannelName.INBOUND_EVENTS_CUSTOM_DATA_TRANSMISSION_FROM_PSDK, new TypeReference() {}), + PSDK_FLOARUBF_WINDOW_TEXT("psdk_floating_window_text", ChannelName.INBOUND_EVENTS_PSDK_FLOARUBF_WINDOW_TEXT, new TypeReference() {}), + + + AIRSENSE_WARNING("airsense_warning", ChannelName.INBOUND_EVENTS_AIRSENSE_WARNING, new TypeReference>() {}), FLIGHT_AREAS_SYNC_PROGRESS("flight_areas_sync_progress", ChannelName.INBOUND_EVENTS_FLIGHT_AREAS_SYNC_PROGRESS, new TypeReference() {}), diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/state/DockStateDataKeyEnum.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/state/DockStateDataKeyEnum.java index 9dadfd9..39a2ad2 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/state/DockStateDataKeyEnum.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/state/DockStateDataKeyEnum.java @@ -6,6 +6,8 @@ import org.dromara.common.sdk.cloudapi.property.DockDroneCommanderFlightHeight; import org.dromara.common.sdk.cloudapi.property.DockDroneCommanderModeLostAction; import org.dromara.common.sdk.cloudapi.property.DockDroneOfflineMapEnable; import org.dromara.common.sdk.cloudapi.property.DockDroneRthMode; +import org.dromara.common.sdk.cloudapi.psdk.PsdkUiResource; +import org.dromara.common.sdk.cloudapi.psdk.PsdkWidgetValues; import org.dromara.common.sdk.exception.CloudSDKException; import java.util.Arrays; @@ -50,6 +52,9 @@ public enum DockStateDataKeyEnum { SILENT_MODE(Set.of("silent_mode"), DockSilentMode.class), + PSDK_WIDGE_VALUES(Set.of("psdk_widget_values"), PsdkWidgetValues.class), + + PSDK_UI_RESOURCE(Set.of("psdk_ui_resource"), PsdkUiResource.class), ; private final Set keys; diff --git a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/state/StateDataKeyEnum.java b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/state/StateDataKeyEnum.java index 671c691..2f14f7f 100644 --- a/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/state/StateDataKeyEnum.java +++ b/dk-common/common-cloudsdk/src/main/java/org/dromara/common/sdk/mqtt/state/StateDataKeyEnum.java @@ -7,6 +7,8 @@ import org.dromara.common.sdk.cloudapi.property.DockDroneCommanderFlightHeight; import org.dromara.common.sdk.cloudapi.property.DockDroneCommanderModeLostAction; import org.dromara.common.sdk.cloudapi.property.DockDroneOfflineMapEnable; import org.dromara.common.sdk.cloudapi.property.DockDroneRthMode; +import org.dromara.common.sdk.cloudapi.psdk.PsdkUiResource; +import org.dromara.common.sdk.cloudapi.psdk.PsdkWidgetValues; import org.dromara.common.sdk.mqtt.ChannelName; import java.util.Arrays; @@ -59,6 +61,11 @@ public enum StateDataKeyEnum { DOCK_SILENT_MODE(ChannelName.INBOUND_STATE_DOCK_SILENT_MODE, DockSilentMode.class), + DOCK_PSDK_WIDGE_VALUES(ChannelName.INBOUND_STATE_DOCK_PSDK_WIDGE_VALUES, PsdkWidgetValues.class), + + DOCK_PSDK_UI_RESOURCE(ChannelName.INBOUND_STATE_DOCK_PSDK_UI_RESOURCE, PsdkUiResource.class), + + UNKNOWN(ChannelName.DEFAULT, Object.class); private final String channelName; diff --git a/dk-modules/sample/pom.xml b/dk-modules/sample/pom.xml index 5b8cc62..21a74b7 100644 --- a/dk-modules/sample/pom.xml +++ b/dk-modules/sample/pom.xml @@ -139,6 +139,10 @@ aws-java-sdk-sts 1.12.261 + + org.springframework.boot + spring-boot-starter + ${project.artifactId} @@ -157,4 +161,6 @@ + + diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/control/service/impl/ControlServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/control/service/impl/ControlServiceImpl.java index 54ef9ae..7e78d0b 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/control/service/impl/ControlServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/control/service/impl/ControlServiceImpl.java @@ -34,6 +34,9 @@ import java.util.Objects; import java.util.Optional; import java.util.UUID; +import static org.dromara.common.sdk.cloudapi.device.RcLostActionEnum.RETURN_HOME; +import static org.dromara.common.sdk.cloudapi.wayline.WaylineMethodEnum.RETURN_HOME_CANCEL; + /** * @author sean * @version 1.2 diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/InterconnectionService.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/InterconnectionService.java new file mode 100644 index 0000000..4f3156c --- /dev/null +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/InterconnectionService.java @@ -0,0 +1,26 @@ +package org.dromara.sample.manage.service.impl; + +import lombok.extern.slf4j.Slf4j; +import org.dromara.common.sdk.cloudapi.interconnection.CustomDataTransmissionFromEsdk; +import org.dromara.common.sdk.cloudapi.interconnection.PsdkFloatingWindowTextPsdk; +import org.dromara.common.sdk.cloudapi.interconnection.api.AbstractInterconnectionService; +import org.dromara.common.sdk.mqtt.events.TopicEventsRequest; +import org.springframework.messaging.MessageHeaders; +import org.springframework.stereotype.Service; + +/** + * @auther wuyuan + * @data 2025/3/29 + */ +@Service +@Slf4j +public class InterconnectionService extends AbstractInterconnectionService { + + public void customDataTransmissionFromPsdk(TopicEventsRequest request, MessageHeaders headers) { + log.info(request.toString()); + } + + public void psdkFloatingWindowText(TopicEventsRequest request, MessageHeaders headers) { + log.info(request.toString()); + } +} diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/SDKDeviceService.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/SDKDeviceService.java index a6ad008..49765c0 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/SDKDeviceService.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/service/impl/SDKDeviceService.java @@ -2,6 +2,8 @@ package org.dromara.sample.manage.service.impl; import org.dromara.common.sdk.cloudapi.device.*; import org.dromara.common.sdk.cloudapi.device.api.AbstractDeviceService; +import org.dromara.common.sdk.cloudapi.psdk.PsdkUiResource; +import org.dromara.common.sdk.cloudapi.psdk.PsdkWidgetValues; import org.dromara.common.sdk.cloudapi.tsa.DeviceIconUrl; import org.dromara.common.sdk.cloudapi.tsa.IconUrlEnum; import org.dromara.common.sdk.common.SDKManager; @@ -360,6 +362,16 @@ public class SDKDeviceService extends AbstractDeviceService { .build()).collect(Collectors.toList())); } + @Override + public void dockPsdkUiResource(TopicStateRequest request, MessageHeaders headers){ + log.info(request.toString()); + } + + @Override + public void dockPsdkWidgetValues(TopicStateRequest request, MessageHeaders headers){ + log.info(request.toString()); + } + private void dockGoOnline(DeviceDTO gateway, DeviceDTO subDevice) { if (DeviceDomainEnum.DOCK != gateway.getDomain()) { return; diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/map/service/impl/FlightAreaFileServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/map/service/impl/FlightAreaFileServiceImpl.java index 3cd911b..c3165d8 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/map/service/impl/FlightAreaFileServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/map/service/impl/FlightAreaFileServiceImpl.java @@ -17,6 +17,8 @@ import org.dromara.sample.map.service.IWorkspaceElementService; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.commons.codec.digest.DigestUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -39,6 +41,7 @@ import java.util.stream.Collectors; @Transactional public class FlightAreaFileServiceImpl implements IFlightAreaFileService { + private static final Logger log = LoggerFactory.getLogger(FlightAreaFileServiceImpl.class); @Autowired private IFlightAreaFileMapper mapper; @@ -101,7 +104,6 @@ public class FlightAreaFileServiceImpl implements IFlightAreaFileService { } private FlightAreaFileDTO generateFlightAreaFile(String workspaceId, List flightAreas) { - FlightAreaJson flightAreaJson = new FlightAreaJson() .setFeatures(flightAreas.stream() .map(this::generateFlightAreaFeature) @@ -117,6 +119,7 @@ public class FlightAreaFileServiceImpl implements IFlightAreaFileService { } is.reset(); OssClient storage = OssFactory.instance("flightareafile"); + log.info(is.toString()+"==========================="+name+"======================"+length); storage.uploadSuffix(is,name,length,"json"); return FlightAreaFileDTO.builder() .name(name) diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/map/service/impl/FlightAreaServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/map/service/impl/FlightAreaServiceImpl.java index 3189b6a..d974a41 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/map/service/impl/FlightAreaServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/map/service/impl/FlightAreaServiceImpl.java @@ -171,6 +171,9 @@ public class FlightAreaServiceImpl extends AbstractFlightAreaService implements @Override public FlightAreaFileDTO packageFlightArea(String workspaceId) { List flightAreas = getFlightAreaList(workspaceId); + if(flightAreas.size() == 0){ + return null; + } return flightAreaFileService.packageFlightAreaFile(workspaceId, flightAreas); } @@ -296,6 +299,9 @@ public class FlightAreaServiceImpl extends AbstractFlightAreaService implements FlightAreaFileDTO file = fileOpt.orElse(null); if (flightAreaOpt.isEmpty() || fileOpt.isEmpty()) { file = packageFlightArea(device.getWorkspaceId()); + if(file == null){ + return null; + } } OssClient storage = OssFactory.instance("flightareafile"); return new TopicRequestsResponse>().setData( diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/FlightTaskServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/FlightTaskServiceImpl.java index b94a0f7..95ecd26 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/FlightTaskServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/FlightTaskServiceImpl.java @@ -13,6 +13,7 @@ import org.dromara.common.sdk.common.SDKManager; import org.dromara.common.sdk.mqtt.MqttReply; import org.dromara.common.sdk.mqtt.events.TopicEventsRequest; import org.dromara.common.sdk.mqtt.events.TopicEventsResponse; +import org.dromara.common.sdk.mqtt.requests.TopicRequestsRequest; import org.dromara.common.sdk.mqtt.services.ServicesReplyData; import org.dromara.common.sdk.mqtt.services.TopicServicesResponse; import org.dromara.sample.common.error.CommonErrorEnum; @@ -184,6 +185,10 @@ public class FlightTaskServiceImpl extends AbstractWaylineService implements IFl } + public void returnHomeInfo(TopicRequestsRequest request, MessageHeaders headers) { + log.info(request.toString()); + } + /** * For immediate tasks, the server time shall prevail. * @param param diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineFileServiceImpl.java b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineFileServiceImpl.java index d228af7..0ed105b 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineFileServiceImpl.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/wayline/service/impl/WaylineFileServiceImpl.java @@ -198,6 +198,7 @@ public class WaylineFileServiceImpl implements IWaylineFileService { OssClient storage = OssFactory.instance("waylinefile"); String originalfileName = file.getOriginalFilename(); String suffix = org.apache.commons.lang3.StringUtils.substring(originalfileName, originalfileName.lastIndexOf("."), originalfileName.length()); + suffix = "waylinefile/"+suffix; UploadResult uploadResult = storage.uploadSuffix(file.getBytes(), suffix, file.getContentType()); waylineFile.setObjectKey(uploadResult.getFilename()); List deviceSns = new ArrayList<>(); diff --git a/dk-visual/nacos/src/main/resources/application.properties b/dk-visual/nacos/src/main/resources/application.properties index 44fe8a3..431e2e7 100644 --- a/dk-visual/nacos/src/main/resources/application.properties +++ b/dk-visual/nacos/src/main/resources/application.properties @@ -40,9 +40,9 @@ spring.sql.init.platform=mysql db.num=1 ### Connect URL of DB: -db.url.0=jdbc:mysql://114.235.183.147:3306/dk_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true +db.url.0=jdbc:mysql://127.0.0.1:3307/dk_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true db.user.0=root -db.password.0=dkcy@yf +db.password.0=123456 ### the maximum retry times for push nacos.config.push.maxRetryTime=50