From 3b5a37c270e5b6649b9a168ee753c2b3353a257a Mon Sep 17 00:00:00 2001
From: zouyaoji <370681295@qq.com>
Date: 星期六, 06 八月 2022 11:27:02 +0800
Subject: [PATCH] 前端显示媒体服务器配置时报错修复
---
src/main/java/com/genersoft/iot/vmp/gb28181/task/impl/MobilePositionSubscribeHandlerTask.java | 47 +++++++++++++++++++++++++----------------------
1 files changed, 25 insertions(+), 22 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/task/impl/MobilePositionSubscribeHandlerTask.java b/src/main/java/com/genersoft/iot/vmp/gb28181/task/impl/MobilePositionSubscribeHandlerTask.java
index 569a9b7..7edee4d 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/task/impl/MobilePositionSubscribeHandlerTask.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/task/impl/MobilePositionSubscribeHandlerTask.java
@@ -1,5 +1,6 @@
package com.genersoft.iot.vmp.gb28181.task.impl;
+import com.genersoft.iot.vmp.conf.DynamicTask;
import com.genersoft.iot.vmp.gb28181.bean.*;
import com.genersoft.iot.vmp.gb28181.task.ISubscribeTask;
import com.genersoft.iot.vmp.gb28181.transmit.cmd.ISIPCommanderForPlatform;
@@ -15,6 +16,7 @@
/**
* 鍚戝凡缁忚闃�(绉诲姩浣嶇疆)鐨勪笂绾у彂閫丮obilePosition娑堟伅
+ * @author lin
*/
public class MobilePositionSubscribeHandlerTask implements ISubscribeTask {
@@ -24,56 +26,57 @@
private IVideoManagerStorage storager;
private ISIPCommanderForPlatform sipCommanderForPlatform;
private SubscribeHolder subscribeHolder;
- private String platformId;
+ private ParentPlatform platform;
+
private String sn;
private String key;
- public MobilePositionSubscribeHandlerTask(IRedisCatchStorage redisCatchStorage, ISIPCommanderForPlatform sipCommanderForPlatform, IVideoManagerStorage storager, String platformId, String sn, String key, SubscribeHolder subscribeInfo) {
+ public MobilePositionSubscribeHandlerTask(IRedisCatchStorage redisCatchStorage,
+ ISIPCommanderForPlatform sipCommanderForPlatform,
+ IVideoManagerStorage storager,
+ String platformId,
+ String sn,
+ String key,
+ SubscribeHolder subscribeInfo,
+ DynamicTask dynamicTask) {
this.redisCatchStorage = redisCatchStorage;
this.storager = storager;
- this.platformId = platformId;
+ this.platform = storager.queryParentPlatByServerGBId(platformId);
this.sn = sn;
this.key = key;
this.sipCommanderForPlatform = sipCommanderForPlatform;
this.subscribeHolder = subscribeInfo;
}
- @Async
@Override
public void run() {
- logger.info("鎵цMobilePositionSubscribeHandlerTask");
- SubscribeInfo subscribe = subscribeHolder.getMobilePositionSubscribe(platformId);
+ if (platform == null) {
+ return;
+ }
+ SubscribeInfo subscribe = subscribeHolder.getMobilePositionSubscribe(platform.getServerGBId());
if (subscribe != null) {
- ParentPlatform parentPlatform = storager.queryParentPlatByServerGBId(platformId);
- if (parentPlatform == null ) {
- logger.info("鍙戦�佽闃呮椂鏈壘鍒板钩鍙颁俊鎭細{}", platformId);
- return;
- }
- if (!parentPlatform.isStatus()) {
- logger.info("鍙戦�佽闃呮椂鍙戠幇骞冲彴宸茬粡绂荤嚎锛歿}", platformId);
- return;
- }
+
// TODO 鏆傛椂鍙鐞嗚棰戞祦鐨勫洖澶�,鍚庣画澧炲姞瀵瑰浗鏍囪澶囩殑鏀寔
- List<GbStream> gbStreams = storager.queryGbStreamListInPlatform(platformId);
+ List<DeviceChannel> gbStreams = storager.queryGbStreamListInPlatform(platform.getServerGBId());
if (gbStreams.size() == 0) {
- logger.info("鍙戦�佽闃呮椂鍙戠幇骞冲彴宸茬粡娌℃湁鍏宠仈鐨勭洿鎾祦锛歿}", platformId);
+ logger.info("鍙戦�佽闃呮椂鍙戠幇骞冲彴宸茬粡娌℃湁鍏宠仈鐨勭洿鎾祦锛歿}", platform.getServerGBId());
return;
}
- for (GbStream gbStream : gbStreams) {
- String gbId = gbStream.getGbId();
+ for (DeviceChannel deviceChannel : gbStreams) {
+ String gbId = deviceChannel.getChannelId();
GPSMsgInfo gpsMsgInfo = redisCatchStorage.getGpsMsgInfo(gbId);
- if (gpsMsgInfo != null) { // 鏃犳渶鏂颁綅缃笉鍙戦��
+ // 鏃犳渶鏂颁綅缃笉鍙戦��
+ if (gpsMsgInfo != null) {
// 缁忕含搴﹂兘涓�0涓嶅彂閫�
if (gpsMsgInfo.getLng() == 0 && gpsMsgInfo.getLat() == 0) {
continue;
}
// 鍙戦�丟PS娑堟伅
- sipCommanderForPlatform.sendNotifyMobilePosition(parentPlatform, gpsMsgInfo, subscribe);
+ sipCommanderForPlatform.sendNotifyMobilePosition(platform, gpsMsgInfo, subscribe);
}
}
}
- logger.info("缁撴潫鎵цMobilePositionSubscribeHandlerTask");
}
@Override
--
Gitblit v1.8.0