From b079a38e4cf9a0c0eac16ec63cc5ae297824389a Mon Sep 17 00:00:00 2001
From: zhaowenyu <35589726@qq.com>
Date: Sat, 01 Nov 2025 12:32:30 +0800
Subject: [PATCH] 2025-11-1 zwy liveCapacityReceiver参数为null发生异常; 机场设备在刚开机时,发送的state状态时,直播能力前三次发送的是空,可能是由于刚开机,等待各设备开机,第四次为正常数据。

---
 ard-sample/src/main/java/com/ard/sample/manage/service/impl/LiveStreamServiceImpl.java |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/ard-sample/src/main/java/com/ard/sample/manage/service/impl/LiveStreamServiceImpl.java b/ard-sample/src/main/java/com/ard/sample/manage/service/impl/LiveStreamServiceImpl.java
index 7906af2..9a0aec7 100644
--- a/ard-sample/src/main/java/com/ard/sample/manage/service/impl/LiveStreamServiceImpl.java
+++ b/ard-sample/src/main/java/com/ard/sample/manage/service/impl/LiveStreamServiceImpl.java
@@ -81,6 +81,11 @@
     @Override
     public void saveLiveCapacity(LiveCapacityReceiver liveCapacityReceiver, Long timestamp) {
         // Solve timing problems
+        if(liveCapacityReceiver==null){
+            //2025-10-28 zwy,这里有个空指针异常问题,如果liveCapacityReceiver为空,则不应该执行下面的代码。
+            //机场设备在刚开机时,发送的state状态时,直播能力前三次发送的是空,可能是由于刚开机,等待各设备开机,第四次为正常数据。
+            return;
+        }
         for (CapacityDeviceReceiver capacityDeviceReceiver : liveCapacityReceiver.getDeviceList()) {
             long last = (long) Objects.requireNonNullElse(
                     RedisOpsUtils.get(RedisConst.LIVE_CAPACITY + capacityDeviceReceiver.getSn()), 0L);
@@ -124,10 +129,6 @@
                 String rtmpUrl = "rtmp://" + mediamtxConfig.getPlayHost() + ":1935" + "/" + name;  // 拼接 webrtcUrl
                 String protocol = mediamtxConfig.isHttps() ? "https://" : "http://";
                 String webrtcUrl = protocol + mediamtxConfig.getPlayHost() + ":8889" + "/" + name;  // 拼接 webrtcUrl
-
-                live.setRtmpUrl(rtmpUrl);
-                live.setRtspUrl(rtspUrl);
-                live.setWebrtcUrl(webrtcUrl);
 
                 // 如果没有,插入新的记录
                 ArdVtdu vtdu = ArdVtdu.builder().name(name).rtspSource("publisher").rtspUrl(rtspUrl).rtmpUrl(rtmpUrl).webrtcUrl(webrtcUrl).build();

--
Gitblit v1.9.3