mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-14 16:25:05 +01:00
Leave room when exiting
Signed-off-by: Mario Danic <mario@lovelyhq.com>
This commit is contained in:
parent
59e5ed07a3
commit
288d102780
@ -298,7 +298,7 @@ public class CallActivity extends AppCompatActivity {
|
|||||||
sdpConstraints.optional.add(new MediaConstraints.KeyValuePair("internalSctpDataChannels", "true"));
|
sdpConstraints.optional.add(new MediaConstraints.KeyValuePair("internalSctpDataChannels", "true"));
|
||||||
sdpConstraints.optional.add(new MediaConstraints.KeyValuePair("DtlsSrtpKeyAgreement", "true"));
|
sdpConstraints.optional.add(new MediaConstraints.KeyValuePair("DtlsSrtpKeyAgreement", "true"));
|
||||||
|
|
||||||
ncApi.joinRoom(credentials, ApiHelper.getUrlForJoinRoom(userEntity.getBaseUrl(), roomToken))
|
ncApi.joinRoom(credentials, ApiHelper.getUrlForRoom(userEntity.getBaseUrl(), roomToken))
|
||||||
.subscribeOn(Schedulers.newThread())
|
.subscribeOn(Schedulers.newThread())
|
||||||
.observeOn(AndroidSchedulers.mainThread())
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribe(new Observer<CallOverall>() {
|
.subscribe(new Observer<CallOverall>() {
|
||||||
@ -554,19 +554,20 @@ public class CallActivity extends AppCompatActivity {
|
|||||||
private void hangup() {
|
private void hangup() {
|
||||||
|
|
||||||
leavingCall = true;
|
leavingCall = true;
|
||||||
|
|
||||||
dispose(null);
|
dispose(null);
|
||||||
|
|
||||||
for (MagicPeerConnectionWrapper magicPeerConnectionWrapper : magicPeerConnectionWrapperList) {
|
for (MagicPeerConnectionWrapper magicPeerConnectionWrapper : magicPeerConnectionWrapperList) {
|
||||||
if (magicPeerConnectionWrapper.getPeerConnection() != null) {
|
endPeerConnection(magicPeerConnectionWrapper.getSessionId());
|
||||||
magicPeerConnectionWrapper.getPeerConnection().close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (videoCapturer != null) {
|
if (videoCapturer != null) {
|
||||||
videoCapturer.dispose();
|
videoCapturer.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
localMediaStream.removeTrack(localMediaStream.videoTracks.get(0));
|
||||||
|
localMediaStream.removeTrack(localMediaStream.audioTracks.get(0));
|
||||||
|
localMediaStream = null;
|
||||||
|
|
||||||
pipVideoView.release();
|
pipVideoView.release();
|
||||||
|
|
||||||
String credentials = ApiHelper.getCredentials(userEntity.getUsername(), userEntity.getToken());
|
String credentials = ApiHelper.getCredentials(userEntity.getUsername(), userEntity.getToken());
|
||||||
@ -581,6 +582,30 @@ public class CallActivity extends AppCompatActivity {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onNext(GenericOverall genericOverall) {
|
public void onNext(GenericOverall genericOverall) {
|
||||||
|
ncApi.leaveRoom(credentials, ApiHelper.getUrlForRoom(userEntity.getBaseUrl(), roomToken))
|
||||||
|
.subscribeOn(Schedulers.newThread())
|
||||||
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
|
.subscribe(new Observer<GenericOverall>() {
|
||||||
|
@Override
|
||||||
|
public void onSubscribe(Disposable d) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNext(GenericOverall genericOverall) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onError(Throwable e) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onComplete() {
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -57,7 +57,7 @@ public class ApiHelper {
|
|||||||
return retrofitBucket;
|
return retrofitBucket;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getUrlForJoinRoom(String baseUrl, String token) {
|
public static String getUrlForRoom(String baseUrl, String token) {
|
||||||
return getRoom(baseUrl, token) + "/participants/active";
|
return getRoom(baseUrl, token) + "/participants/active";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user