From 8ba375ddf6fc3bedf7999bf065575e5e75e5504c Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期二, 18 七月 2023 15:06:08 +0800
Subject: [PATCH] 增加APP位置接口 修复ptz设置获取不到用户问题

---
 ard-work/src/main/java/com/ruoyi/media/service/impl/MediaService.java |   41 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 39 insertions(+), 2 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/media/service/impl/MediaService.java b/ard-work/src/main/java/com/ruoyi/media/service/impl/MediaService.java
index bf043d6..cf7469e 100644
--- a/ard-work/src/main/java/com/ruoyi/media/service/impl/MediaService.java
+++ b/ard-work/src/main/java/com/ruoyi/media/service/impl/MediaService.java
@@ -1,10 +1,12 @@
 package com.ruoyi.media.service.impl;
 
 import com.alibaba.fastjson2.JSONObject;
+import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.media.domain.*;
 import com.ruoyi.media.service.IMediaService;
 import com.ruoyi.utils.forest.MediaClient;
 import com.ruoyi.utils.tools.ArdTool;
+import io.minio.messages.Item;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
@@ -61,11 +63,46 @@
     }
 
     @Override
-    public List<Items> paths() {
+    public List<StreamInfo> paths() {
         String apiUrl = "http://" + mediamtxHost + ":9997/v2";
         String list = mediaClient.paths(apiUrl);
         JsonsRoot jsonsRoot = JSONObject.parseObject(list, JsonsRoot.class);
-        return jsonsRoot.getItems();
+        List<Items> items = jsonsRoot.getItems();
+        List<StreamInfo> pathInfoList = new ArrayList<>();
+        for (Items item : items) {
+            StreamInfo info = new StreamInfo();
+            //ID
+            String name = item.getName();
+            info.setName(name);
+            String runoninit="";
+            String runondemand = item.getConf().getRunondemand();
+            if (StringUtils.isNotEmpty(runondemand))
+            {
+                runoninit= item.getConf().getRunondemand();
+            }
+            else
+            {
+                runoninit = item.getConf().getRunoninit();
+            }
+            //RTSP婧愬湴鍧�
+            runoninit = item.getConf().getRunondemand();
+            String regex = "rtsp://[^\\s\"]+";
+            Pattern pattern = Pattern.compile(regex);
+            Matcher matcher = pattern.matcher(runoninit);
+            if (matcher.find()) {
+                info.setRtspSource(matcher.group());
+            }
+            //浼犺緭鍗忚
+            regex = "-rtsp_transport\\s+(\\w+)";
+            pattern = Pattern.compile(regex);
+            matcher = pattern.matcher(runoninit);
+            if (matcher.find()) {
+                info.setProtocol(matcher.group(1));
+            }
+
+            pathInfoList.add(info);
+        }
+        return pathInfoList;
     }
 
     @Override

--
Gitblit v1.9.3