修复集群播放BUG
This commit is contained in:
@@ -91,7 +91,7 @@ public interface StreamPushMapper {
|
||||
"(#{item.app}, #{item.stream}) " +
|
||||
"</foreach>" +
|
||||
")</script>")
|
||||
List<StreamPush> getListFromRedis(List<StreamPushItemFromRedis> offlineStreams);
|
||||
List<StreamPush> getListInList(List<StreamPushItemFromRedis> offlineStreams);
|
||||
|
||||
|
||||
@Select("SELECT CONCAT(app,stream) from wvp_stream_push")
|
||||
|
||||
@@ -58,7 +58,7 @@ public class StreamPushPlayServiceImpl implements IStreamPushPlayService {
|
||||
Assert.notNull(streamPush, "推流信息未找到");
|
||||
|
||||
if (streamPush.isPushing() && !userSetting.getServerId().equals(streamPush.getServerId())) {
|
||||
redisRpcPlayService.playPush(id, callback);
|
||||
redisRpcPlayService.playPush(streamPush.getServerId(), id, callback);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -458,16 +458,27 @@ public class StreamPushServiceImpl implements IStreamPushService {
|
||||
@Override
|
||||
public void offline(List<StreamPushItemFromRedis> offlineStreams) {
|
||||
// 更新部分设备离线
|
||||
List<StreamPush> streamPushList = streamPushMapper.getListFromRedis(offlineStreams);
|
||||
List<StreamPush> streamPushList = streamPushMapper.getListInList(offlineStreams);
|
||||
if (streamPushList.isEmpty()) {
|
||||
log.info("[推流设备] 设备离线操作未发现可操作数据。");
|
||||
return;
|
||||
}
|
||||
List<CommonGBChannel> commonGBChannelList = gbChannelService.queryListByStreamPushList(streamPushList);
|
||||
gbChannelService.offline(commonGBChannelList);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void online(List<StreamPushItemFromRedis> onlineStreams) {
|
||||
if (onlineStreams.isEmpty()) {
|
||||
log.info("[设备上线] 推流设备列表为空");
|
||||
return;
|
||||
}
|
||||
// 更新部分设备上线streamPushService
|
||||
List<StreamPush> streamPushList = streamPushMapper.getListFromRedis(onlineStreams);
|
||||
List<StreamPush> streamPushList = streamPushMapper.getListInList(onlineStreams);
|
||||
if (streamPushList.isEmpty()) {
|
||||
for (StreamPushItemFromRedis onlineStream : onlineStreams) {
|
||||
log.info("[设备上线] 未查询到这些通道: {}/{}", onlineStream.getApp(), onlineStream.getStream());
|
||||
}
|
||||
return;
|
||||
}
|
||||
List<CommonGBChannel> commonGBChannelList = gbChannelService.queryListByStreamPushList(streamPushList);
|
||||
|
||||
Reference in New Issue
Block a user