From b6e604f2449bb65dfaafb0f0741ba54ff0d2f9c2 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 30 四月 2024 15:20:03 +0800
Subject: [PATCH] 修改云端录像详情页使用直接访问zlm的方式播放录像
---
src/main/java/com/genersoft/iot/vmp/vmanager/server/ServerController.java | 85 ++++++++++++++++--------------------------
1 files changed, 32 insertions(+), 53 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/server/ServerController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/server/ServerController.java
old mode 100644
new mode 100755
index 6b8550d..a7d6041
--- a/src/main/java/com/genersoft/iot/vmp/vmanager/server/ServerController.java
+++ b/src/main/java/com/genersoft/iot/vmp/vmanager/server/ServerController.java
@@ -2,49 +2,41 @@
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
-import com.genersoft.iot.vmp.VManageBootstrap;
import com.genersoft.iot.vmp.common.SystemAllInfo;
import com.genersoft.iot.vmp.common.VersionPo;
import com.genersoft.iot.vmp.conf.SipConfig;
import com.genersoft.iot.vmp.conf.UserSetting;
import com.genersoft.iot.vmp.conf.VersionInfo;
import com.genersoft.iot.vmp.conf.exception.ControllerException;
-import com.genersoft.iot.vmp.media.zlm.ZlmHttpHookSubscribe;
-import com.genersoft.iot.vmp.media.zlm.dto.IHookSubscribe;
-import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
+import com.genersoft.iot.vmp.conf.security.JwtUtils;
+import com.genersoft.iot.vmp.media.service.IMediaServerService;
+import com.genersoft.iot.vmp.media.bean.MediaServer;
import com.genersoft.iot.vmp.service.*;
import com.genersoft.iot.vmp.service.bean.MediaServerLoad;
import com.genersoft.iot.vmp.storager.IRedisCatchStorage;
-import com.genersoft.iot.vmp.utils.SpringBeanFactory;
import com.genersoft.iot.vmp.vmanager.bean.ErrorCode;
-import com.genersoft.iot.vmp.vmanager.bean.ResourceBaceInfo;
+import com.genersoft.iot.vmp.vmanager.bean.ResourceBaseInfo;
import com.genersoft.iot.vmp.vmanager.bean.ResourceInfo;
import com.genersoft.iot.vmp.vmanager.bean.SystemConfigInfo;
-import gov.nist.javax.sip.SipStackImpl;
-
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
-import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
-import javax.sip.ListeningPoint;
-import javax.sip.ObjectInUseException;
-import javax.sip.SipProvider;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.List;
@SuppressWarnings("rawtypes")
@Tag(name = "鏈嶅姟鎺у埗")
-@CrossOrigin
+
@RestController
@RequestMapping("/api/server")
public class ServerController {
- @Autowired
- private ZlmHttpHookSubscribe zlmHttpHookSubscribe;
@Autowired
private IMediaServerService mediaServerService;
@@ -77,45 +69,43 @@
@Autowired
- private ThreadPoolTaskExecutor taskExecutor;
-
- @Autowired
private IRedisCatchStorage redisCatchStorage;
+
@GetMapping(value = "/media_server/list")
@ResponseBody
- @Operation(summary = "娴佸獟浣撴湇鍔″垪琛�")
- public List<MediaServerItem> getMediaServerList() {
+ @Operation(summary = "娴佸獟浣撴湇鍔″垪琛�", security = @SecurityRequirement(name = JwtUtils.HEADER))
+ public List<MediaServer> getMediaServerList() {
return mediaServerService.getAll();
}
@GetMapping(value = "/media_server/online/list")
@ResponseBody
- @Operation(summary = "鍦ㄧ嚎娴佸獟浣撴湇鍔″垪琛�")
- public List<MediaServerItem> getOnlineMediaServerList() {
+ @Operation(summary = "鍦ㄧ嚎娴佸獟浣撴湇鍔″垪琛�", security = @SecurityRequirement(name = JwtUtils.HEADER))
+ public List<MediaServer> getOnlineMediaServerList() {
return mediaServerService.getAllOnline();
}
@GetMapping(value = "/media_server/one/{id}")
@ResponseBody
- @Operation(summary = "鍋滄瑙嗛鍥炴斁")
+ @Operation(summary = "鍋滄瑙嗛鍥炴斁", security = @SecurityRequirement(name = JwtUtils.HEADER))
@Parameter(name = "id", description = "娴佸獟浣撴湇鍔D", required = true)
- public MediaServerItem getMediaServer(@PathVariable String id) {
+ public MediaServer getMediaServer(@PathVariable String id) {
return mediaServerService.getOne(id);
}
- @Operation(summary = "娴嬭瘯娴佸獟浣撴湇鍔�")
+ @Operation(summary = "娴嬭瘯娴佸獟浣撴湇鍔�", security = @SecurityRequirement(name = JwtUtils.HEADER))
@Parameter(name = "ip", description = "娴佸獟浣撴湇鍔P", required = true)
@Parameter(name = "port", description = "娴佸獟浣撴湇鍔TT绔彛", required = true)
@Parameter(name = "secret", description = "娴佸獟浣撴湇鍔ecret", required = true)
@GetMapping(value = "/media_server/check")
@ResponseBody
- public MediaServerItem checkMediaServer(@RequestParam String ip, @RequestParam int port, @RequestParam String secret) {
- return mediaServerService.checkMediaServer(ip, port, secret);
+ public MediaServer checkMediaServer(@RequestParam String ip, @RequestParam int port, @RequestParam String secret, @RequestParam String type) {
+ return mediaServerService.checkMediaServer(ip, port, secret, type);
}
- @Operation(summary = "娴嬭瘯娴佸獟浣撳綍鍍忕鐞嗘湇鍔�")
+ @Operation(summary = "娴嬭瘯娴佸獟浣撳綍鍍忕鐞嗘湇鍔�", security = @SecurityRequirement(name = JwtUtils.HEADER))
@Parameter(name = "ip", description = "娴佸獟浣撴湇鍔P", required = true)
@Parameter(name = "port", description = "娴佸獟浣撴湇鍔TT绔彛", required = true)
@GetMapping(value = "/media_server/record/check")
@@ -127,12 +117,12 @@
}
}
- @Operation(summary = "淇濆瓨娴佸獟浣撴湇鍔�")
+ @Operation(summary = "淇濆瓨娴佸獟浣撴湇鍔�", security = @SecurityRequirement(name = JwtUtils.HEADER))
@Parameter(name = "mediaServerItem", description = "娴佸獟浣撲俊鎭�", required = true)
@PostMapping(value = "/media_server/save")
@ResponseBody
- public void saveMediaServer(@RequestBody MediaServerItem mediaServerItem) {
- MediaServerItem mediaServerItemInDatabase = mediaServerService.getOne(mediaServerItem.getId());
+ public void saveMediaServer(@RequestBody MediaServer mediaServerItem) {
+ MediaServer mediaServerItemInDatabase = mediaServerService.getOneFromDatabase(mediaServerItem.getId());
if (mediaServerItemInDatabase != null) {
mediaServerService.update(mediaServerItem);
@@ -141,20 +131,16 @@
}
}
- @Operation(summary = "绉婚櫎娴佸獟浣撴湇鍔�")
+ @Operation(summary = "绉婚櫎娴佸獟浣撴湇鍔�", security = @SecurityRequirement(name = JwtUtils.HEADER))
@Parameter(name = "id", description = "娴佸獟浣揑D", required = true)
@DeleteMapping(value = "/media_server/delete")
@ResponseBody
public void deleteMediaServer(@RequestParam String id) {
- if (mediaServerService.getOne(id) == null) {
- throw new ControllerException(ErrorCode.ERROR100.getCode(), "鏈壘鍒版鑺傜偣");
- }
mediaServerService.delete(id);
- mediaServerService.deleteDb(id);
}
- @Operation(summary = "閲嶅惎鏈嶅姟")
+ @Operation(summary = "閲嶅惎鏈嶅姟", security = @SecurityRequirement(name = JwtUtils.HEADER))
@GetMapping(value = "/restart")
@ResponseBody
public void restart() {
@@ -179,7 +165,7 @@
// });
};
- @Operation(summary = "鑾峰彇绯荤粺淇℃伅淇℃伅")
+ @Operation(summary = "鑾峰彇绯荤粺淇℃伅淇℃伅", security = @SecurityRequirement(name = JwtUtils.HEADER))
@GetMapping(value = "/system/configInfo")
@ResponseBody
public SystemConfigInfo getConfigInfo() {
@@ -191,7 +177,7 @@
return systemConfigInfo;
}
- @Operation(summary = "鑾峰彇鐗堟湰淇℃伅")
+ @Operation(summary = "鑾峰彇鐗堟湰淇℃伅", security = @SecurityRequirement(name = JwtUtils.HEADER))
@GetMapping(value = "/version")
@ResponseBody
public VersionPo VersionPogetVersion() {
@@ -224,13 +210,6 @@
return jsonObject;
}
- @GetMapping(value = "/hooks")
- @ResponseBody
- @Operation(summary = "鑾峰彇褰撳墠鎵�鏈塰ook")
- public List<IHookSubscribe> getHooks() {
- return zlmHttpHookSubscribe.getAll();
- }
-
@GetMapping(value = "/system/info")
@ResponseBody
@Operation(summary = "鑾峰彇绯荤粺淇℃伅")
@@ -245,11 +224,11 @@
@Operation(summary = "鑾峰彇璐熻浇淇℃伅")
public List<MediaServerLoad> getMediaLoad() {
List<MediaServerLoad> result = new ArrayList<>();
- List<MediaServerItem> allOnline = mediaServerService.getAllOnline();
+ List<MediaServer> allOnline = mediaServerService.getAllOnline();
if (allOnline.size() == 0) {
return result;
}else {
- for (MediaServerItem mediaServerItem : allOnline) {
+ for (MediaServer mediaServerItem : allOnline) {
result.add(mediaServerService.getLoad(mediaServerItem));
}
}
@@ -261,13 +240,13 @@
@Operation(summary = "鑾峰彇璐熻浇淇℃伅")
public ResourceInfo getResourceInfo() {
ResourceInfo result = new ResourceInfo();
- ResourceBaceInfo deviceInfo = deviceService.getOverview();
+ ResourceBaseInfo deviceInfo = deviceService.getOverview();
result.setDevice(deviceInfo);
- ResourceBaceInfo channelInfo = channelService.getOverview();
+ ResourceBaseInfo channelInfo = channelService.getOverview();
result.setChannel(channelInfo);
- ResourceBaceInfo pushInfo = pushService.getOverview();
+ ResourceBaseInfo pushInfo = pushService.getOverview();
result.setPush(pushInfo);
- ResourceBaceInfo proxyInfo = proxyService.getOverview();
+ ResourceBaseInfo proxyInfo = proxyService.getOverview();
result.setProxy(proxyInfo);
return result;
--
Gitblit v1.8.0