diff --git a/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/controller/admin/hik/HikController.java b/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/controller/admin/hik/HikController.java index 4216373c..9717e0d8 100644 --- a/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/controller/admin/hik/HikController.java +++ b/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/controller/admin/hik/HikController.java @@ -39,7 +39,7 @@ public class HikController { @Operation(summary = "视频播放->查询播放地址(微信用)") public CommonResult getMCameraUrl(String cameraCode) { - String url = hikService.getPreviewUrlsApi(cameraCode, 0); + String url = hikService.getPreviewUrlsApiHttps(cameraCode); String fullUrl = String.format("https://api.znkj.ispt.com.cn/demo/mobile_play.html?url=%s",url ); return CommonResult.success(fullUrl); } diff --git a/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/service/hik/HikService.java b/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/service/hik/HikService.java index 8a0efd4f..78ac6d2f 100644 --- a/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/service/hik/HikService.java +++ b/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/service/hik/HikService.java @@ -20,6 +20,14 @@ public interface HikService { */ String getPreviewUrlsApi(String cameraCode, Integer streamType); + /** + * 查询播放地址 https + * + * @param cameraCode + * @return + */ + String getPreviewUrlsApiHttps(String cameraCode); + /** * 获取回放流 * diff --git a/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/service/hik/HikServiceImpl.java b/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/service/hik/HikServiceImpl.java index 88d7a0d8..01cd30e8 100644 --- a/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/service/hik/HikServiceImpl.java +++ b/zn-module-smartfactory/zn-module-smartfactory-biz/src/main/java/cn/iocoder/yudao/module/smartfactory/service/hik/HikServiceImpl.java @@ -66,6 +66,39 @@ public class HikServiceImpl implements HikService { return null; } + @Override + public String getPreviewUrlsApiHttps(String cameraIndexCode) { + final String previewUrlsApi = ArtemisApiConstant.previewUrlsApi; + Map path = new HashMap(1) { + { + put("https://", previewUrlsApi); + } + }; + JSONObject body = new JSONObject(); + body.put("cameraIndexCode", cameraIndexCode); + body.put("streamType", 0); + body.put("protocol", "wss"); + body.put("transmode", 1); + body.put("expand", "streamform=ps"); + try { + String result = ArtemisHttpUtil + .doPostStringArtemis(path, JSONUtil.toJsonStr(body), null, null, "application/json"); + log.info("{}监控查看预览地址返回:{}", JSONUtil.toJsonStr(body), result); + if (StringUtils.isEmpty(result)) { + System.out.println("监控查看预览地址返回为空"); + } + JSONObject json = JSONUtil.parseObj(result); + String url = ""; + if (json.getJSONObject("data") != null) { + url = json.getJSONObject("data").getStr("url"); + } + return url; + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + @Override public JSONObject getReplayUrl(CameraReplayDTO replayDTO) { final String replayUrlApi = ArtemisApiConstant.replayUrlApi;