mirror of
https://github.com/nextcloud/talk-android.git
synced 2024-11-26 23:25:20 +03:00
Capability multi-room-users was introduced 2018
Signed-off-by: Joas Schilling <coding@schilljs.com>
This commit is contained in:
parent
61a2d389b4
commit
ca9a622030
1 changed files with 8 additions and 33 deletions
|
@ -258,8 +258,6 @@ public class CallController extends BaseController {
|
|||
private boolean videoOn = false;
|
||||
private boolean audioOn = false;
|
||||
|
||||
private boolean isMultiSession = false;
|
||||
|
||||
private boolean isVoiceOnlyCall;
|
||||
private boolean isIncomingCallFromNotification;
|
||||
private Handler callControlHandler = new Handler();
|
||||
|
@ -1196,15 +1194,7 @@ public class CallController extends BaseController {
|
|||
|
||||
@Override
|
||||
public void onNext(CapabilitiesOverall capabilitiesOverall) {
|
||||
isMultiSession = capabilitiesOverall.getOcs().getData()
|
||||
.getCapabilities() != null && capabilitiesOverall.getOcs().getData()
|
||||
.getCapabilities().getSpreedCapability() != null &&
|
||||
capabilitiesOverall.getOcs().getData()
|
||||
.getCapabilities().getSpreedCapability()
|
||||
.getFeatures() != null && capabilitiesOverall.getOcs().getData()
|
||||
.getCapabilities().getSpreedCapability()
|
||||
.getFeatures().contains("multi-room-users");
|
||||
|
||||
// FIXME check for compatible Call API version
|
||||
if (hasExternalSignalingServer) {
|
||||
setupAndInitiateWebSocketsConnection();
|
||||
} else {
|
||||
|
@ -1214,7 +1204,7 @@ public class CallController extends BaseController {
|
|||
|
||||
@Override
|
||||
public void onError(Throwable e) {
|
||||
isMultiSession = false;
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -1302,12 +1292,6 @@ public class CallController extends BaseController {
|
|||
|
||||
ApplicationWideCurrentRoomHolder.getInstance().setInCall(true);
|
||||
|
||||
// Start pulling signaling messages
|
||||
String urlToken = null;
|
||||
if (isMultiSession) {
|
||||
urlToken = roomToken;
|
||||
}
|
||||
|
||||
if (!TextUtils.isEmpty(roomToken)) {
|
||||
NotificationUtils.INSTANCE.cancelExistingNotificationsForRoom(getApplicationContext(), conversationUser, roomToken);
|
||||
}
|
||||
|
@ -1316,7 +1300,7 @@ public class CallController extends BaseController {
|
|||
int apiVersion = ApiUtils.getSignalingApiVersion(conversationUser, new int[] {2, 1});
|
||||
|
||||
ncApi.pullSignalingMessages(credentials, ApiUtils.getUrlForSignaling(apiVersion,
|
||||
baseUrl, urlToken))
|
||||
baseUrl, roomToken))
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.repeatWhen(observable -> observable)
|
||||
|
@ -1587,15 +1571,11 @@ public class CallController extends BaseController {
|
|||
|
||||
@Override
|
||||
public void onNext(GenericOverall genericOverall) {
|
||||
if (isMultiSession) {
|
||||
if (shutDownView && getActivity() != null) {
|
||||
getActivity().finish();
|
||||
} else if (!shutDownView && (currentCallStatus.equals(CallStatus.RECONNECTING) || currentCallStatus.equals(CallStatus.PUBLISHER_FAILED))) {
|
||||
initiateCall();
|
||||
}
|
||||
} else {
|
||||
leaveRoom(shutDownView);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -2007,14 +1987,9 @@ public class CallController extends BaseController {
|
|||
String stringToSend = stringBuilder.toString();
|
||||
strings.add(stringToSend);
|
||||
|
||||
String urlToken = null;
|
||||
if (isMultiSession) {
|
||||
urlToken = roomToken;
|
||||
}
|
||||
|
||||
int apiVersion = ApiUtils.getSignalingApiVersion(conversationUser, new int[] {2, 1});
|
||||
|
||||
ncApi.sendSignalingMessages(credentials, ApiUtils.getUrlForSignaling(apiVersion, baseUrl, urlToken),
|
||||
ncApi.sendSignalingMessages(credentials, ApiUtils.getUrlForSignaling(apiVersion, baseUrl, roomToken),
|
||||
strings.toString())
|
||||
.retry(3)
|
||||
.subscribeOn(Schedulers.io())
|
||||
|
|
Loading…
Reference in a new issue