From fe7ddbb5c351d973b83cd6350bd2837a000d3d4a Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期五, 19 十一月 2021 18:08:49 +0800 Subject: [PATCH] 修复DOCKERFILE --- src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java | 41 +++++++++++++++++++++++++---------------- 1 files changed, 25 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java index 67b605c..f20f74d 100644 --- a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java +++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRunner.java @@ -45,18 +45,18 @@ mediaServerService.clearMediaServerForOnline(); // 灏嗛厤缃枃浠剁殑meida閰嶇疆鍐欏叆鏁版嵁搴� - MediaServerItem presetMediaServer = mediaServerService.getOneByHostAndPort( - mediaConfig.getIp(), mediaConfig.getHttpPort()); - if (presetMediaServer != null) { - MediaServerItem mediaSerItem = mediaConfig.getMediaSerItem(); - mediaSerItem.setId(presetMediaServer.getId()); - mediaServerService.update(mediaSerItem); - }else { - if (mediaConfig.getId() != null) { - MediaServerItem mediaSerItem = mediaConfig.getMediaSerItem(); - mediaServerService.add(mediaSerItem); - } - } +// MediaServerItem presetMediaServer = mediaServerService.getOneByHostAndPort( +// mediaConfig.getIp(), mediaConfig.getHttpPort()); +// if (presetMediaServer != null) { +// MediaServerItem mediaSerItem = mediaConfig.getMediaSerItem(); +// mediaSerItem.setId(presetMediaServer.getId()); +// mediaServerService.update(mediaSerItem); +// }else { +// if (mediaConfig.getId() != null) { +// MediaServerItem mediaSerItem = mediaConfig.getMediaSerItem(); +// mediaServerService.add(mediaSerItem); +// } +// } // 璁㈤槄 zlm鍚姩浜嬩欢, 鏂扮殑zlm涔熶細浠庤繖閲岃繘鍏ョ郴缁� hookSubscribe.addSubscribe(ZLMHttpHookSubscribe.HookType.on_server_started,null, @@ -73,14 +73,15 @@ logger.info("绛夊緟榛樿zlm鎺ュ叆..."); // 鑾峰彇鎵�鏈夌殑zlm锛� 骞跺紑鍚富鍔ㄨ繛鎺� - List<MediaServerItem> all = mediaServerService.getAll(); - if (presetMediaServer == null) { + List<MediaServerItem> all = mediaServerService.getAllFromDatabase(); + if (all.size() == 0) { all.add(mediaConfig.getMediaSerItem()); } for (MediaServerItem mediaServerItem : all) { if (startGetMedia == null) startGetMedia = new HashMap<>(); startGetMedia.put(mediaServerItem.getId(), true); new Thread(() -> { + ZLMServerConfig zlmServerConfig = getMediaServerConfig(mediaServerItem); if (zlmServerConfig != null) { zlmServerConfig.setIp(mediaServerItem.getIp()); @@ -88,6 +89,7 @@ startGetMedia.remove(mediaServerItem.getId()); mediaServerService.handLeZLMServerConfig(zlmServerConfig); } + }).start(); } Timer timer = new Timer(); @@ -99,15 +101,22 @@ Set<String> allZlmId = startGetMedia.keySet(); for (String id : allZlmId) { logger.error("[ {} ]]涓诲姩杩炴帴澶辫触锛屼笉鍐嶄富鍔ㄨ繛鎺�", id); - startGetMedia.put(id, false); } + startGetMedia = null; } + // TODO 娓呯悊鏁版嵁搴撲腑涓巖edis涓嶅尮閰嶇殑zlm } }, 60 * 1000 * 2); } public ZLMServerConfig getMediaServerConfig(MediaServerItem mediaServerItem) { - if ( startGetMedia.get(mediaServerItem.getId()) == null || !startGetMedia.get(mediaServerItem.getId())) return null; + if (startGetMedia == null) { return null;} + if (!mediaServerItem.isDefaultServer() && mediaServerService.getOne(mediaServerItem.getId()) == null) { + return null; + } + if ( startGetMedia.get(mediaServerItem.getId()) == null || !startGetMedia.get(mediaServerItem.getId())) { + return null; + } JSONObject responseJSON = zlmresTfulUtils.getMediaServerConfig(mediaServerItem); ZLMServerConfig ZLMServerConfig = null; if (responseJSON != null) { -- Gitblit v1.8.0