Leave room when exiting

Signed-off-by: Mario Danic <mario@lovelyhq.com>
This commit is contained in:
Mario Danic 2017-12-04 21:48:06 +01:00
parent 59e5ed07a3
commit 288d102780
2 changed files with 31 additions and 6 deletions

View File

@ -298,7 +298,7 @@ public class CallActivity extends AppCompatActivity {
sdpConstraints.optional.add(new MediaConstraints.KeyValuePair("internalSctpDataChannels", "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())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<CallOverall>() {
@ -554,19 +554,20 @@ public class CallActivity extends AppCompatActivity {
private void hangup() {
leavingCall = true;
dispose(null);
for (MagicPeerConnectionWrapper magicPeerConnectionWrapper : magicPeerConnectionWrapperList) {
if (magicPeerConnectionWrapper.getPeerConnection() != null) {
magicPeerConnectionWrapper.getPeerConnection().close();
}
endPeerConnection(magicPeerConnectionWrapper.getSessionId());
}
if (videoCapturer != null) {
videoCapturer.dispose();
}
localMediaStream.removeTrack(localMediaStream.videoTracks.get(0));
localMediaStream.removeTrack(localMediaStream.audioTracks.get(0));
localMediaStream = null;
pipVideoView.release();
String credentials = ApiHelper.getCredentials(userEntity.getUsername(), userEntity.getToken());
@ -581,6 +582,30 @@ public class CallActivity extends AppCompatActivity {
@Override
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() {
}
});
}

View File

@ -57,7 +57,7 @@ public class ApiHelper {
return retrofitBucket;
}
public static String getUrlForJoinRoom(String baseUrl, String token) {
public static String getUrlForRoom(String baseUrl, String token) {
return getRoom(baseUrl, token) + "/participants/active";
}