From 3962352ec32137e9561c2ba16e192f1f7fdebade Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期三, 15 十二月 2021 11:07:59 +0800 Subject: [PATCH] 优化zlm状态变化事件代码 --- src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMStatusEventListener.java | 28 +++++++++++++++++++++------- 1 files changed, 21 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMOnlineEventListener.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMStatusEventListener.java similarity index 66% rename from src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMOnlineEventListener.java rename to src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMStatusEventListener.java index 952a673..5b0741b 100644 --- a/src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMOnlineEventListener.java +++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMStatusEventListener.java @@ -1,16 +1,14 @@ package com.genersoft.iot.vmp.media.zlm.event; -import com.genersoft.iot.vmp.conf.SipConfig; -import com.genersoft.iot.vmp.conf.UserSetup; import com.genersoft.iot.vmp.service.IMediaServerService; import com.genersoft.iot.vmp.service.IStreamProxyService; import com.genersoft.iot.vmp.service.IStreamPushService; -import com.genersoft.iot.vmp.storager.IVideoManagerStorager; -import com.genersoft.iot.vmp.utils.redis.RedisUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationListener; +import org.springframework.context.event.EventListener; +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Component; import java.text.SimpleDateFormat; @@ -23,9 +21,9 @@ * @date: 2020骞�5鏈�6鏃� 涓嬪崍1:51:23 */ @Component -public class ZLMOnlineEventListener implements ApplicationListener<ZLMOnlineEvent> { +public class ZLMStatusEventListener { - private final static Logger logger = LoggerFactory.getLogger(ZLMOnlineEventListener.class); + private final static Logger logger = LoggerFactory.getLogger(ZLMStatusEventListener.class); @Autowired private IStreamPushService streamPushService; @@ -33,9 +31,13 @@ @Autowired private IStreamProxyService streamProxyService; + @Autowired + private IMediaServerService mediaServerService; + private SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - @Override + @Async + @EventListener public void onApplicationEvent(ZLMOnlineEvent event) { logger.info("ZLM涓婄嚎浜嬩欢瑙﹀彂锛孖D锛�" + event.getMediaServerId()); @@ -43,4 +45,16 @@ streamProxyService.zlmServerOnline(event.getMediaServerId()); } + + @Async + @EventListener + public void onApplicationEvent(ZLMOfflineEvent event) { + + logger.info("ZLM绂荤嚎浜嬩欢瑙﹀彂锛孖D锛�" + event.getMediaServerId()); + // 澶勭悊ZLM绂荤嚎 + mediaServerService.zlmServerOffline(event.getMediaServerId()); + streamProxyService.zlmServerOffline(event.getMediaServerId()); + streamPushService.zlmServerOffline(event.getMediaServerId()); + // TODO 澶勭悊瀵瑰浗鏍囩殑褰卞搷 + } } -- Gitblit v1.8.0