From cad5f97c2f23435783886b6b5a4f1182391c529f Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期二, 26 三月 2024 10:28:08 +0800 Subject: [PATCH] 优化流变化处理位置 --- src/main/java/com/genersoft/iot/vmp/service/impl/StreamPushServiceImpl.java | 29 +++++++++++++++++++++++++---- 1 files changed, 25 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/StreamPushServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/StreamPushServiceImpl.java index 2c1a476..c3128e8 100755 --- a/src/main/java/com/genersoft/iot/vmp/service/impl/StreamPushServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/service/impl/StreamPushServiceImpl.java @@ -13,7 +13,6 @@ import com.genersoft.iot.vmp.media.bean.MediaInfo; import com.genersoft.iot.vmp.media.event.MediaArrivalEvent; import com.genersoft.iot.vmp.media.event.MediaDepartureEvent; -import com.genersoft.iot.vmp.media.event.MediaServerChangeEvent; import com.genersoft.iot.vmp.media.service.IMediaServerService; import com.genersoft.iot.vmp.media.zlm.dto.MediaServer; import com.genersoft.iot.vmp.media.zlm.dto.StreamAuthorityInfo; @@ -114,8 +113,30 @@ streamAuthorityInfo.setOriginType(mediaInfo.getOriginType()); } redisCatchStorage.updateStreamAuthorityInfo(event.getApp(), event.getStream(), streamAuthorityInfo); - - + StreamPushItem transform = StreamPushItem.getInstance(event, userSetting.getServerId()); + transform.setPushIng(true); + transform.setUpdateTime(DateUtil.getNow()); + transform.setPushTime(DateUtil.getNow()); + transform.setSelf(true); + StreamPushItem pushInDb = getPush(event.getApp(), event.getStream()); + if (pushInDb == null) { + transform.setCreateTime(DateUtil.getNow()); + streamPushMapper.add(transform); + }else { + streamPushMapper.update(transform); + gbStreamMapper.updateMediaServer(event.getApp(), event.getStream(), event.getMediaServer().getId()); + } +// ChannelOnlineEvent channelOnlineEventLister = getChannelOnlineEventLister(transform.getApp(), transform.getStream()); +// if ( channelOnlineEventLister != null) { +// try { +// channelOnlineEventLister.run(transform.getApp(), transform.getStream(), transform.getServerId());; +// } catch (ParseException e) { +// logger.error("addPush: ", e); +// } +// removedChannelOnlineEventLister(transform.getApp(), transform.getStream()); +// } + // 鍐椾綑鏁版嵁锛岃嚜宸辩郴缁熶腑鑷敤 + redisCatchStorage.addPushListItem(event.getApp(), event.getStream(), event); } /** @@ -141,7 +162,7 @@ String key = streamInfo.getApp() + "_" + streamInfo.getStream(); StreamPushItem streamPushItem = result.get(key); if (streamPushItem == null) { - streamPushItem = streamPushItem.instance(streamInfo); + streamPushItem = streamPushItem.getInstance(streamInfo); result.put(key, streamPushItem); } } -- Gitblit v1.8.0