浏览代码

增加返回苹果手机看监控视频地址接口

zhuoning 3 年之前
父节点
当前提交
89ef306532

+ 7 - 0
huimv-farm-video/src/main/java/com/huimv/video/video/controller/CameraController.java

@@ -63,6 +63,13 @@ public class CameraController {
         return new Result(ResultCode.SUCCESS,list);
         return new Result(ResultCode.SUCCESS,list);
     }
     }
 
 
+    @PostMapping("/getCameraDetails2")
+    private Result getCameraDetails2(@RequestBody CameraListsVo cameraListsVo){
+        //
+        List list =  cameraService.getCameraDetails2(cameraListsVo);
+        return new Result(ResultCode.SUCCESS,list);
+    }
+
     @GetMapping("/getCameraDetailsByRoomId")
     @GetMapping("/getCameraDetailsByRoomId")
     private Result getCameraDetailsByRoomId(@RequestParam(name = "roomId") Integer roomId){
     private Result getCameraDetailsByRoomId(@RequestParam(name = "roomId") Integer roomId){
 
 

+ 1 - 0
huimv-farm-video/src/main/java/com/huimv/video/video/entity/vo/CameraVo.java

@@ -17,4 +17,5 @@ public class CameraVo {
     private String cameraName;
     private String cameraName;
     private Integer lastId;
     private Integer lastId;
     private Integer nextId;
     private Integer nextId;
+    private String httpUrl;
 }
 }

+ 3 - 0
huimv-farm-video/src/main/java/com/huimv/video/video/service/ICameraService.java

@@ -23,6 +23,9 @@ public interface ICameraService extends IService<Camera> {
 
 
     List getCameraDetails(CameraListsVo cameraListsVo);
     List getCameraDetails(CameraListsVo cameraListsVo);
 
 
+    //
+    List getCameraDetails2(CameraListsVo cameraListsVo);
+
     List getByAreaId(Integer areaId);
     List getByAreaId(Integer areaId);
 
 
     Result updateStatus(Integer id);
     Result updateStatus(Integer id);

+ 65 - 0
huimv-farm-video/src/main/java/com/huimv/video/video/service/impl/CameraServiceImpl.java

@@ -157,6 +157,71 @@ public class CameraServiceImpl extends ServiceImpl<CameraMapper, Camera> impleme
     }
     }
 
 
     @Override
     @Override
+    public List getCameraDetails2(CameraListsVo cameraListsVo) {
+        List<Integer> cameraIds = cameraListsVo.getCameraIds();
+        CameraListVo cameraListVo = new CameraListsVo();
+        cameraListVo.setCurrent(1);
+        cameraListVo.setSize(10000);
+        cameraListVo.setStrchStr(cameraListsVo.getStrchStr());
+        cameraListVo.setAreaId(cameraListsVo.getAreaId());
+        cameraListVo.setBrandId(cameraListsVo.getBrandId());
+        cameraListVo.setSort(cameraListsVo.getSort());
+
+        if (cameraIds == null || cameraIds.size() == 0){
+            return null;
+        }
+        List cameraDetailsList = new ArrayList();
+        IPage<Camera> page = (IPage<Camera>)this.listPage(cameraListVo).getData();
+        List<Camera> list = page.getRecords();
+        int i = 0;
+        final String farmAppPort = "8081";
+        final String farmVideoApp = "/appleVideo/play?";
+        final String hlsMediaPort= "85";
+        for (Camera camera : list) {
+            for (Integer cameraId : cameraIds) {
+                if (cameraId.equals( camera.getId())){
+                    String cameraAccount = camera.getAccount();
+                    String cameraPassword = camera.getPassword();
+                    String camerIp = camera.getCameraIp();
+                    String cameraName = camera.getCameraName();
+                    Integer areaId = camera.getAreaId();
+                    String url = cameraAreaMapper.selectById(areaId).getPublicUrl();
+                    url = url.substring(0,url.indexOf(":"));
+                    url="http://"+url;
+//                    String rtsp ;
+//                    CameraBrand cameraBrand = cameraBrandMapper.selectById(camera.getBrandId());
+//                    Integer type = cameraBrand.getStreamType();
+//                    if (type == 0){
+//                        rtsp = cameraBrand.getMainStream();
+//                    }else {
+//                        rtsp = cameraBrand.getAssistStream();
+//                    }
+
+                    CameraVo cameraVo= new CameraVo();
+                    cameraVo.setAreaId(areaId);
+//                    cameraVo.setWsUrl("ws://" + url + "/camera_relay?tcpaddr=" + cameraAccount + "%3A" + cameraPassword + "%40" + camerIp);
+//                    cameraVo.setRtspUrl("rtsp://" + cameraAccount + ":" + cameraPassword + "@" + camerIp + rtsp);
+                    //示例
+//                    cameraVo.setHttpUrl("http://183.249.204.153:8081/appleVideo/play?url=admin:hmkj6688@192.168.1.108&name=101&dt=3000&targetUrl=http://183.249.204.153:85");
+                    cameraVo.setHttpUrl(url+":"+farmAppPort+farmVideoApp+"url="+cameraAccount + ":" + cameraPassword + "@" + camerIp+"&name="+"&dt=3000&targetUrl="+url+":"+hlsMediaPort);
+                    cameraVo.setCameraName(cameraName);
+                    if (i > 0){
+                        cameraVo.setLastId(list.get(i-1).getId());
+                    }
+                    if (i < list.size()-1 ){
+                        cameraVo.setNextId(list.get(i+1).getId());
+                    }
+                    cameraDetailsList.add(cameraVo);
+                }
+            }
+            i++;
+        }
+
+
+        return cameraDetailsList;
+    }
+
+    @Override
     public Result updateStatus(Integer id) {
     public Result updateStatus(Integer id) {
         Camera byId = this.getById(id);
         Camera byId = this.getById(id);