From a5f1422466deaaa6a0c41f2d224bbbae8afa67ac Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: Fri, 27 Dec 2024 11:18:29 +0800 Subject: [PATCH] =?UTF-8?q?[WVP=E9=9B=86=E7=BE=A4]=20=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E4=B8=BB=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DeviceChannelServiceImpl.java | 8 +++++++- .../service/impl/GbChannelPlayServiceImpl.java | 11 +++++------ .../gb28181/service/impl/GbChannelServiceImpl.java | 7 +++---- .../service/impl/PlatformChannelServiceImpl.java | 1 - .../iot/vmp/gb28181/service/impl/PlayServiceImpl.java | 2 +- 5 files changed, 16 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/DeviceChannelServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/DeviceChannelServiceImpl.java index 7e8bca45..fcf458f5 100755 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/DeviceChannelServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/DeviceChannelServiceImpl.java @@ -771,7 +771,13 @@ public class DeviceChannelServiceImpl implements IDeviceChannelService { @Override public void queryRecordInfo(CommonGBChannel channel, String startTime, String endTime, ErrorCallback callback) { - Device device = deviceMapper.query(channel.getGbDeviceDbId()); + if (channel.getDataType() != ChannelDataType.GB28181.value){ + // 只支持国标的语音喊话 + log.warn("[INFO 消息] 非国标设备, 通道ID: {}", channel.getGbId()); + callback.run(ErrorCode.ERROR100.getCode(), "非国标设备", null); + return; + } + Device device = deviceMapper.query(channel.getDataDeviceId()); if (device == null) { log.warn("[点播] 未找到通道{}的设备信息", channel); callback.run(ErrorCode.ERROR100.getCode(), "设备不存在", null); diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelPlayServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelPlayServiceImpl.java index e2b5f297..8c353ab4 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelPlayServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelPlayServiceImpl.java @@ -6,7 +6,6 @@ import com.genersoft.iot.vmp.conf.exception.ServiceException; import com.genersoft.iot.vmp.gb28181.bean.*; import com.genersoft.iot.vmp.common.enums.ChannelDataType; import com.genersoft.iot.vmp.gb28181.bean.CommonGBChannel; -import com.genersoft.iot.vmp.gb28181.bean.InviteInfo; import com.genersoft.iot.vmp.gb28181.bean.Platform; import com.genersoft.iot.vmp.gb28181.bean.PlayException; import com.genersoft.iot.vmp.gb28181.service.IGbChannelPlayService; @@ -97,13 +96,13 @@ public class GbChannelPlayServiceImpl implements IGbChannelPlayService { @Override public void stopPlay(InviteSessionType type, CommonGBChannel channel, String stream) { - if (channel.getGbDeviceDbId() != null) { + if (channel.getDataType() == ChannelDataType.GB28181.value) { // 国标通道 stopPlayDeviceChannel(type, channel, stream); - } else if (channel.getStreamProxyId() != null) { + } else if (channel.getDataType() == ChannelDataType.STREAM_PROXY.value) { // 拉流代理 stopPlayProxy(channel); - } else if (channel.getStreamPushId() != null) { + } else if (channel.getDataType() == ChannelDataType.STREAM_PUSH.value) { // 推流 stopPlayPush(channel); } else { @@ -178,7 +177,7 @@ public class GbChannelPlayServiceImpl implements IGbChannelPlayService { public void stopPlayProxy(CommonGBChannel channel) { // 拉流代理通道 try { - streamProxyPlayService.stop(channel.getStreamProxyId()); + streamProxyPlayService.stop(channel.getDataDeviceId()); }catch (Exception e) { log.error("[停止点播失败] {}({})", channel.getGbName(), channel.getGbDeviceId(), e); } @@ -201,7 +200,7 @@ public class GbChannelPlayServiceImpl implements IGbChannelPlayService { public void stopPlayPush(CommonGBChannel channel) { // 推流 try { - streamPushPlayService.stop(channel.getStreamPushId()); + streamPushPlayService.stop(channel.getDataDeviceId()); }catch (Exception e) { log.error("[停止点播失败] {}({})", channel.getGbName(), channel.getGbDeviceId(), e); } diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelServiceImpl.java index 9707ea32..2090d734 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelServiceImpl.java @@ -734,14 +734,13 @@ public class GbChannelServiceImpl implements IGbChannelService { @Override public void queryRecordInfo(CommonGBChannel channel, String startTime, String endTime, ErrorCallback callback) { - if (channel.getGbDeviceDbId() != null) { - + if (channel.getDataType() == ChannelDataType.GB28181.value) { deviceChannelService.queryRecordInfo(channel, startTime, endTime, callback); - } else if (channel.getStreamProxyId() != null) { + } else if (channel.getDataType() == ChannelDataType.STREAM_PROXY.value) { // 拉流代理 log.warn("[下载通用通道录像] 不支持下载拉流代理的录像: {}({})", channel.getGbName(), channel.getGbDeviceId()); throw new PlayException(Response.FORBIDDEN, "forbidden"); - } else if (channel.getStreamPushId() != null) { + } else if (channel.getDataType() == ChannelDataType.STREAM_PUSH.value) { // 推流 log.warn("[下载通用通道录像] 不支持下载推流的录像: {}({})", channel.getGbName(), channel.getGbDeviceId()); throw new PlayException(Response.FORBIDDEN, "forbidden"); diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlatformChannelServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlatformChannelServiceImpl.java index 67aff06c..445da78a 100755 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlatformChannelServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlatformChannelServiceImpl.java @@ -1,6 +1,5 @@ package com.genersoft.iot.vmp.gb28181.service.impl; -import com.baomidou.dynamic.datasource.annotation.DS; import com.genersoft.iot.vmp.common.enums.ChannelDataType; import com.genersoft.iot.vmp.gb28181.bean.*; import com.genersoft.iot.vmp.gb28181.dao.*; diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlayServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlayServiceImpl.java index 13449c78..02959975 100755 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlayServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/PlayServiceImpl.java @@ -1707,7 +1707,7 @@ public class PlayServiceImpl implements IPlayService { @Override public void stop(InviteSessionType inviteSessionType, CommonGBChannel channel, String stream) { - Device device = deviceService.getDevice(channel.getGbDeviceDbId()); + Device device = deviceService.getDevice(channel.getDataDeviceId()); if (device == null) { log.warn("[停止播放] 未找到通道{}的设备信息", channel); throw new PlayException(Response.SERVER_INTERNAL_ERROR, "server internal error");