|
|
|
@ -459,8 +459,10 @@ public class JobMainTask { |
|
|
|
|
|
|
|
if (presetPosSlim == null) { |
|
|
|
presetPosSlim = PatrolPresetPosSlim.builder() |
|
|
|
.presetPosId("99999999") |
|
|
|
.presetPosId(patrolPointId) |
|
|
|
.channelType("vl") |
|
|
|
.patrolPointId(Long.valueOf(patrolPointId)) |
|
|
|
.presetPosName("EMPTY_POS_V_INFO_DEVICE_ID_" + patrolPointId) |
|
|
|
.channelCode("ffffffffffffffffff#ffffffffffffffffffffffffffffffff") |
|
|
|
.videoNvrCode("ffffffffffffffffffffffffffffffff") |
|
|
|
.build(); |
|
|
|
@ -503,7 +505,12 @@ public class JobMainTask { |
|
|
|
fileTypes.append("ir".equals(chanType) ? "1" : "vl".equals(chanType) ? "2" : "").append(","); |
|
|
|
//boolean bOk = false; |
|
|
|
try { |
|
|
|
log.info("PHOTO PresetType uuid: {}, chanType: {}, videoNvrCode: {}, channelCode: {}, patrolPointId: {}", uuid, chanType, presetPos.getVideoNvrCode(), presetPos.getChannelCode(), presetPos.getPatrolPointId()); |
|
|
|
log.info("PHOTO_PRESET_TYPE uuid: {}, chanType: {}, patrolPointId: {}, channelCode: {}, videoNvrCode: {}", |
|
|
|
uuid, |
|
|
|
chanType, |
|
|
|
presetPos.getPatrolPointId(), |
|
|
|
presetPos.getChannelCode(), |
|
|
|
presetPos.getVideoNvrCode()); |
|
|
|
if ("vl".equals(chanType)) { |
|
|
|
String paramUrl = liveIVS_URL + "/api/v1/device/channelsnap?serial=" |
|
|
|
+ presetPos.getVideoNvrCode() |
|
|
|
@ -522,6 +529,8 @@ public class JobMainTask { |
|
|
|
//bOk = ftpResult.isOk(); |
|
|
|
filePaths.append("/" + ftpResult.getFilepath()); |
|
|
|
} |
|
|
|
|
|
|
|
recordPersist(taskExecRecord, infoListSize, patrolTaskInfo, presetPos, fileTypes, filePaths); |
|
|
|
} else if ("ir".equals(chanType)) { |
|
|
|
Map<String, String> algSubtypeIdMap = taskExecClient.getAlgTypeListByPatrolPointId(String.valueOf(presetPos.getPatrolPointId())); |
|
|
|
String paramUrl = liveIVS_URL |
|
|
|
@ -561,6 +570,14 @@ public class JobMainTask { |
|
|
|
+ "&password=" + presetPos.getPassword() |
|
|
|
+ "&address=" + presetPos.getAddress(); |
|
|
|
log.info("INFRARED_PROC INFRA_CAMERA prePointExec paramUrl: {}", paramUrl); |
|
|
|
} else if (algSubtypeCode.contains(AlgConstants.INFRA_CAMERA_REVERSE)) { |
|
|
|
paramUrl = paramUrl |
|
|
|
+ "&host=" + presetPos.getHost() |
|
|
|
+ "&port=" + presetPos.getPort() |
|
|
|
+ "&username=" + presetPos.getUsername() |
|
|
|
+ "&password=" + presetPos.getPassword() |
|
|
|
+ "&address=" + presetPos.getAddress(); |
|
|
|
log.info("INFRARED_PROC INFRA_CAMERA_REVERSE prePointExec paramUrl: {}", paramUrl); |
|
|
|
} |
|
|
|
|
|
|
|
String paramFileDir = basePath + "CCD"; |
|
|
|
@ -570,7 +587,12 @@ public class JobMainTask { |
|
|
|
log.info("INFRARED_PROC: filePath: {}", ftpResult.getFilepath()); |
|
|
|
filePaths.append("/" + ftpResult.getFilepath()); |
|
|
|
} |
|
|
|
recordPersist(taskExecRecord, infoListSize, patrolTaskInfo, presetPos, fileTypes, filePaths); |
|
|
|
} else { // 古老的红外处理流程,保留勿删除 |
|
|
|
log.info("INFRARED_PROC_OLD Failed to Cover id: {}, patrolPointId: {}: cameraCode: {}", |
|
|
|
presetPos.getPresetPosId(), |
|
|
|
presetPos.getPatrolPointId(), |
|
|
|
presetPos.getChannelCode()); |
|
|
|
InfraredModel infraredModel = new InfraredModel(); |
|
|
|
infraredModel.setChannelSerial(presetPos.getChannelCode()); |
|
|
|
infraredModel.setPresetId(Integer.parseInt(presetPos.getPresetPosCode())); |
|
|
|
@ -587,26 +609,36 @@ public class JobMainTask { |
|
|
|
log.info("INFRA:{}", taskExecRecord.getTaskName() + " path : " + path); |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
log.error("PATROL_POINT_NO_CHAN_TYPE id: {}, patrolPointId: {}: cameraCode: {}", |
|
|
|
presetPos.getPresetPosId(), |
|
|
|
presetPos.getPatrolPointId(), |
|
|
|
presetPos.getChannelCode()); |
|
|
|
} |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("error", e); |
|
|
|
} |
|
|
|
|
|
|
|
recordPersist(taskExecRecord, infoListSize, patrolTaskInfo, presetPos, fileTypes, filePaths); |
|
|
|
// recordPersist(taskExecRecord, infoListSize, patrolTaskInfo, presetPos, fileTypes, filePaths); |
|
|
|
} else if (PresetAction.VIDEO.getCode().equals(presetAction.getActionType())) { |
|
|
|
log.info("VIDEO PresetType videoNvrCode: {}, channelCode: {}", presetPos.getVideoNvrCode(), presetPos.getChannelCode()); |
|
|
|
log.info("VIDEO_PRESET_TYPE uuid: {}, chanType: {}, patrolPointId: {}, channelCode: {}, videoNvrCode: {}", |
|
|
|
uuid, |
|
|
|
presetPos.getChannelType(), |
|
|
|
presetPos.getPatrolPointId(), |
|
|
|
presetPos.getChannelCode(), |
|
|
|
presetPos.getVideoNvrCode()); |
|
|
|
fileTypes.append(4).append(","); |
|
|
|
String jsonStr = HttpClientUtil.getHttpResultJson(liveIVS_URL + "/api/v1/stream/start?serial=" + presetPos.getVideoNvrCode() + "&code=" + presetPos.getChannelCode()); |
|
|
|
log.info("先调用直播开始,获取流对象:/api/v1/stream/start?serial= :{} ", presetPos.getVideoNvrCode() + "&code=" + presetPos.getChannelCode()); |
|
|
|
log.info("先调用直播开始, 获取流对象: /api/v1/stream/start?serial= :{} ", presetPos.getVideoNvrCode() + "&code=" + presetPos.getChannelCode()); |
|
|
|
log.info("/api/v1/stream/start 返回 json 字符串{} ", jsonStr); |
|
|
|
JSONObject UserInfoReturn = JSON.parseObject(jsonStr); |
|
|
|
Stream stream = JSON.toJavaObject(UserInfoReturn, Stream.class); |
|
|
|
try { |
|
|
|
String rel = HttpClientUtils.get(liveIVS_URL + "/api/v1/record/start", "streamid=" + stream.getStreamID() + "&code=" + presetPos.getChannelCode()); |
|
|
|
log.info("视频录像开始:/api/v1/record/start streamid={} ", stream.getStreamID() + ",code=" + presetPos.getChannelCode() + ", 调用 /api/v1/record/start 返回值=" + rel); |
|
|
|
log.info("视频录像开始: /api/v1/record/start streamid={} ", stream.getStreamID() + ",code=" + presetPos.getChannelCode() + ", 调用 /api/v1/record/start 返回值=" + rel); |
|
|
|
if (rel.isEmpty()) { |
|
|
|
rel = HttpClientUtils.get(liveIVS_URL + "/api/v1/record/start", "streamid=" + stream.getStreamID() + "&code=" + presetPos.getChannelCode()); |
|
|
|
log.info("一次调用失败,第二次调用 视频录像开始:/api/v1/record/start streamid={} ", stream.getStreamID() + ",code=" + presetPos.getChannelCode() + ", 调用 /api/v1/record/start 返回值=" + rel); |
|
|
|
log.info("一次调用失败,第二次调用 视频录像开始: /api/v1/record/start streamid={} ", stream.getStreamID() + ",code=" + presetPos.getChannelCode() + ", 调用 /api/v1/record/start 返回值=" + rel); |
|
|
|
} |
|
|
|
} catch (Exception e) { |
|
|
|
log.error("error", e); |
|
|
|
|