Improve MCU support

This commit is contained in:
Mario Danic 2018-11-09 23:25:50 +01:00
parent 1e055568bc
commit 29c38aa107

View File

@ -1189,8 +1189,6 @@ public class CallController extends BaseController {
});
} else {
alwaysGetPeerConnectionWrapperForSessionId(webSocketClient.getSessionId(), true);
}
}
@ -1484,7 +1482,9 @@ public class CallController extends BaseController {
}
for (MagicPeerConnectionWrapper magicPeerConnectionWrapper : magicPeerConnectionWrapperList) {
oldSesssions.add(magicPeerConnectionWrapper.getSessionId());
if (!magicPeerConnectionWrapper.isMCUPublisher()) {
oldSesssions.add(magicPeerConnectionWrapper.getSessionId());
}
}
// Calculate sessions that left the call
@ -1501,15 +1501,10 @@ public class CallController extends BaseController {
getPeersForCall();
}
for (String sessionId : newSessions) {
if (hasExternalSignalingServer && webSocketClient.hasMCU()) {
if (!sessionId.equals(webSocketClient.getSessionId())) {
alwaysGetPeerConnectionWrapperForSessionId(sessionId, false);
hasMCU = hasExternalSignalingServer && webSocketClient != null && webSocketClient.hasMCU();
}
} else {
alwaysGetPeerConnectionWrapperForSessionId(sessionId, false);
}
for (String sessionId : newSessions) {
alwaysGetPeerConnectionWrapperForSessionId(sessionId, hasMCU && sessionId.equals(webSocketClient.getSessionId()));
}
for (String sessionId : oldSesssions) {
@ -1559,8 +1554,6 @@ public class CallController extends BaseController {
if ((magicPeerConnectionWrapper = getPeerConnectionWrapperForSessionId(sessionId)) != null) {
return magicPeerConnectionWrapper;
} else {
hasMCU = externalSignalingServer != null && webSocketClient != null && webSocketClient.hasMCU();
if (hasMCU && publisher) {
magicPeerConnectionWrapper = new MagicPeerConnectionWrapper(peerConnectionFactory,
iceServers, sdpConstraintsForMCU, sessionId, callSession, localMediaStream, true, true);