Sfoglia il codice sorgente

喇叭优先级播放 2023-02-13

donggaosheng 2 anni fa
parent
commit
9d884972a9

+ 0 - 43
.gitignore

@@ -1,43 +0,0 @@
-######################################################################
-# Build Tools
-
-.gradle
-/build/
-!gradle/wrapper/gradle-wrapper.jar
-
-target/
-!.mvn/wrapper/maven-wrapper.jar
-
-######################################################################
-# IDE
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-nbproject/private/
-build/*
-nbbuild/
-dist/
-nbdist/
-.nb-gradle/
-
-######################################################################
-# Others
-*.log
-*.xml.versionsBackup
-
-!*/build/*.java
-!*/build/*.html
-!*/build/*.xml

File diff suppressed because it is too large
+ 1 - 1
ArcFace64.dat


+ 74 - 7
zd-api/zd-algorithm-api/src/main/java/com/zd/algorithm/api/speaker/entity/ParamVo.java

@@ -5,19 +5,31 @@ import io.swagger.annotations.ApiModelProperty;
 
 import java.util.List;
 import java.util.Optional;
+import java.util.UUID;
 
 /**
  * 参数类
  */
 public class ParamVo {
+    @ApiModelProperty(required = true, notes = "播放次数,如果指定播放时长,则默认0")
+    private Integer count;
+    @ApiModelProperty(required = true, notes = "播放时长,如果指定播放此时,则默认0")
+    private Integer length;
+    @ApiModelProperty(required = true, notes = "任务优先级")
+    private Integer level;
+    @ApiModelProperty(required = true, notes = "任务名称")
+    private String name;
     @ApiModelProperty(required = false, notes = "任务id, 建议使用UUIDv4生成")
     private String tid;
     @ApiModelProperty(required = true, notes = "number (0~100)设备环境音量、通道音量、任务音量")
     private Integer vol;
-    @ApiModelProperty(required = true, notes = "播放路径")
+    @ApiModelProperty(required = true, notes = "任务类型")
+    private Integer type;
+    @ApiModelProperty(required = true, notes = "任务类型")
+    private String uid;
+    @ApiModelProperty(required = true, notes = "用户id")
     private List<UrlVo> urls;
-    @ApiModelProperty(required = true, notes = "任务优先级")
-    private Integer level;
+
 
     public String getTid() {
         return tid;
@@ -28,11 +40,11 @@ public class ParamVo {
     }
 
     public Integer getVol() {
-        return vol;
+        return Optional.ofNullable(vol).orElse(50);
     }
 
     public void setVol(Integer vol) {
-        this.vol = Optional.ofNullable(vol).orElse(30);
+        this.vol = vol;
     }
 
     public List<UrlVo> getUrls() {
@@ -44,10 +56,65 @@ public class ParamVo {
     }
 
     public Integer getLevel() {
-        return level;
+        return Optional.ofNullable(level).orElse(0);
     }
 
     public void setLevel(Integer level) {
-        this.level = Optional.ofNullable(vol).orElse(0);
+        this.level =level;
+    }
+
+    public Integer getCount() {
+        return Optional.ofNullable(count).orElse(0);
+    }
+
+    public void setCount(Integer count) {
+        this.count = count;
+    }
+
+    public Integer getLength() {
+        return Optional.ofNullable(length).orElse(0);
+    }
+
+    public void setLength(Integer length) {
+        this.length = length;
+    }
+
+    public String getName() {
+        return Optional.ofNullable(name).orElse("实时播放");
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public Integer getType() {
+        return Optional.ofNullable(type).orElse(5);
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public String getUid() {
+        return Optional.ofNullable(uid).orElse(UUID.randomUUID().toString());
+    }
+
+    public void setUid(String uid) {
+        this.uid = uid;
+    }
+
+    @Override
+    public String toString() {
+        return "ParamVo{" +
+                "count=" + count +
+                ", length=" + length +
+                ", level=" + level +
+                ", name='" + name + '\'' +
+                ", tid='" + tid + '\'' +
+                ", vol=" + vol +
+                ", type=" + type +
+                ", uid='" + uid + '\'' +
+                ", urls=" + urls +
+                '}';
     }
 }

+ 9 - 29
zd-api/zd-algorithm-api/src/main/java/com/zd/algorithm/api/speaker/entity/PlayBatchVo.java

@@ -10,16 +10,13 @@ import org.slf4j.LoggerFactory;
  * @descript 播放vo
  */
 public class PlayBatchVo {
-
-    private static Logger logger = LoggerFactory.getLogger(PlayBatchVo.class);
-
     @ApiModelProperty(required = true, notes = "设备编号")
     private String[] sns;
-    @ApiModelProperty(required = false, notes = "方便对接时传递任务类型")
-    private String type;
-    @ApiModelProperty(required = false, notes = "任务名称")
+    @ApiModelProperty(required = true, notes = "方便对接时传递任务类型")
+    private String[] type;
+    @ApiModelProperty(required = true, notes = "任务名称")
     private String name;
-    @ApiModelProperty(required = false, notes = "播放参数")
+    @ApiModelProperty(required = true, notes = "播放参数")
     private ParamVo params;
 
     public String[] getSns() {
@@ -29,16 +26,13 @@ public class PlayBatchVo {
     public void setSns(String[] sns) {
         this.sns = sns;
     }
-    public String getType() {
+
+    public String[] getType() {
         return type;
     }
 
-    public void setType(String type) {
-        if(StringUtils.isBlank(name)){
-            this.type="req";
-        }else{
-            this.type = type;
-        }
+    public void setType(String[] type) {
+        this.type = type;
     }
 
     public String getName() {
@@ -46,11 +40,7 @@ public class PlayBatchVo {
     }
 
     public void setName(String name) {
-        if(StringUtils.isBlank(name)){
-            this.name="songs_queue_append";
-        }else{
-            this.name = name;
-        }
+        this.name = name;
     }
 
     public ParamVo getParams() {
@@ -60,14 +50,4 @@ public class PlayBatchVo {
     public void setParams(ParamVo params) {
         this.params = params;
     }
-
-    @Override
-    public String toString() {
-        return "PlayVo{" +
-                "sns='" + sns + '\'' +
-                ", type='" + type + '\'' +
-                ", name='" + name + '\'' +
-                ", params=" + params +
-                '}';
-    }
 }

+ 2 - 1
zd-api/zd-algorithm-api/src/main/java/com/zd/algorithm/api/speaker/entity/PlayVo.java

@@ -56,7 +56,8 @@ public class PlayVo {
 
     public void setName(String name) {
         if(StringUtils.isBlank(name)){
-            this.name="songs_queue_append";
+            //this.name="songs_queue_append";
+            this.name="priority_task_play";
         }else{
             this.name = name;
         }

+ 4 - 1
zd-modules/zd-algorithm/src/main/java/com/zd/alg/speaker/controller/SpeakerController.java

@@ -214,7 +214,10 @@ public class SpeakerController {
         }
         text=text.replace("https","http");
         text=text.replace("http://lab.sxitdlc.com/sudalabSystem/","http://10.20.10.7/labSystem/");
-        iSpeakerService.textParseVoiceAppIps(text,playVo,1,1000);
+//        for(PlayVo vo: playVo){
+//            iSpeakerService.stopPlayMusic(vo.getSn(),vo.getDeviceIp());
+//        }
+        iSpeakerService.textParseVoiceAppIps(text,playVo,1,10000);
         Map<String,Object> map=new HashMap<>();
         map.put("text",text);
         String date=DateUtils.parseDateToStr("HH:MM",new Date());

+ 20 - 12
zd-modules/zd-algorithm/src/main/java/com/zd/alg/speaker/service/impl/SpeakerServiceImpl.java

@@ -175,15 +175,21 @@ public class SpeakerServiceImpl implements ISpeakerService {
 
     @Override
     public void textParseVoiceAppIps(String texts,List<PlayVo> playVoList,Integer playNum,Integer level) {
-        if (playVoList.size() == 1) {
-            commonTextUrlVoice(texts, playVoList,playNum,level);
-        } else {
-            String deviceIp =playVoList.get(0).getDeviceIp();
-            PlayBatchVo playBatchVo=commonPatchTextUrlVoice(texts,playVoList,playNum,level);
-            boolean isTrue = invokePost(JSONObject.toJSON(playBatchVo).toString(), deviceIp,1, playVoList.get(0).getPort());
-            if (isTrue) {
-                textParseVoiceAppIps(texts,playVoList,playNum,level);
-            }
+//        if (playVoList.size() == 1) {
+//            commonTextUrlVoice(texts, playVoList,playNum,level);
+//        } else {
+//            String deviceIp =playVoList.get(0).getDeviceIp();
+//            PlayBatchVo playBatchVo=commonPatchTextUrlVoice(texts,playVoList,playNum,level);
+//            boolean isTrue = invokePost(JSONObject.toJSON(playBatchVo).toString(), deviceIp,1, playVoList.get(0).getPort());
+//            if (isTrue) {
+//                textParseVoiceAppIps(texts,playVoList,playNum,level);
+//            }
+//        }
+        String deviceIp =playVoList.get(0).getDeviceIp();
+        PlayBatchVo playBatchVo=commonPatchTextUrlVoice(texts,playVoList,playNum,level);
+        boolean isTrue = invokePost(JSONObject.toJSON(playBatchVo).toString(), deviceIp,1, playVoList.get(0).getPort());
+        if (isTrue) {
+            textParseVoiceAppIps(texts,playVoList,playNum,level);
         }
     }
 
@@ -200,7 +206,7 @@ public class SpeakerServiceImpl implements ISpeakerService {
         JSONObject jsonObject = new JSONObject();
         jsonObject.put("sn", sn);
         jsonObject.put("type", "req");
-        jsonObject.put("name", "songs_queue_clear");
+        jsonObject.put("name", "priority_task_stop");
         String responseStr = okHttpRequest.doPostJson(remoteUrlIp, token, jsonObject.toString());
         logger.info("responseStr:+++++++++++++++++++++++++++" + responseStr + "+++++++++++++++++++++++++");
         return tokenRefresh(responseStr);
@@ -273,7 +279,6 @@ public class SpeakerServiceImpl implements ISpeakerService {
             if (null != play.getParams()) {
                 play.getParams().setTid(UUID.randomUUID().toString());
                 play.getParams().setUrls(urlVoList);
-                play.getParams().setLevel(level);
             }
             boolean isTrue = invokePost(JSONObject.toJSON(play).toString(),deviceIp, 0, play.getPort());
             if (isTrue) {
@@ -297,13 +302,16 @@ public class SpeakerServiceImpl implements ISpeakerService {
         if (null != playBatchVo.getParams()) {
             playBatchVo.getParams().setTid(UUID.randomUUID().toString());
             playBatchVo.getParams().setUrls(urlVoList);
-            playBatchVo.getParams().setLevel(level);
+            playBatchVo.getParams().setUid(UUID.randomUUID().toString());
         }
         List<String> snsList = new ArrayList<>();
+        List<String> reqList = new ArrayList<>();
         for (PlayVo playVo : playVoList) {
             snsList.add(playVo.getSn());
+            reqList.add("req");
         }
         playBatchVo.setSns(snsList.toArray(new String[snsList.size()]));
+        playBatchVo.setType(reqList.toArray(new String[reqList.size()]));
         return playBatchVo;
     }
 

+ 38 - 0
zd.iml

@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" version="4">
+  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
+    <output url="file://$MODULE_DIR$/target/classes" />
+    <output-test url="file://$MODULE_DIR$/target/test-classes" />
+    <content url="file://$MODULE_DIR$">
+      <excludeFolder url="file://$MODULE_DIR$/target" />
+    </content>
+    <orderEntry type="inheritedJdk" />
+    <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-bootstrap:3.0.3" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter:3.0.3" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.5.3" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.5.3" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-context:5.3.9" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-aop:5.3.9" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-beans:5.3.9" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-expression:5.3.9" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.5.3" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.5.3" level="project" />
+    <orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.4" level="project" />
+    <orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.4" level="project" />
+    <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.32" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.14.1" level="project" />
+    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.14.1" level="project" />
+    <orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.32" level="project" />
+    <orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-core:5.3.9" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.3.9" level="project" />
+    <orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.28" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-context:3.0.3" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-crypto:5.5.1" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-commons:3.0.3" level="project" />
+    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-rsa:1.0.10.RELEASE" level="project" />
+    <orderEntry type="library" name="Maven: org.bouncycastle:bcpkix-jdk15on:1.68" level="project" />
+    <orderEntry type="library" name="Maven: org.bouncycastle:bcprov-jdk15on:1.68" level="project" />
+  </component>
+</module>