diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/MegaphoneController.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/MegaphoneController.java index 08acb12..e00b93e 100644 --- a/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/MegaphoneController.java +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/controller/MegaphoneController.java @@ -9,6 +9,8 @@ import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.dromara.business.api.RemoteBusinessTaskService; +import org.dromara.common.redis.utils.RedisOpsUtils; +import org.dromara.common.redis.utils.RedisUtils; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.sdk.cloudapi.wayline.WaylineMethodEnum; import org.dromara.common.sdk.common.HttpResultResponse; @@ -77,6 +79,10 @@ public class MegaphoneController { .setTimestamp(System.currentTimeMillis()) .setMethod("speaker_tts_play_start") .setData(param), DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIMEOUT); + String key = "PSDK"+gatewaySn; + MegaphoneDTO dto = (MegaphoneDTO) RedisOpsUtils.get(key); + dto.setStop(0); + RedisOpsUtils.set(key,dto); return HttpResultResponse.success(servicesReplyReceiverCommonTopicResponse); } @@ -100,6 +106,10 @@ public class MegaphoneController { .setTimestamp(System.currentTimeMillis()) .setMethod("speaker_replay") .setData(param), DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIMEOUT); + String key = "PSDK"+gatewaySn; + MegaphoneDTO dto = (MegaphoneDTO) RedisOpsUtils.get(key); + dto.setStop(0); + RedisOpsUtils.set(key,dto); return HttpResultResponse.success(servicesReplyReceiverCommonTopicResponse); } /** @@ -122,6 +132,10 @@ public class MegaphoneController { .setTimestamp(System.currentTimeMillis()) .setMethod("speaker_play_stop") .setData(param), DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIMEOUT); + String key = "PSDK"+gatewaySn; + MegaphoneDTO dto = (MegaphoneDTO) RedisOpsUtils.get(key); + dto.setStop(1); + RedisOpsUtils.set(key,dto); return HttpResultResponse.success(servicesReplyReceiverCommonTopicResponse); } @@ -145,6 +159,10 @@ public class MegaphoneController { .setTimestamp(System.currentTimeMillis()) .setMethod("speaker_play_mode_set") .setData(param), DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIMEOUT); + String key = "PSDK"+gatewaySn; + MegaphoneDTO dto = (MegaphoneDTO) RedisOpsUtils.get(key); + dto.setPlay_mode(param.getPlay_mode()); + RedisOpsUtils.set(key,dto); return HttpResultResponse.success(servicesReplyReceiverCommonTopicResponse); } @@ -171,6 +189,10 @@ public class MegaphoneController { .setTimestamp(System.currentTimeMillis()) .setMethod("speaker_play_volume_set") .setData(param), DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIMEOUT); + String key = "PSDK"+gatewaySn; + MegaphoneDTO dto = (MegaphoneDTO) RedisOpsUtils.get(key); + dto.setPlay_volume(param.getPlay_volume()); + RedisOpsUtils.set(key,dto); return HttpResultResponse.success(servicesReplyReceiverCommonTopicResponse); } @@ -205,4 +227,29 @@ public class MegaphoneController { } return HttpResultResponse.success(); } + + + + /** + * 喊话器-设置播放模式 + * Get the topology list of all online devices in one workspace. + * @return + */ + @PostMapping("/setRedis") + @Operation(summary = "设置喊话器参数。", description = "设置喊话器参数。") + public HttpResultResponse setRedis(@RequestBody MegaphoneDTO param + ) { + String key = "PSDK"+param.getGateway_sn(); + RedisOpsUtils.set(key,param); + return HttpResultResponse.success(); + } + + @PostMapping("/getRedis") + @Operation(summary = "获取喊话器参数。", description = "获取喊话器参数。") + public HttpResultResponse getRedis(@RequestBody MegaphoneDTO param + ) { + String key = "PSDK"+param.getGateway_sn(); + MegaphoneDTO megaphoneDTO = (MegaphoneDTO) RedisOpsUtils.get(key); + return HttpResultResponse.success(megaphoneDTO); + } } diff --git a/dk-modules/sample/src/main/java/org/dromara/sample/manage/model/dto/MegaphoneDTO.java b/dk-modules/sample/src/main/java/org/dromara/sample/manage/model/dto/MegaphoneDTO.java new file mode 100644 index 0000000..294f001 --- /dev/null +++ b/dk-modules/sample/src/main/java/org/dromara/sample/manage/model/dto/MegaphoneDTO.java @@ -0,0 +1,24 @@ +package org.dromara.sample.manage.model.dto; + +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.Data; + +/** + * @author sean.zhou + * @version 0.1 + * @date 2021/11/23 + */ +@Data +@JsonInclude(JsonInclude.Include.NON_NULL) +public class MegaphoneDTO { + + private int play_volume; + + // 1 暂停 0 正常 + private int stop; + + // 1 重复 0 单次 + private int play_mode; + + private String gateway_sn; +}