From bac19f583c60f86fd15a13230ea70bfc3a6645b1 Mon Sep 17 00:00:00 2001 From: chenghong <24211317@qq.com> Date: 星期一, 14 八月 2023 11:44:41 +0800 Subject: [PATCH] 解决两个国标平台相互级联时,上级不能获取目录的问题 --- src/main/java/com/genersoft/iot/vmp/service/impl/DeviceServiceImpl.java | 36 ++++++++++++++++++++++++++++++------ 1 files changed, 30 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceServiceImpl.java index c288ff4..b484806 100644 --- a/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceServiceImpl.java @@ -108,6 +108,7 @@ inviteStreamService.clearInviteInfo(device.getDeviceId()); } device.setUpdateTime(now); + device.setKeepaliveTime(now); if (device.getKeepaliveIntervalTime() == 0) { // 榛樿蹇冭烦闂撮殧60 device.setKeepaliveIntervalTime(60); @@ -183,6 +184,17 @@ redisCatchStorage.sendDeviceOrChannelStatus(device.getDeviceId(), null, true); } +// +// try { +// cmder.alarmSubscribe(device, 600, "0", "4", "0", "2023-7-27T00:00:00", "2023-7-28T00:00:00"); +// } catch (InvalidArgumentException e) { +// throw new RuntimeException(e); +// } catch (SipException e) { +// throw new RuntimeException(e); +// } catch (ParseException e) { +// throw new RuntimeException(e); +// } + } @Override @@ -198,7 +210,7 @@ redisCatchStorage.updateDevice(device); deviceMapper.update(device); //杩涜閫氶亾绂荤嚎 -// deviceChannelMapper.offlineByDeviceId(deviceId); + deviceChannelMapper.offlineByDeviceId(deviceId); // 绂荤嚎閲婃斁鎵�鏈塻src List<SsrcTransaction> ssrcTransactions = streamSession.getSsrcTransactionForAll(deviceId, null, null, null); if (ssrcTransactions != null && ssrcTransactions.size() > 0) { @@ -493,8 +505,12 @@ if (!ObjectUtils.isEmpty(device.getMediaServerId())) { deviceInStore.setMediaServerId(device.getMediaServerId()); } - deviceInStore.setSdpIp(device.getSdpIp()); - deviceInStore.setCharset(device.getCharset()); + if (!ObjectUtils.isEmpty(device.getCharset())) { + deviceInStore.setCharset(device.getCharset()); + } + if (!ObjectUtils.isEmpty(device.getSdpIp())) { + deviceInStore.setSdpIp(device.getSdpIp()); + } // 鐩綍璁㈤槄鐩稿叧鐨勪俊鎭� if (device.getSubscribeCycleForCatalog() > 0) { @@ -525,10 +541,18 @@ removeMobilePositionSubscribe(deviceInStore); } } - // 鍧愭爣绯诲彉鍖栵紝闇�瑕侀噸鏂拌绠桮CJ02鍧愭爣鍜學GS84鍧愭爣 - if (!deviceInStore.getGeoCoordSys().equals(device.getGeoCoordSys())) { - updateDeviceChannelGeoCoordSys(device); + if (deviceInStore.getGeoCoordSys() != null) { + // 鍧愭爣绯诲彉鍖栵紝闇�瑕侀噸鏂拌绠桮CJ02鍧愭爣鍜學GS84鍧愭爣 + if (!deviceInStore.getGeoCoordSys().equals(device.getGeoCoordSys())) { + updateDeviceChannelGeoCoordSys(device); + } + }else { + device.setGeoCoordSys("WGS84"); } + if (device.getCharset() == null) { + device.setCharset("GB2312"); + } + // 鏇存柊redis redisCatchStorage.updateDevice(device); deviceMapper.updateCustom(device); -- Gitblit v1.8.0