| | |
| | | String deviceId = SipUtils.getUserIdFromFromHeader(fromHeader); |
| | | |
| | | Device device = redisCatchStorage.getDevice(deviceId); |
| | | if (device == null || !device.isOnline()) { |
| | | if (device == null || !device.isOnLine()) { |
| | | logger.warn("[收到目录订阅]:{}, 但是设备已经离线", (device != null ? device.getDeviceId():"" )); |
| | | return; |
| | | } |
| | |
| | | } |
| | | }else { |
| | | addChannelMap.put(channel.getChannelId(), channel); |
| | | if (userSetting.getDeviceStatusNotify()) { |
| | | // 发送redis消息 |
| | | redisCatchStorage.sendChannelAddOrDelete(device.getDeviceId(), channel.getChannelId(), true); |
| | | } |
| | | |
| | | if (addChannelMap.keySet().size() > 300) { |
| | | executeSaveForAdd(); |
| | | } |
| | |
| | | // 删除 |
| | | logger.info("[收到删除通道通知] 来自设备: {}, 通道 {}", device.getDeviceId(), channel.getChannelId()); |
| | | deleteChannelList.add(channel); |
| | | if (userSetting.getDeviceStatusNotify()) { |
| | | // 发送redis消息 |
| | | redisCatchStorage.sendChannelAddOrDelete(device.getDeviceId(), channel.getChannelId(), false); |
| | | } |
| | | if (deleteChannelList.size() > 300) { |
| | | executeSaveForDelete(); |
| | | } |
| | |
| | | if (addChannelMap.keySet().size() > 300) { |
| | | executeSaveForAdd(); |
| | | } |
| | | if (userSetting.getDeviceStatusNotify()) { |
| | | // 发送redis消息 |
| | | redisCatchStorage.sendChannelAddOrDelete(device.getDeviceId(), channel.getChannelId(), true); |
| | | } |
| | | } |
| | | break; |
| | | default: |