From a000ed60625ef647d66a186a05bf5bed0e4de127 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期一, 20 三月 2023 14:20:28 +0800
Subject: [PATCH] 完善talk模式
---
src/main/java/com/genersoft/iot/vmp/storager/impl/RedisCatchStorageImpl.java | 29 ++++++++++++++++-------------
1 files changed, 16 insertions(+), 13 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/impl/RedisCatchStorageImpl.java b/src/main/java/com/genersoft/iot/vmp/storager/impl/RedisCatchStorageImpl.java
index 8cf5293..92f28a1 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/impl/RedisCatchStorageImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/impl/RedisCatchStorageImpl.java
@@ -17,6 +17,7 @@
import com.genersoft.iot.vmp.storager.dao.DeviceChannelMapper;
import com.genersoft.iot.vmp.storager.dao.dto.PlatformRegisterInfo;
import com.genersoft.iot.vmp.utils.DateUtil;
+import com.genersoft.iot.vmp.utils.JsonUtil;
import com.genersoft.iot.vmp.utils.SystemInfoUtils;
import com.genersoft.iot.vmp.utils.redis.RedisUtil;
import org.slf4j.Logger;
@@ -157,7 +158,10 @@
}
for (Object player : players) {
String key = (String) player;
- StreamInfo streamInfo = (StreamInfo) RedisUtil.get(key);
+ StreamInfo streamInfo = JsonUtil.redisJsonToObject(key, StreamInfo.class);
+ if (Objects.isNull(streamInfo)) {
+ continue;
+ }
streamInfos.put(streamInfo.getDeviceID() + "_" + streamInfo.getChannelId(), streamInfo);
}
return streamInfos;
@@ -374,7 +378,7 @@
+ sendRtpItem.getMediaServerId() + "_"
+ sendRtpItem.getPlatformId() + "_"
+ sendRtpItem.getChannelId() + "_"
- + sendRtpItem.getStreamId() + "_"
+ + sendRtpItem.getStream() + "_"
+ sendRtpItem.getCallId();
RedisUtil.set(key, sendRtpItem);
}
@@ -624,8 +628,7 @@
@Override
public ThirdPartyGB queryMemberNoGBId(String queryKey) {
String key = VideoManagerConstants.WVP_STREAM_GB_ID_PREFIX + queryKey;
- JSONObject jsonObject = (JSONObject)RedisUtil.get(key);
- return jsonObject.to(ThirdPartyGB.class);
+ return JsonUtil.redisJsonToObject(key, ThirdPartyGB.class);
}
@Override
@@ -664,7 +667,7 @@
@Override
public Device getDevice(String deviceId) {
String key = VideoManagerConstants.DEVICE_PREFIX + userSetting.getServerId() + "_" + deviceId;
- return (Device)RedisUtil.get(key);
+ return JsonUtil.redisJsonToObject(key, Device.class);
}
@Override
@@ -676,7 +679,7 @@
@Override
public GPSMsgInfo getGpsMsgInfo(String gbId) {
String key = VideoManagerConstants.WVP_STREAM_GPS_MSG_PREFIX + userSetting.getServerId() + "_" + gbId;
- return (GPSMsgInfo)RedisUtil.get(key);
+ return JsonUtil.redisJsonToObject(key, GPSMsgInfo.class);
}
@Override
@@ -686,9 +689,9 @@
List<Object> keys = RedisUtil.scan(scanKey);
for (Object o : keys) {
String key = (String) o;
- GPSMsgInfo gpsMsgInfo = (GPSMsgInfo) RedisUtil.get(key);
- if (!gpsMsgInfo.isStored()) { // 鍙彇娌℃湁瀛樿繃寰�
- result.add((GPSMsgInfo) RedisUtil.get(key));
+ GPSMsgInfo gpsMsgInfo = JsonUtil.redisJsonToObject(key, GPSMsgInfo.class);
+ if (Objects.nonNull(gpsMsgInfo) && !gpsMsgInfo.isStored()) { // 鍙彇娌℃湁瀛樿繃寰�
+ result.add(JsonUtil.redisJsonToObject(key, GPSMsgInfo.class));
}
}
@@ -710,7 +713,7 @@
@Override
public StreamAuthorityInfo getStreamAuthorityInfo(String app, String stream) {
String key = VideoManagerConstants.MEDIA_STREAM_AUTHORITY + userSetting.getServerId() + "_" + app+ "_" + stream ;
- return (StreamAuthorityInfo) RedisUtil.get(key);
+ return JsonUtil.redisJsonToObject(key, StreamAuthorityInfo.class);
}
@@ -721,7 +724,7 @@
List<Object> keys = RedisUtil.scan(scanKey);
for (Object o : keys) {
String key = (String) o;
- result.add((StreamAuthorityInfo) RedisUtil.get(key));
+ result.add(JsonUtil.redisJsonToObject(key, StreamAuthorityInfo.class));
}
return result;
}
@@ -735,7 +738,7 @@
List<Object> keys = RedisUtil.scan(scanKey);
if (keys.size() > 0) {
String key = (String) keys.get(0);
- result = (OnStreamChangedHookParam)RedisUtil.get(key);
+ result = JsonUtil.redisJsonToObject(key, OnStreamChangedHookParam.class);
}
return result;
@@ -827,7 +830,7 @@
@Override
public void sendAlarmMsg(AlarmChannelMessage msg) {
- String key = VideoManagerConstants.VM_MSG_SUBSCRIBE_ALARM;
+ String key = VideoManagerConstants.VM_MSG_SUBSCRIBE_ALARM_RECEIVE;
logger.info("[redis鍙戦�侀�氱煡] 鎶ヨ{}: {}", key, JSON.toJSON(msg));
RedisUtil.convertAndSend(key, (JSONObject)JSON.toJSON(msg));
}
--
Gitblit v1.8.0