|
|
@ -159,7 +159,9 @@ public class SDKDeviceService extends AbstractDeviceService { |
|
|
|
if(request.getData().getMediaFileDetail() != null){ |
|
|
|
RedisOpsUtils.hashSet("updateMediaFileDetail",from,request.getData().getMediaFileDetail().getRemainUpload()); |
|
|
|
} |
|
|
|
|
|
|
|
if( deviceRedisService.getDeviceOsd(deviceOpt.get().getChildDeviceSn(),OsdDockDrone.class).isEmpty() && deviceRedisService.checkDeviceVideo(deviceOpt.get().getChildDeviceSn())){ |
|
|
|
deviceRedisService.delDeviceVideo(deviceOpt.get().getChildDeviceSn()); |
|
|
|
} |
|
|
|
DeviceDTO device = deviceOpt.get(); |
|
|
|
if (StringUtils.hasText(device.getChildDeviceSn())) { |
|
|
|
deviceService.getDeviceBySn(device.getChildDeviceSn()).ifPresent(device::setChildren); |
|
|
@ -186,22 +188,18 @@ public class SDKDeviceService extends AbstractDeviceService { |
|
|
|
} |
|
|
|
if(request.getData().getLiveStatus().size() == 0 ){ |
|
|
|
String deviceVideoEnum = DeviceVideoEnum.find(deviceOnline.get().getDeviceName()).getDevice(); |
|
|
|
if(!deviceRedisService.checkDeviceVideo(deviceOnline.get().getDeviceSn())){ |
|
|
|
VideoId videoId = new VideoId(deviceOnline.get().getDeviceSn()+deviceVideoEnum+SLASH + VideoTypeEnum.NORMAL + DASH+DeviceTypeVideoEnum.ZERO.getVideoType()); |
|
|
|
deviceRedisService.setDeviceVideo(deviceOnline.get().getDeviceSn(),videoId); |
|
|
|
MessageProducerUtil.sendAsyncProducerMessage("videoStartConsum","videoStopStart",deviceOnline.get().getDeviceSn(),videoId.toString()); |
|
|
|
} |
|
|
|
deviceRedisService.delDeviceVideo(deviceOnline.get().getDeviceSn()); |
|
|
|
VideoId videoId = new VideoId(deviceOnline.get().getDeviceSn()+deviceVideoEnum+SLASH + VideoTypeEnum.NORMAL + DASH+DeviceTypeVideoEnum.ZERO.getVideoType()); |
|
|
|
MessageProducerUtil.sendAsyncProducerMessage("videoStartConsum","videoStopStart",deviceOnline.get().getDeviceSn(),videoId.toString()); |
|
|
|
|
|
|
|
} |
|
|
|
List<DockLiveStatusData> dockLiveStatusDataList = request.getData().getLiveStatus().stream().filter(item -> |
|
|
|
item.getVideoId().getDroneSn().equals(dockOnline.get().getChildDeviceSn()) && item.getStatus() == true).collect(Collectors.toList()); |
|
|
|
if(dockLiveStatusDataList.size() == 0){ |
|
|
|
String deviceVideoEnum = DeviceVideoEnum.find(deviceOnline.get().getDeviceName()).getDevice(); |
|
|
|
if(!deviceRedisService.checkDeviceVideo(deviceOnline.get().getDeviceSn())){ |
|
|
|
VideoId videoId = new VideoId(deviceOnline.get().getDeviceSn()+deviceVideoEnum+SLASH + VideoTypeEnum.NORMAL + DASH+DeviceTypeVideoEnum.ZERO.getVideoType()); |
|
|
|
deviceRedisService.setDeviceVideo(deviceOnline.get().getDeviceSn(),videoId); |
|
|
|
MessageProducerUtil.sendAsyncProducerMessage("videoStartConsum","videoStopStart",deviceOnline.get().getDeviceSn(),videoId.toString()); |
|
|
|
} |
|
|
|
VideoId videoId = new VideoId(deviceOnline.get().getDeviceSn()+deviceVideoEnum+SLASH + VideoTypeEnum.NORMAL + DASH+DeviceTypeVideoEnum.ZERO.getVideoType()); |
|
|
|
deviceRedisService.delDeviceVideo(deviceOnline.get().getDeviceSn()); |
|
|
|
MessageProducerUtil.sendAsyncProducerMessage("videoStartConsum","videoStopStart",deviceOnline.get().getDeviceSn(),videoId.toString()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
@ -209,7 +207,6 @@ public class SDKDeviceService extends AbstractDeviceService { |
|
|
|
public void osdDockDrone(TopicOsdRequest<OsdDockDrone> request, MessageHeaders headers) { |
|
|
|
String from = request.getFrom(); |
|
|
|
Optional<DeviceDTO> deviceOpt = deviceRedisService.getDeviceOnline(from); |
|
|
|
log.error(deviceOpt.get().getDeviceSn()); |
|
|
|
if (deviceOpt.isEmpty()) { |
|
|
|
deviceOpt = deviceService.getDeviceBySn(from); |
|
|
|
if (deviceOpt.isEmpty()) { |
|
|
@ -226,8 +223,7 @@ public class SDKDeviceService extends AbstractDeviceService { |
|
|
|
DeviceDTO device = deviceOpt.get(); |
|
|
|
String deviceVideoEnum = DeviceVideoEnum.find(device.getDeviceName()).getDevice(); |
|
|
|
if(!deviceRedisService.checkDeviceVideo(device.getDeviceSn())){ |
|
|
|
VideoId videoId = new VideoId(device.getDeviceSn()+deviceVideoEnum+SLASH + VideoTypeEnum.NORMAL + DASH+DeviceTypeVideoEnum.ZERO.getVideoType()); |
|
|
|
deviceRedisService.setDeviceVideo(device.getDeviceSn(),videoId); |
|
|
|
VideoId videoId = new VideoId(device.getDeviceSn()+SLASH+deviceVideoEnum+SLASH + VideoTypeEnum.NORMAL.getType() + DASH+DeviceTypeVideoEnum.ZERO.getVideoType()); |
|
|
|
MessageProducerUtil.sendAsyncProducerMessage("videoStartConsum","videoStart",device.getDeviceSn(),videoId.toString()); |
|
|
|
} |
|
|
|
deviceRedisService.setDeviceOnline(device); |
|
|
|