|
@@ -255,28 +255,25 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
|
|
|
|
|
|
private void destroyExpiredLiveRoom(Date now, ImLiveBroadcastRoom room, int expiredMinute) {
|
|
|
log.error("roomDestroy destroyExpiredLiveRoom >>>> now {} roomInfo : {} expiredMinute:{}", now, JSONObject.toJSONString(room), expiredMinute);
|
|
|
- //过期时间= 房间正式开始时间+expiredMinute 分钟
|
|
|
- Date expiredTime = DateUtil.addMinutes(room.getCreatedTime(), expiredMinute);
|
|
|
- // 现在 大于等于 过期时间
|
|
|
- if (now.getTime() >= expiredTime.getTime()) {
|
|
|
- //获取直播间主讲人信息
|
|
|
- RBucket<RoomSpeakerInfo> speakerCache = redissonClient.getBucket(LIVE_SPEAKER_INFO.replace(USER_ID, room.getSpeakerId().toString()));
|
|
|
- if (speakerCache.isExists()) {
|
|
|
- RoomSpeakerInfo speakerInfo = speakerCache.get();
|
|
|
- //超过expiredMinute分钟,没有进入房间
|
|
|
- if (Objects.isNull(speakerInfo.getJoinRoomTime())) {
|
|
|
- roomDestroy(room);
|
|
|
- log.info("roomDestroy not joinRoom >>>> roomId:{}", room.getId());
|
|
|
- return;
|
|
|
- }
|
|
|
+ //获取直播间主讲人信息
|
|
|
+ RBucket<RoomSpeakerInfo> speakerCache = redissonClient.getBucket(LIVE_SPEAKER_INFO.replace(USER_ID, room.getSpeakerId().toString()));
|
|
|
+ if (speakerCache.isExists()) {
|
|
|
+ RoomSpeakerInfo speakerInfo = speakerCache.get();
|
|
|
+ //过期时间= 房间正式开始时间+expiredMinute 分钟
|
|
|
+ Date expiredTime = DateUtil.addMinutes(room.getCreatedTime(), expiredMinute);
|
|
|
+ // 现在 超过过期时间没有进入房间 则销毁房间
|
|
|
+ if (now.getTime() >= expiredTime.getTime() && Objects.isNull(speakerInfo.getJoinRoomTime())) {
|
|
|
+ roomDestroy(room);
|
|
|
+ log.info("roomDestroy not joinRoom >>>> roomId:{}", room.getId());
|
|
|
+ return;
|
|
|
+ }
|
|
|
|
|
|
- //现在时间 大于 (退出房间的时间 + expiredMinute 分钟),则销毁
|
|
|
- if (Objects.nonNull(speakerInfo.getExitRoomTime())) {
|
|
|
- Date comparedTime = DateUtil.addMinutes(speakerInfo.getExitRoomTime(), expiredMinute);
|
|
|
- if (now.getTime() >= comparedTime.getTime() && speakerInfo.getState() != 0) {
|
|
|
- roomDestroy(room);
|
|
|
- log.info("roomDestroy exitRoom >>>> roomId:{}", room.getId());
|
|
|
- }
|
|
|
+ //现在时间 超过 (退出房间的时间 + expiredMinute 分钟) 则销毁房间
|
|
|
+ if (Objects.nonNull(speakerInfo.getExitRoomTime())) {
|
|
|
+ Date comparedTime = DateUtil.addMinutes(speakerInfo.getExitRoomTime(), expiredMinute);
|
|
|
+ if (now.getTime() >= comparedTime.getTime() && speakerInfo.getState() != 0) {
|
|
|
+ roomDestroy(room);
|
|
|
+ log.info("roomDestroy exitRoom >>>> roomId:{}", room.getId());
|
|
|
}
|
|
|
}
|
|
|
}
|