| | |
| | | redisCatchStorage.clearCatchByDeviceId(device.getDeviceId()); |
| | | } |
| | | device.setUpdateTime(now); |
| | | device.setOnline(1); |
| | | |
| | | // 第一次上线 |
| | | // 第一次上线 或则设备之前是离线状态--进行通道同步和设备信息查询 |
| | | if (device.getCreateTime() == null) { |
| | | device.setOnline(1); |
| | | device.setCreateTime(now); |
| | | logger.info("[设备上线,首次注册]: {},查询设备信息以及通道信息", device.getDeviceId()); |
| | | deviceMapper.add(device); |
| | |
| | | commander.deviceInfoQuery(device); |
| | | sync(device); |
| | | }else { |
| | | deviceMapper.update(device); |
| | | redisCatchStorage.updateDevice(device); |
| | | if(device.getOnline() == 0){ |
| | | device.setOnline(1); |
| | | device.setCreateTime(now); |
| | | logger.info("[设备上线,离线状态下重新注册]: {},查询设备信息以及通道信息", device.getDeviceId()); |
| | | deviceMapper.update(device); |
| | | redisCatchStorage.updateDevice(device); |
| | | commander.deviceInfoQuery(device); |
| | | sync(device); |
| | | }else { |
| | | deviceMapper.update(device); |
| | | redisCatchStorage.updateDevice(device); |
| | | } |
| | | |
| | | } |
| | | |
| | | // 上线添加订阅 |
| | |
| | | device.setOnline(0); |
| | | redisCatchStorage.updateDevice(device); |
| | | deviceMapper.update(device); |
| | | //进行通道离线 |
| | | deviceChannelMapper.offlineByDeviceId(deviceId); |
| | | // 离线释放所有ssrc |
| | | List<SsrcTransaction> ssrcTransactions = streamSession.getSsrcTransactionForAll(deviceId, null, null, null); |
| | | if (ssrcTransactions != null && ssrcTransactions.size() > 0) { |