From 335916f1f15eb9d0b34dea38cacee2300eac0606 Mon Sep 17 00:00:00 2001
From: 李防 <liguofang0703@126.com>
Date: 星期一, 07 三月 2022 14:20:27 +0800
Subject: [PATCH] InviteRequestProcessor类中,channelid从invite消息的header subject获取,不再从第一行request line获取。原因是和第三方平台对接时,发送的invite消息第一行为国标平台编码而不是设备通道编码,导致报错通道不存在,返回404。

---
 src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMMediaListManager.java |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMMediaListManager.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMMediaListManager.java
index 5b7ba1c..c884495 100644
--- a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMMediaListManager.java
+++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMMediaListManager.java
@@ -105,7 +105,7 @@
         updateMedia(mediaServerItem, app, streamId);
     }
 
-    public void addPush(MediaItem mediaItem) {
+    public StreamPushItem addPush(MediaItem mediaItem) {
         // 鏌ユ壘姝ょ洿鎾祦鏄惁瀛樺湪redis棰勮gbId
         StreamPushItem transform = streamPushService.transform(mediaItem);
         // 浠巗treamId鍙栧嚭鏌ヨ鍏抽敭鍊�
@@ -122,7 +122,6 @@
                 transform.setName(thirdPartyGB.getName());
             }
         }
-        storager.updateMedia(transform);
         if (!StringUtils.isEmpty(transform.getGbId())) {
             // 濡傛灉杩欎釜鍥芥爣ID宸茬粡缁欎簡鍏朵粬鎺ㄦ祦涓旀祦宸茬绾匡紝鍒欑Щ闄ゅ叾浠栨帹娴�
             List<GbStream> gbStreams = gbStreamMapper.selectByGBId(transform.getGbId());
@@ -130,18 +129,22 @@
                 for (GbStream gbStream : gbStreams) {
                     // 鍑虹幇浣跨敤鐩稿悓鍥芥爣Id鐨勮棰戞祦鏃讹紝浣跨敤鏂版祦鏇挎崲鏃ф祦锛�
                     gbStreamMapper.del(gbStream.getApp(), gbStream.getStream());
-                    platformGbStreamMapper.delByAppAndStream(gbStream.getApp(), gbStream.getStream());
                     if (!gbStream.isStatus()) {
                         streamPushMapper.del(gbStream.getApp(), gbStream.getStream());
                     }
                 }
             }
-            if (gbStreamMapper.selectOne(transform.getApp(), transform.getStream()) != null) {
+            StreamProxyItem streamProxyItem = gbStreamMapper.selectOne(transform.getApp(), transform.getStream());
+            if (streamProxyItem != null) {
+                transform.setGbStreamId(streamProxyItem.getGbStreamId());
                 gbStreamMapper.update(transform);
             }else {
+                transform.setCreateStamp(System.currentTimeMillis());
                 gbStreamMapper.add(transform);
             }
         }
+        storager.updateMedia(transform);
+        return transform;
     }
 
 

--
Gitblit v1.8.0