diff --git a/yudao-module-iot/yudao-module-iot-core/src/main/java/cn/iocoder/yudao/module/iot/core/topic/config/IotDeviceConfigPushReqDTO.java b/yudao-module-iot/yudao-module-iot-core/src/main/java/cn/iocoder/yudao/module/iot/core/topic/config/IotDeviceConfigPushReqDTO.java new file mode 100644 index 0000000000..4828c9917a --- /dev/null +++ b/yudao-module-iot/yudao-module-iot-core/src/main/java/cn/iocoder/yudao/module/iot/core/topic/config/IotDeviceConfigPushReqDTO.java @@ -0,0 +1,54 @@ +package cn.iocoder.yudao.module.iot.core.topic.config; + +import cn.iocoder.yudao.module.iot.core.enums.IotDeviceMessageMethodEnum; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * IoT 设备配置推送 Request DTO + *

+ * 用于 {@link IotDeviceMessageMethodEnum#CONFIG_PUSH} 下行消息的 params 参数 + * + * @author 芋道源码 + * @see 阿里云 - 远程配置 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class IotDeviceConfigPushReqDTO { + + /** + * 配置编号 + */ + private String configId; + + /** + * 配置文件大小(字节) + */ + private Long configSize; + + /** + * 签名方法 + */ + private String signMethod; + + /** + * 签名 + */ + private String sign; + + /** + * 配置文件下载地址 + */ + private String url; + + /** + * 获取类型 + *

+ * file: 文件 + * content: 内容 + */ + private String getType; + +} diff --git a/yudao-module-iot/yudao-module-iot-core/src/main/java/cn/iocoder/yudao/module/iot/core/topic/property/IotDevicePropertySetReqDTO.java b/yudao-module-iot/yudao-module-iot-core/src/main/java/cn/iocoder/yudao/module/iot/core/topic/property/IotDevicePropertySetReqDTO.java new file mode 100644 index 0000000000..ba51f1bba1 --- /dev/null +++ b/yudao-module-iot/yudao-module-iot-core/src/main/java/cn/iocoder/yudao/module/iot/core/topic/property/IotDevicePropertySetReqDTO.java @@ -0,0 +1,37 @@ +package cn.iocoder.yudao.module.iot.core.topic.property; + +import cn.iocoder.yudao.module.iot.core.enums.IotDeviceMessageMethodEnum; + +import java.util.HashMap; +import java.util.Map; + +/** + * IoT 设备属性设置 Request DTO + *

+ * 用于 {@link IotDeviceMessageMethodEnum#PROPERTY_SET} 下行消息的 params 参数 + *

+ * 本质是一个 Map,key 为属性标识符,value 为属性值 + * + * @author 芋道源码 + */ +public class IotDevicePropertySetReqDTO extends HashMap { + + public IotDevicePropertySetReqDTO() { + super(); + } + + public IotDevicePropertySetReqDTO(Map properties) { + super(properties); + } + + /** + * 创建属性设置 DTO + * + * @param properties 属性数据 + * @return DTO 对象 + */ + public static IotDevicePropertySetReqDTO of(Map properties) { + return new IotDevicePropertySetReqDTO(properties); + } + +} diff --git a/yudao-module-iot/yudao-module-iot-core/src/main/java/cn/iocoder/yudao/module/iot/core/topic/service/IotDeviceServiceInvokeReqDTO.java b/yudao-module-iot/yudao-module-iot-core/src/main/java/cn/iocoder/yudao/module/iot/core/topic/service/IotDeviceServiceInvokeReqDTO.java new file mode 100644 index 0000000000..dafadd24a2 --- /dev/null +++ b/yudao-module-iot/yudao-module-iot-core/src/main/java/cn/iocoder/yudao/module/iot/core/topic/service/IotDeviceServiceInvokeReqDTO.java @@ -0,0 +1,32 @@ +package cn.iocoder.yudao.module.iot.core.topic.service; + +import cn.iocoder.yudao.module.iot.core.enums.IotDeviceMessageMethodEnum; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Map; + +/** + * IoT 设备服务调用 Request DTO + *

+ * 用于 {@link IotDeviceMessageMethodEnum#SERVICE_INVOKE} 下行消息的 params 参数 + * + * @author 芋道源码 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class IotDeviceServiceInvokeReqDTO { + + /** + * 服务标识符 + */ + private String identifier; + + /** + * 服务输入参数 + */ + private Map inputParams; + +}