From 4ad394f7711514f56b6bf36d70d89c16e748d186 Mon Sep 17 00:00:00 2001 From: lawrencehj <1934378145@qq.com> Date: 星期三, 23 六月 2021 15:58:43 +0800 Subject: [PATCH] 修正错行及Swagger参数缺少dataTypeClass定义问题 --- src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/device/DeviceQuery.java | 15 ++++++++++----- 1 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/device/DeviceQuery.java b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/device/DeviceQuery.java index e243d23..02894cc 100644 --- a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/device/DeviceQuery.java +++ b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/device/DeviceQuery.java @@ -2,6 +2,7 @@ import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel; import com.genersoft.iot.vmp.gb28181.transmit.callback.RequestMessage; +import com.genersoft.iot.vmp.storager.IRedisCatchStorage; import com.github.pagehelper.PageInfo; import io.swagger.annotations.*; import org.slf4j.Logger; @@ -33,6 +34,9 @@ @Autowired private IVideoManagerStorager storager; + + @Autowired + private IRedisCatchStorage redisCatchStorage; @Autowired private SIPCommander cmder; @@ -128,15 +132,14 @@ */ @ApiOperation("鍚屾璁惧閫氶亾") @ApiImplicitParams({ - @ApiImplicitParam(name="deviceId", value = "璁惧id", required = true ,dataTypeClass = String.class), + @ApiImplicitParam(name="deviceId", value = "璁惧id", required = true, dataTypeClass = String.class), }) @PostMapping("/devices/{deviceId}/sync") public DeferredResult<ResponseEntity<Device>> devicesSync(@PathVariable String deviceId){ if (logger.isDebugEnabled()) { - } logger.debug("璁惧閫氶亾淇℃伅鍚屾API璋冪敤锛宒eviceId锛�" + deviceId); - + } Device device = storager.queryVideoDevice(deviceId); cmder.catalogQuery(device, event -> { Response response = event.getResponse(); @@ -145,7 +148,7 @@ msg.setData(String.format("鍚屾閫氶亾澶辫触锛岄敊璇爜锛� %s, %s", response.getStatusCode(), response.getReasonPhrase())); resultHolder.invokeResult(msg); }); - DeferredResult<ResponseEntity<Device>> result = new DeferredResult<ResponseEntity<Device>>(2*1000L); + DeferredResult<ResponseEntity<Device>> result = new DeferredResult<ResponseEntity<Device>>(15*1000L); result.onTimeout(()->{ logger.warn(String.format("璁惧閫氶亾淇℃伅鍚屾瓒呮椂")); // 閲婃斁rtpserver @@ -177,8 +180,10 @@ if (offLineDetector.isOnline(deviceId)) { return new ResponseEntity<String>("涓嶅厑璁稿垹闄ゅ湪绾胯澶囷紒", HttpStatus.NOT_ACCEPTABLE); } + // 娓呴櫎redis璁板綍 boolean isSuccess = storager.delete(deviceId); if (isSuccess) { + redisCatchStorage.clearCatchByDeviceId(deviceId); JSONObject json = new JSONObject(); json.put("deviceId", deviceId); return new ResponseEntity<>(json.toString(),HttpStatus.OK); @@ -258,7 +263,7 @@ @ApiImplicitParams({ @ApiImplicitParam(name = "deviceId", value = "璁惧id", required = true, dataTypeClass = String.class), @ApiImplicitParam(name = "streamMode", value = "鏁版嵁娴佷紶杈撴ā寮�, 鍙栧�硷細" + - "UDP锛坲dp浼犺緭锛夛紝TCP-ACTIVE锛坱cp涓诲姩妯″紡,鏆備笉鏀寔锛夛紝TCP-PASSIVE锛坱cp琚姩妯″紡锛�"), + "UDP锛坲dp浼犺緭锛夛紝TCP-ACTIVE锛坱cp涓诲姩妯″紡,鏆備笉鏀寔锛夛紝TCP-PASSIVE锛坱cp琚姩妯″紡锛�", dataTypeClass = String.class), }) @PostMapping("/transport/{deviceId}/{streamMode}") public ResponseEntity<PageInfo> updateTransport(@PathVariable String deviceId, @PathVariable String streamMode){ -- Gitblit v1.8.0