From ecf4fbb68445cf412d5e946f67f92c9928df8273 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期一, 22 八月 2022 16:53:16 +0800 Subject: [PATCH] Merge branch 'wvp-28181-2.0' --- src/main/java/com/genersoft/iot/vmp/service/impl/MediaServerServiceImpl.java | 62 ++++++++++++++----------------- 1 files changed, 28 insertions(+), 34 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServerServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServerServiceImpl.java index 27de261..3a49f44 100644 --- a/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServerServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/service/impl/MediaServerServiceImpl.java @@ -8,6 +8,11 @@ import java.util.Map; import java.util.Set; +import com.genersoft.iot.vmp.media.zlm.ZLMRunner; +import com.genersoft.iot.vmp.service.IStreamProxyService; +import com.genersoft.iot.vmp.storager.IVideoManagerStorage; +import com.genersoft.iot.vmp.conf.exception.ControllerException; +import com.genersoft.iot.vmp.vmanager.bean.ErrorCode; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -16,6 +21,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.TransactionDefinition; import org.springframework.transaction.TransactionStatus; +import org.springframework.util.ObjectUtils; import org.springframework.util.StringUtils; import com.alibaba.fastjson.JSON; @@ -41,6 +47,8 @@ import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; +import java.time.LocalDateTime; +import java.util.*; /** * 濯掍綋鏈嶅姟鍣ㄨ妭鐐圭鐞� @@ -82,6 +90,12 @@ @Autowired + private IVideoManagerStorage storager; + + @Autowired + private IStreamProxyService streamProxyService; + + @Autowired private EventPublisher publisher; /** @@ -91,7 +105,7 @@ public void updateVmServer(List<MediaServerItem> mediaServerItemList) { logger.info("[zlm] 缂撳瓨鍒濆鍖� "); for (MediaServerItem mediaServerItem : mediaServerItemList) { - if (StringUtils.isEmpty(mediaServerItem.getId())) { + if (ObjectUtils.isEmpty(mediaServerItem.getId())) { continue; } // 鏇存柊 @@ -287,8 +301,7 @@ } @Override - public WVPResult<String> add(MediaServerItem mediaServerItem) { - WVPResult<String> result = new WVPResult<>(); + public void add(MediaServerItem mediaServerItem) { mediaServerItem.setCreateTime(DateUtil.getNow()); mediaServerItem.setUpdateTime(DateUtil.getNow()); mediaServerItem.setHookAliveInterval(120); @@ -298,26 +311,19 @@ if (data != null && data.size() > 0) { ZLMServerConfig zlmServerConfig= JSON.parseObject(JSON.toJSONString(data.get(0)), ZLMServerConfig.class); if (mediaServerMapper.queryOne(zlmServerConfig.getGeneralMediaServerId()) != null) { - result.setCode(-1); - result.setMsg("淇濆瓨澶辫触锛屽獟浣撴湇鍔D [ " + zlmServerConfig.getGeneralMediaServerId() + " ] 宸插瓨鍦紝璇蜂慨鏀瑰獟浣撴湇鍔″櫒閰嶇疆"); - return result; + throw new ControllerException(ErrorCode.ERROR100.getCode(),"淇濆瓨澶辫触锛屽獟浣撴湇鍔D [ " + zlmServerConfig.getGeneralMediaServerId() + " ] 宸插瓨鍦紝璇蜂慨鏀瑰獟浣撴湇鍔″櫒閰嶇疆"); } mediaServerItem.setId(zlmServerConfig.getGeneralMediaServerId()); zlmServerConfig.setIp(mediaServerItem.getIp()); mediaServerMapper.add(mediaServerItem); zlmServerOnline(zlmServerConfig); - result.setCode(0); - result.setMsg("success"); }else { - result.setCode(-1); - result.setMsg("杩炴帴澶辫触"); + throw new ControllerException(ErrorCode.ERROR100.getCode(),"杩炴帴澶辫触"); } }else { - result.setCode(-1); - result.setMsg("杩炴帴澶辫触"); + throw new ControllerException(ErrorCode.ERROR100.getCode(),"杩炴帴澶辫触"); } - return result; } @Override @@ -385,7 +391,7 @@ } serverItem.setStatus(true); - if (StringUtils.isEmpty(serverItem.getId())) { + if (ObjectUtils.isEmpty(serverItem.getId())) { logger.warn("[鏈敞鍐岀殑zlm] serverItem缂哄皯ID锛� 鏃犳硶鎺ュ叆锛歿}锛歿}", zlmServerConfig.getIp(),zlmServerConfig.getHttpPort() ); return; } @@ -519,8 +525,8 @@ param.put("general.continue_push_ms", "3000" ); // 鏈�澶氱瓑寰呮湭鍒濆鍖栫殑Track鏃堕棿锛屽崟浣嶆绉掞紝瓒呮椂涔嬪悗浼氬拷鐣ユ湭鍒濆鍖栫殑Track, 璁剧疆姝ら�夐」浼樺寲閭d簺闊抽閿欒鐨勪笉瑙勮寖娴侊紝 // 绛墇lm鏀寔缁欐瘡涓猺tpServer璁剧疆鍏抽棴闊抽鐨勬椂鍊欏彲浠ヤ笉璁剧疆姝ら�夐」 - param.put("general.wait_track_ready_ms", "3000" ); - if (mediaServerItem.isRtpEnable() && !StringUtils.isEmpty(mediaServerItem.getRtpPortRange())) { +// param.put("general.wait_track_ready_ms", "3000" ); + if (mediaServerItem.isRtpEnable() && !ObjectUtils.isEmpty(mediaServerItem.getRtpPortRange())) { param.put("rtp_proxy.port_range", mediaServerItem.getRtpPortRange().replace(",", "-")); } @@ -547,12 +553,9 @@ @Override - public WVPResult<MediaServerItem> checkMediaServer(String ip, int port, String secret) { - WVPResult<MediaServerItem> result = new WVPResult<>(); + public MediaServerItem checkMediaServer(String ip, int port, String secret) { if (mediaServerMapper.queryOneByHostAndPort(ip, port) != null) { - result.setCode(-1); - result.setMsg("姝よ繛鎺ュ凡瀛樺湪"); - return result; + throw new ControllerException(ErrorCode.ERROR100.getCode(), "姝よ繛鎺ュ凡瀛樺湪"); } MediaServerItem mediaServerItem = new MediaServerItem(); mediaServerItem.setIp(ip); @@ -560,21 +563,15 @@ mediaServerItem.setSecret(secret); JSONObject responseJSON = zlmresTfulUtils.getMediaServerConfig(mediaServerItem); if (responseJSON == null) { - result.setCode(-1); - result.setMsg("杩炴帴澶辫触"); - return result; + throw new ControllerException(ErrorCode.ERROR100.getCode(), "杩炴帴澶辫触"); } JSONArray data = responseJSON.getJSONArray("data"); ZLMServerConfig zlmServerConfig = JSON.parseObject(JSON.toJSONString(data.get(0)), ZLMServerConfig.class); if (zlmServerConfig == null) { - result.setCode(-1); - result.setMsg("璇诲彇閰嶇疆澶辫触"); - return result; + throw new ControllerException(ErrorCode.ERROR100.getCode(), "璇诲彇閰嶇疆澶辫触"); } if (mediaServerMapper.queryOne(zlmServerConfig.getGeneralMediaServerId()) != null) { - result.setCode(-1); - result.setMsg("濯掍綋鏈嶅姟ID [" + zlmServerConfig.getGeneralMediaServerId() + " ] 宸插瓨鍦紝璇蜂慨鏀瑰獟浣撴湇鍔″櫒閰嶇疆"); - return result; + throw new ControllerException(ErrorCode.ERROR100.getCode(), "濯掍綋鏈嶅姟ID [" + zlmServerConfig.getGeneralMediaServerId() + " ] 宸插瓨鍦紝璇蜂慨鏀瑰獟浣撴湇鍔″櫒閰嶇疆"); } mediaServerItem.setHttpSSlPort(zlmServerConfig.getHttpPort()); mediaServerItem.setRtmpPort(zlmServerConfig.getRtmpPort()); @@ -586,10 +583,7 @@ mediaServerItem.setHookIp(sipConfig.getIp()); mediaServerItem.setSdpIp(ip); mediaServerItem.setStreamNoneReaderDelayMS(zlmServerConfig.getGeneralStreamNoneReaderDelayMS()); - result.setCode(0); - result.setMsg("鎴愬姛"); - result.setData(mediaServerItem); - return result; + return mediaServerItem; } @Override -- Gitblit v1.8.0