修复talk模式Bye消息发送失败的BUG
This commit is contained in:
@@ -510,6 +510,7 @@ public class PlayServiceImpl implements IPlayService {
|
|||||||
try {
|
try {
|
||||||
sendRtpInfo = sendRtpServerService.createSendRtpInfo(mediaServerItem, null, null, playSsrc, device.getDeviceId(), "talk", stream,
|
sendRtpInfo = sendRtpServerService.createSendRtpInfo(mediaServerItem, null, null, playSsrc, device.getDeviceId(), "talk", stream,
|
||||||
channel.getId(), true, false);
|
channel.getId(), true, false);
|
||||||
|
sendRtpInfo.setPlayType(InviteStreamType.TALK);
|
||||||
}catch (PlayException e) {
|
}catch (PlayException e) {
|
||||||
log.info("[语音对讲]开始 获取发流端口失败 deviceId: {}, channelId: {},", device.getDeviceId(), channel.getDeviceId());
|
log.info("[语音对讲]开始 获取发流端口失败 deviceId: {}, channelId: {},", device.getDeviceId(), channel.getDeviceId());
|
||||||
return;
|
return;
|
||||||
@@ -582,7 +583,7 @@ public class PlayServiceImpl implements IPlayService {
|
|||||||
sendRtpInfo.setCallId(response.getCallIdHeader().getCallId());
|
sendRtpInfo.setCallId(response.getCallIdHeader().getCallId());
|
||||||
sendRtpServerService.update(sendRtpInfo);
|
sendRtpServerService.update(sendRtpInfo);
|
||||||
|
|
||||||
SsrcTransaction ssrcTransaction = SsrcTransaction.buildForDevice(device.getDeviceId(), sendRtpInfo.getChannelId(), "talk", sendRtpInfo.getApp(),
|
SsrcTransaction ssrcTransaction = SsrcTransaction.buildForDevice(device.getDeviceId(), sendRtpInfo.getChannelId(), response.getCallIdHeader().getCallId(), sendRtpInfo.getApp(),
|
||||||
sendRtpInfo.getStream(), sendRtpInfo.getSsrc(), sendRtpInfo.getMediaServerId(),
|
sendRtpInfo.getStream(), sendRtpInfo.getSsrc(), sendRtpInfo.getMediaServerId(),
|
||||||
response, InviteSessionType.TALK);
|
response, InviteSessionType.TALK);
|
||||||
|
|
||||||
@@ -724,7 +725,6 @@ public class PlayServiceImpl implements IPlayService {
|
|||||||
inviteInfo.setStreamInfo(streamInfo);
|
inviteInfo.setStreamInfo(streamInfo);
|
||||||
inviteStreamService.updateInviteInfo(inviteInfo);
|
inviteStreamService.updateInviteInfo(inviteInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return streamInfo;
|
return streamInfo;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -164,7 +164,8 @@ public class SIPRequestHeaderProvider {
|
|||||||
// SipURI requestLine = SipFactory.getInstance().createAddressFactory().createSipURI(device.getDeviceId(), device.getHostAddress());
|
// SipURI requestLine = SipFactory.getInstance().createAddressFactory().createSipURI(device.getDeviceId(), device.getHostAddress());
|
||||||
// via
|
// via
|
||||||
ArrayList<ViaHeader> viaHeaders = new ArrayList<ViaHeader>();
|
ArrayList<ViaHeader> viaHeaders = new ArrayList<ViaHeader>();
|
||||||
ViaHeader viaHeader = SipFactory.getInstance().createHeaderFactory().createViaHeader(sipLayer.getLocalIp(device.getLocalIp()), sipConfig.getPort(), device.getTransport(), transactionInfo.getViaBranch());
|
// ViaHeader viaHeader = SipFactory.getInstance().createHeaderFactory().createViaHeader(sipLayer.getLocalIp(device.getLocalIp()), sipConfig.getPort(), device.getTransport(), transactionInfo.getViaBranch());
|
||||||
|
ViaHeader viaHeader = SipFactory.getInstance().createHeaderFactory().createViaHeader(sipLayer.getLocalIp(device.getLocalIp()), sipConfig.getPort(), device.getTransport(), SipUtils.getNewViaTag());
|
||||||
// viaHeader.setRPort();
|
// viaHeader.setRPort();
|
||||||
viaHeaders.add(viaHeader);
|
viaHeaders.add(viaHeader);
|
||||||
//from
|
//from
|
||||||
|
|||||||
Reference in New Issue
Block a user