优化推流通知
This commit is contained in:
@@ -305,4 +305,33 @@ public class SendRtpItem {
|
||||
public void setReceiveStream(String receiveStream) {
|
||||
this.receiveStream = receiveStream;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "SendRtpItem{" +
|
||||
"ip='" + ip + '\'' +
|
||||
", port=" + port +
|
||||
", ssrc='" + ssrc + '\'' +
|
||||
", platformId='" + platformId + '\'' +
|
||||
", deviceId='" + deviceId + '\'' +
|
||||
", app='" + app + '\'' +
|
||||
", channelId='" + channelId + '\'' +
|
||||
", status=" + status +
|
||||
", stream='" + stream + '\'' +
|
||||
", tcp=" + tcp +
|
||||
", tcpActive=" + tcpActive +
|
||||
", localPort=" + localPort +
|
||||
", mediaServerId='" + mediaServerId + '\'' +
|
||||
", serverId='" + serverId + '\'' +
|
||||
", CallId='" + CallId + '\'' +
|
||||
", fromTag='" + fromTag + '\'' +
|
||||
", toTag='" + toTag + '\'' +
|
||||
", pt=" + pt +
|
||||
", usePs=" + usePs +
|
||||
", onlyAudio=" + onlyAudio +
|
||||
", rtcp=" + rtcp +
|
||||
", playType=" + playType +
|
||||
", receiveStream='" + receiveStream + '\'' +
|
||||
'}';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -116,7 +116,7 @@ public class AckRequestProcessor extends SIPRequestProcessorParent implements In
|
||||
|
||||
if (parentPlatform != null) {
|
||||
Map<String, Object> param = getSendRtpParam(sendRtpItem);
|
||||
if (mediaInfo == null) {
|
||||
if (!userSetting.getServerId().equals(sendRtpItem.getServerId())) {
|
||||
RequestPushStreamMsg requestPushStreamMsg = RequestPushStreamMsg.getInstance(
|
||||
sendRtpItem.getMediaServerId(), sendRtpItem.getApp(), sendRtpItem.getStream(),
|
||||
sendRtpItem.getIp(), sendRtpItem.getPort(), sendRtpItem.getSsrc(), sendRtpItem.isTcp(),
|
||||
|
||||
@@ -575,14 +575,20 @@ public class InviteRequestProcessor extends SIPRequestProcessorParent implements
|
||||
}
|
||||
|
||||
if ("push".equals(gbStream.getStreamType())) {
|
||||
if (streamPushItem != null && streamPushItem.isPushIng()) {
|
||||
// 推流状态
|
||||
pushStream(evt, request, gbStream, streamPushItem, platform, callIdHeader, mediaServerItem, port, tcpActive,
|
||||
mediaTransmissionTCP, channelId, addressStr, ssrc, requesterId);
|
||||
} else {
|
||||
// 未推流 拉起
|
||||
notifyStreamOnline(evt, request, gbStream, streamPushItem, platform, callIdHeader, mediaServerItem, port, tcpActive,
|
||||
mediaTransmissionTCP, channelId, addressStr, ssrc, requesterId);
|
||||
if (streamPushItem != null) {
|
||||
// 从redis查询是否正在接收这个推流
|
||||
OnStreamChangedHookParam pushListItem = redisCatchStorage.getPushListItem(gbStream.getApp(), gbStream.getStream());
|
||||
if (pushListItem != null) {
|
||||
StreamPushItem transform = streamPushService.transform(pushListItem);
|
||||
transform.setSelf(userSetting.getServerId().equals(pushListItem.getSeverId()));
|
||||
// 推流状态
|
||||
pushStream(evt, request, gbStream, transform, platform, callIdHeader, mediaServerItem, port, tcpActive,
|
||||
mediaTransmissionTCP, channelId, addressStr, ssrc, requesterId);
|
||||
}else {
|
||||
// 未推流 拉起
|
||||
notifyStreamOnline(evt, request, gbStream, streamPushItem, platform, callIdHeader, mediaServerItem, port, tcpActive,
|
||||
mediaTransmissionTCP, channelId, addressStr, ssrc, requesterId);
|
||||
}
|
||||
}
|
||||
} else if ("proxy".equals(gbStream.getStreamType())) {
|
||||
if (null != proxyByAppAndStream) {
|
||||
|
||||
Reference in New Issue
Block a user