From e886aa483373ccb85d964675b118ca9f0e27ee9c Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期三, 27 三月 2024 11:15:35 +0800
Subject: [PATCH] 修复PTZType导致声音开关失效的问题
---
src/main/java/com/genersoft/iot/vmp/media/zlm/ZlmHttpHookSubscribe.java | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZlmHttpHookSubscribe.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZlmHttpHookSubscribe.java
old mode 100644
new mode 100755
index 5cc2a66..5e46f55
--- a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZlmHttpHookSubscribe.java
+++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZlmHttpHookSubscribe.java
@@ -1,9 +1,10 @@
package com.genersoft.iot.vmp.media.zlm;
-import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson2.JSONObject;
import com.genersoft.iot.vmp.media.zlm.dto.HookType;
import com.genersoft.iot.vmp.media.zlm.dto.IHookSubscribe;
import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
+import com.genersoft.iot.vmp.media.zlm.dto.hook.HookParam;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.Scheduled;
@@ -26,7 +27,7 @@
@FunctionalInterface
public interface Event{
- void response(MediaServerItem mediaServerItem, JSONObject response);
+ void response(MediaServerItem mediaServerItem, HookParam hookParam);
}
private Map<HookType, Map<IHookSubscribe, ZlmHttpHookSubscribe.Event>> allSubscribes = new ConcurrentHashMap<>();
@@ -100,7 +101,10 @@
if (!CollectionUtils.isEmpty(entriesToRemove)) {
for (Map.Entry<IHookSubscribe, ZlmHttpHookSubscribe.Event> entry : entriesToRemove) {
- entries.remove(entry);
+ eventMap.remove(entry.getKey());
+ }
+ if (eventMap.size() == 0) {
+ allSubscribes.remove(hookSubscribe.getHookType());
}
}
@@ -136,9 +140,9 @@
/**
* 瀵硅闃呮暟鎹繘琛岃繃鏈熸竻鐞�
*/
- @Scheduled(cron="0 0/5 * * * ?") //姣�5鍒嗛挓鎵ц涓�娆�
+// @Scheduled(cron="0 0/5 * * * ?") //姣�5鍒嗛挓鎵ц涓�娆�
+ @Scheduled(fixedRate = 2 * 1000)
public void execute(){
-
Instant instant = Instant.now().minusMillis(TimeUnit.MINUTES.toMillis(5));
int total = 0;
for (HookType hookType : allSubscribes.keySet()) {
--
Gitblit v1.8.0