|
|
@@ -85,7 +85,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
try {
|
|
|
// 发送通知
|
|
|
eventPublisher.catalogEventPublish(null, channel, CatalogEvent.DEL);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[通道移除通知] 发送失败,{}", channel.getGbDeviceId(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -102,7 +102,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
try {
|
|
|
// 发送通知
|
|
|
eventPublisher.catalogEventPublish(null, channelListInDb, CatalogEvent.DEL);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[通道移除通知] 发送失败,{}条", channelListInDb.size(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -120,7 +120,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
try {
|
|
|
// 发送通知
|
|
|
eventPublisher.catalogEventPublish(null, commonGBChannel, CatalogEvent.UPDATE);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[更新通道通知] 发送失败,{}", commonGBChannel.getGbDeviceId(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -138,7 +138,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
try {
|
|
|
// 发送通知
|
|
|
eventPublisher.catalogEventPublish(null, commonGBChannel, CatalogEvent.OFF);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[通道离线通知] 发送失败,{}", commonGBChannel.getGbDeviceId(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -167,14 +167,14 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
}
|
|
|
result += commonGBChannelMapper.updateStatusForListById(onlineChannelList.subList(i, toIndex), 0);
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
result += commonGBChannelMapper.updateStatusForListById(onlineChannelList, 0);
|
|
|
}
|
|
|
if (result > 0) {
|
|
|
try {
|
|
|
// 发送catalog
|
|
|
eventPublisher.catalogEventPublish(null, onlineChannelList, CatalogEvent.OFF);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[多个通道离线] 发送失败,数量:{}", onlineChannelList.size(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -192,7 +192,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
try {
|
|
|
// 发送通知
|
|
|
eventPublisher.catalogEventPublish(null, commonGBChannel, CatalogEvent.ON);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[通道上线通知] 发送失败,{}", commonGBChannel.getGbDeviceId(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -222,14 +222,14 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
}
|
|
|
result += commonGBChannelMapper.updateStatusForListById(offlineChannelList.subList(i, toIndex), 1);
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
result += commonGBChannelMapper.updateStatusForListById(offlineChannelList, 1);
|
|
|
}
|
|
|
if (result > 0) {
|
|
|
try {
|
|
|
// 发送catalog
|
|
|
eventPublisher.catalogEventPublish(null, offlineChannelList, CatalogEvent.ON);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[多个通道上线] 发送失败,数量:{}", offlineChannelList.size(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -255,7 +255,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
}
|
|
|
result += commonGBChannelMapper.batchAdd(commonGBChannels.subList(i, toIndex));
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
result += commonGBChannelMapper.batchAdd(commonGBChannels);
|
|
|
}
|
|
|
log.warn("[新增多个通道] 通道数量为{},成功保存:{}", commonGBChannels.size(), result);
|
|
|
@@ -278,7 +278,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
}
|
|
|
result += commonGBChannelMapper.batchUpdate(commonGBChannels.subList(i, toIndex));
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
result += commonGBChannelMapper.batchUpdate(commonGBChannels);
|
|
|
}
|
|
|
log.warn("[更新多个通道] 通道数量为{},成功保存:{}", commonGBChannels.size(), result);
|
|
|
@@ -286,7 +286,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
try {
|
|
|
// 发送通知
|
|
|
eventPublisher.catalogEventPublish(null, commonGBChannels, CatalogEvent.UPDATE);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[更新多个通道] 发送失败,{}个", commonGBChannels.size(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -308,7 +308,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
}
|
|
|
result += commonGBChannelMapper.updateStatus(commonGBChannels.subList(i, toIndex));
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
result += commonGBChannelMapper.updateStatus(commonGBChannels);
|
|
|
}
|
|
|
log.warn("[更新多个通道状态] 通道数量为{},成功保存:{}", commonGBChannels.size(), result);
|
|
|
@@ -316,7 +316,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
try {
|
|
|
// 发送通知
|
|
|
eventPublisher.catalogEventPublish(null, commonGBChannels, CatalogEvent.UPDATE);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[更新多个通道] 发送失败,{}个", commonGBChannels.size(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -398,7 +398,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
public void reset(int id) {
|
|
|
log.info("[重置国标通道] id: {}", id);
|
|
|
CommonGBChannel channel = getOne(id);
|
|
|
- if (channel == null ) {
|
|
|
+ if (channel == null) {
|
|
|
log.warn("[重置国标通道] 未找到对应Id的通道: id: {}", id);
|
|
|
throw new ControllerException(ErrorCode.ERROR400);
|
|
|
}
|
|
|
@@ -440,7 +440,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
try {
|
|
|
// 发送catalog
|
|
|
eventPublisher.catalogEventPublish(null, channelList, CatalogEvent.UPDATE);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[多个通道添加行政区划] 发送失败,数量:{}", channelList.size(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -508,7 +508,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
try {
|
|
|
// 发送catalog
|
|
|
eventPublisher.catalogEventPublish(null, channelList, CatalogEvent.UPDATE);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[多个通道添加行政区划] 发送失败,数量:{}", channelList.size(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -555,7 +555,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
// 发送catalog
|
|
|
try {
|
|
|
eventPublisher.catalogEventPublish(null, channelList, CatalogEvent.UPDATE);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[多个通道业务分组] 发送失败,数量:{}", channelList.size(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -576,7 +576,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
// 发送catalog
|
|
|
try {
|
|
|
eventPublisher.catalogEventPublish(null, channelList, CatalogEvent.UPDATE);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[多个通道业务分组] 发送失败,数量:{}", channelList.size(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -598,7 +598,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
try {
|
|
|
// 发送catalog
|
|
|
eventPublisher.catalogEventPublish(null, channelList, CatalogEvent.UPDATE);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[多个通道添加行政区划] 发送失败,数量:{}", channelList.size(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -633,7 +633,7 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
try {
|
|
|
// 发送catalog
|
|
|
eventPublisher.catalogEventPublish(null, channelList, CatalogEvent.UPDATE);
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
log.warn("[多个通道添加行政区划] 发送失败,数量:{}", channelList.size(), e);
|
|
|
}
|
|
|
}
|
|
|
@@ -654,34 +654,46 @@ public class GbChannelServiceImpl implements IGbChannelService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void start(CommonGBChannel channel, ErrorCallback<CommonChannelPlayInfo> callback) {
|
|
|
- log.info("[点播通用通道] 通道: {}({})", channel.getGbName(), channel.getGbDeviceId());
|
|
|
- if (channel.getGbDeviceDbId() > 0) {
|
|
|
- // 国标通道
|
|
|
- Device device = deviceService.getDevice(channel.getGbDeviceDbId());
|
|
|
- if (device == null) {
|
|
|
- log.warn("[点播] 未找到通道{}的设备信息", channel);
|
|
|
- throw new PlayException(Response.SERVER_INTERNAL_ERROR, "server internal error");
|
|
|
- }
|
|
|
- MediaServer mediaServer = playService.getNewMediaServerItem(device);
|
|
|
- if (mediaServer == null) {
|
|
|
- log.warn("[点播] 未找到可用媒体节点");
|
|
|
+ public void start(CommonGBChannel channel, InviteInfo inviteInfo, ErrorCallback<CommonChannelPlayInfo> callback) {
|
|
|
+ if (channel == null || inviteInfo == null || callback == null) {
|
|
|
+ log.warn("[通用通道点播] 参数异常, channel: {}, inviteInfo: {}, callback: {}", channel != null, inviteInfo != null, callback != null);
|
|
|
+ throw new PlayException(Response.SERVER_INTERNAL_ERROR, "server internal error");
|
|
|
+ }
|
|
|
+ log.info("[点播通用通道] 类型:{}, 通道: {}({})", inviteInfo.getSessionName(), channel.getGbName(), channel.getGbDeviceId());
|
|
|
+ if ("Play".equalsIgnoreCase(inviteInfo.getSessionName())) {
|
|
|
+ if (channel.getGbDeviceDbId() > 0) {
|
|
|
+ // 国标通道
|
|
|
+ Device device = deviceService.getDevice(channel.getGbDeviceDbId());
|
|
|
+ if (device == null) {
|
|
|
+ log.warn("[点播] 未找到通道{}的设备信息", channel);
|
|
|
+ throw new PlayException(Response.SERVER_INTERNAL_ERROR, "server internal error");
|
|
|
+ }
|
|
|
+ MediaServer mediaServer = playService.getNewMediaServerItem(device);
|
|
|
+ if (mediaServer == null) {
|
|
|
+ log.warn("[点播] 未找到可用媒体节点");
|
|
|
+ throw new PlayException(Response.SERVER_INTERNAL_ERROR, "server internal error");
|
|
|
+ }
|
|
|
+
|
|
|
+ playService.play(mediaServer, device.getDeviceId(), channel.getGbDeviceId(), null, (code, msg, data) -> {
|
|
|
+ if (callback != null) {
|
|
|
+ callback.run(code, msg, CommonChannelPlayInfo.build(mediaServer, data));
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else if (channel.getStreamProxyId() > 0) {
|
|
|
+ // 拉流代理
|
|
|
+ } else if (channel.getStreamPushId() > 0) {
|
|
|
+ // 推流
|
|
|
+ } else {
|
|
|
+ // 通道数据异常
|
|
|
+ log.error("[点播通用通道] 通道数据异常,无法识别通道来源: {}({})", channel.getGbName(), channel.getGbDeviceId());
|
|
|
throw new PlayException(Response.SERVER_INTERNAL_ERROR, "server internal error");
|
|
|
}
|
|
|
+ }else if ("Playback".equals(inviteInfo.getSessionName())) {
|
|
|
+
|
|
|
+ }else if ("Download".equals(inviteInfo.getSessionName())) {
|
|
|
|
|
|
- playService.play(mediaServer, device.getDeviceId(), channel.getGbDeviceId(), null, (code, msg, data) -> {
|
|
|
- if (callback != null) {
|
|
|
- callback.run(code, msg, CommonChannelPlayInfo.build(mediaServer, data));
|
|
|
- }
|
|
|
- });
|
|
|
- }else if (channel.getStreamProxyId() > 0){
|
|
|
- // 拉流代理
|
|
|
- }else if (channel.getStreamPushId() > 0) {
|
|
|
- // 推流
|
|
|
}else {
|
|
|
- // 通道数据异常
|
|
|
- log.error("[点播通用通道] 通道数据异常,无法识别通道来源: {}({})", channel.getGbName(), channel.getGbDeviceId());
|
|
|
- throw new PlayException(Response.SERVER_INTERNAL_ERROR, "server internal error");
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
}
|