| | |
| | | import com.genersoft.iot.vmp.media.event.media.MediaDepartureEvent; |
| | | import com.genersoft.iot.vmp.media.event.media.MediaEvent; |
| | | import com.genersoft.iot.vmp.media.event.media.MediaPublishEvent; |
| | | import org.mybatis.logging.Logger; |
| | | import org.mybatis.logging.LoggerFactory; |
| | | import org.springframework.context.event.EventListener; |
| | | import org.springframework.scheduling.annotation.Async; |
| | | import org.springframework.scheduling.annotation.Scheduled; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import java.time.Instant; |
| | | import java.util.Map; |
| | | import java.util.concurrent.ConcurrentHashMap; |
| | | |
| | |
| | | /** |
| | | * 订阅数据过期时间 |
| | | */ |
| | | private final long subscribeExpire = 5 * 1000; |
| | | private final long subscribeExpire = 5 * 60 * 1000; |
| | | |
| | | @FunctionalInterface |
| | | public interface Event{ |
| | |
| | | @Async("taskExecutor") |
| | | @EventListener |
| | | public void onApplicationEvent(MediaArrivalEvent event) { |
| | | if ("rtsp".equals(event.getSchema())) { |
| | | System.out.println("流到来的处理: " + allSubscribes.size()); |
| | | if (event.getSchema() == null || "rtsp".equals(event.getSchema())) { |
| | | sendNotify(HookType.on_media_arrival, event); |
| | | } |
| | | |
| | |
| | | @Async("taskExecutor") |
| | | @EventListener |
| | | public void onApplicationEvent(MediaDepartureEvent event) { |
| | | if ("rtsp".equals(event.getSchema())) { |
| | | if (event.getSchema() == null || "rtsp".equals(event.getSchema())) { |
| | | sendNotify(HookType.on_media_departure, event); |
| | | } |
| | | |