|
|
@@ -419,12 +419,12 @@ public class InviteRequestProcessor extends SIPRequestProcessorParent implements
|
|
|
}
|
|
|
}
|
|
|
} else if (gbStream != null) {
|
|
|
- if (streamPushItem != null && streamPushItem.isStatus()) {
|
|
|
- // 在线状态
|
|
|
+ if (streamPushItem != null && streamPushItem.isPushIng()) {
|
|
|
+ // 推流状态
|
|
|
pushStream(evt, gbStream, streamPushItem, platform, callIdHeader, mediaServerItem, port, tcpActive,
|
|
|
mediaTransmissionTCP, channelId, addressStr, ssrc, requesterId);
|
|
|
} else {
|
|
|
- // 不在线 拉起
|
|
|
+ // 未推流 拉起
|
|
|
notifyStreamOnline(evt, gbStream, streamPushItem, platform, callIdHeader, mediaServerItem, port, tcpActive,
|
|
|
mediaTransmissionTCP, channelId, addressStr, ssrc, requesterId);
|
|
|
}
|
|
|
@@ -451,7 +451,7 @@ public class InviteRequestProcessor extends SIPRequestProcessorParent implements
|
|
|
int port, Boolean tcpActive, boolean mediaTransmissionTCP,
|
|
|
String channelId, String addressStr, String ssrc, String requesterId) throws InvalidArgumentException, ParseException, SipException {
|
|
|
// 推流
|
|
|
- if (streamPushItem.getServerId().equals(userSetting.getServerId())) {
|
|
|
+ if (streamPushItem.isSelf()) {
|
|
|
Boolean streamReady = zlmrtpServerFactory.isStreamReady(mediaServerItem, gbStream.getApp(), gbStream.getStream());
|
|
|
if (streamReady) {
|
|
|
// 自平台内容
|
|
|
@@ -500,7 +500,7 @@ public class InviteRequestProcessor extends SIPRequestProcessorParent implements
|
|
|
String channelId, String addressStr, String ssrc, String requesterId) throws InvalidArgumentException, ParseException, SipException {
|
|
|
if ("proxy".equals(gbStream.getStreamType())) {
|
|
|
// TODO 控制启用以使设备上线
|
|
|
- logger.info("[ app={}, stream={} ]通道离线,启用流后开始推流", gbStream.getApp(), gbStream.getStream());
|
|
|
+ logger.info("[ app={}, stream={} ]通道未推流,启用流后开始推流", gbStream.getApp(), gbStream.getStream());
|
|
|
responseAck(evt, Response.BAD_REQUEST, "channel [" + gbStream.getGbId() + "] offline");
|
|
|
} else if ("push".equals(gbStream.getStreamType())) {
|
|
|
if (!platform.isStartOfflinePush()) {
|
|
|
@@ -508,7 +508,7 @@ public class InviteRequestProcessor extends SIPRequestProcessorParent implements
|
|
|
return;
|
|
|
}
|
|
|
// 发送redis消息以使设备上线
|
|
|
- logger.info("[ app={}, stream={} ]通道离线,发送redis信息控制设备开始推流", gbStream.getApp(), gbStream.getStream());
|
|
|
+ logger.info("[ app={}, stream={} ]通道未推流,发送redis信息控制设备开始推流", gbStream.getApp(), gbStream.getStream());
|
|
|
|
|
|
MessageForPushChannel messageForPushChannel = MessageForPushChannel.getInstance(1,
|
|
|
gbStream.getApp(), gbStream.getStream(), gbStream.getGbId(), gbStream.getPlatformId(),
|
|
|
@@ -518,7 +518,7 @@ public class InviteRequestProcessor extends SIPRequestProcessorParent implements
|
|
|
dynamicTask.startDelay(callIdHeader.getCallId(), () -> {
|
|
|
logger.info("[ app={}, stream={} ] 等待设备开始推流超时", gbStream.getApp(), gbStream.getStream());
|
|
|
try {
|
|
|
- mediaListManager.removedChannelOnlineEventLister(gbStream.getGbId());
|
|
|
+ mediaListManager.removedChannelOnlineEventLister(gbStream.getApp(), gbStream.getStream());
|
|
|
responseAck(evt, Response.REQUEST_TIMEOUT); // 超时
|
|
|
} catch (SipException e) {
|
|
|
e.printStackTrace();
|
|
|
@@ -533,7 +533,7 @@ public class InviteRequestProcessor extends SIPRequestProcessorParent implements
|
|
|
Boolean finalTcpActive = tcpActive;
|
|
|
|
|
|
// 添加在本机上线的通知
|
|
|
- mediaListManager.addChannelOnlineEventLister(gbStream.getGbId(), (app, stream, serverId) -> {
|
|
|
+ mediaListManager.addChannelOnlineEventLister(gbStream.getApp(), gbStream.getStream(), (app, stream, serverId) -> {
|
|
|
dynamicTask.stop(callIdHeader.getCallId());
|
|
|
if (serverId.equals(userSetting.getServerId())) {
|
|
|
SendRtpItem sendRtpItem = zlmrtpServerFactory.createSendRtpItem(mediaServerItem, addressStr, finalPort, ssrc, requesterId,
|
|
|
@@ -621,7 +621,7 @@ public class InviteRequestProcessor extends SIPRequestProcessorParent implements
|
|
|
// 离线
|
|
|
// 查询是否在本机上线了
|
|
|
StreamPushItem currentStreamPushItem = streamPushService.getPush(streamPushItem.getApp(), streamPushItem.getStream());
|
|
|
- if (currentStreamPushItem.isStatus()) {
|
|
|
+ if (currentStreamPushItem.isPushIng()) {
|
|
|
// 在线状态
|
|
|
pushStream(evt, gbStream, streamPushItem, platform, callIdHeader, mediaServerItem, port, tcpActive,
|
|
|
mediaTransmissionTCP, channelId, addressStr, ssrc, requesterId);
|