From 1cdcfa88ebbbc37fbaa03d2ab3abc6d98f727050 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Fri, 01 Nov 2024 15:24:30 +0800
Subject: [PATCH] 优化

---
 ard-work/src/main/java/com/ard/vtdu/service/impl/MediaServiceImpl.java |   20 +++++++++++++++-----
 1 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/ard-work/src/main/java/com/ard/vtdu/service/impl/MediaServiceImpl.java b/ard-work/src/main/java/com/ard/vtdu/service/impl/MediaServiceImpl.java
index 031509c..c3088df 100644
--- a/ard-work/src/main/java/com/ard/vtdu/service/impl/MediaServiceImpl.java
+++ b/ard-work/src/main/java/com/ard/vtdu/service/impl/MediaServiceImpl.java
@@ -2,8 +2,10 @@
 
 import com.ard.common.constant.HttpStatus;
 import com.ard.common.core.page.TableDataInfo;
-import com.ard.tianyu.model.receiver.BoxReceiver;
-import com.ard.tianyu.model.receiver.PullStreamUrlReceiver;
+import com.ard.tianyu.config.TyConfiguration;
+import com.ard.tianyu.model.cache.TyTcpServerCache;
+import com.ard.tianyu.model.receiver.BoxInfoReceiver;
+import com.ard.tianyu.model.receiver.BoxStreamUrlReceiver;
 import com.ard.tianyu.service.ITyService;
 import com.ard.vtdu.client.MediaClient;
 import com.ard.vtdu.domain.*;
@@ -42,6 +44,8 @@
     private MediaClient mediaClient;
     @Resource
     private ITyService tyService;
+    @Resource
+    private TyConfiguration tyConfiguration;
     @Value("${mediamtx.host}")
     private String mediamtxHost;
 
@@ -566,15 +570,21 @@
     }
 
     //同步无人机推流到流媒体
-    @Scheduled(cron = "0/20 * * * * ?")
+   // @Scheduled(cron = "0/20 * * * * ?")
     public void syncVtdu() {
+        if (!TyTcpServerCache.getTcpServerCache(tyConfiguration.getTcpserver() + ":" + tyConfiguration.getTcpport())) {
+            return;
+        }
         log.info("定时同步MediaMTX任务开始");
         List<String> nameList = getNameList();
-        List<BoxReceiver> boxList = tyService.getBoxList();
+        List<BoxInfoReceiver> boxList = tyService.getBoxList();
+        if (boxList == null || boxList.isEmpty()) {
+            return;
+        }
         List<ArdVtdu> ardVtduList = boxList.stream()
                 .filter(boxReceiver -> boxReceiver.getOnLine() != 0)  // 过滤掉不在线的
                 .map(boxReceiver -> {
-                    PullStreamUrlReceiver boxLiveUrl = tyService.getBoxLiveUrl(boxReceiver.getBoxSn());
+                    BoxStreamUrlReceiver boxLiveUrl = tyService.getBoxLiveUrl(boxReceiver.getBoxSn());
                     return ArdVtdu.builder().name(boxReceiver.getBoxSn()).rtspSource(boxLiveUrl.getRtmp()).build();
                 })
                 .collect(Collectors.toList());

--
Gitblit v1.9.3