Forráskód Böngészése

Close connection if ICE fails

Signed-off-by: Mario Danic <mario@lovelyhq.com>
Mario Danic 7 éve
szülő
commit
9f00096d98

+ 1 - 1
app/src/main/java/com/nextcloud/talk/activities/CallActivity.java

@@ -510,7 +510,7 @@ public class CallActivity extends AppCompatActivity {
 
                             SessionDescription sessionDescriptionWithPreferredCodec = new SessionDescription(
                                     SessionDescription.Type.fromCanonicalForm(type),
-                                    sessionDescriptionStringWithPreferredCodec);
+                                    ncSignalingMessage.getPayload().getSdp());
 
                             magicPeerConnectionWrapper.getPeerConnection().setRemoteDescription(magicPeerConnectionWrapper
                                     .getMagicSdpObserver(), sessionDescriptionWithPreferredCodec);

+ 5 - 2
app/src/main/java/com/nextcloud/talk/webrtc/MagicPeerConnectionWrapper.java

@@ -194,6 +194,9 @@ public class MagicPeerConnectionWrapper {
             if (iceConnectionState.equals(PeerConnection.IceConnectionState.CONNECTED) && hasInitiated) {
                 sendChannelData(new DataChannelMessage("videoOn"));
                 sendChannelData(new DataChannelMessage("audioOn"));
+            } else if (iceConnectionState.equals(PeerConnection.IceConnectionState.FAILED)) {
+                EventBus.getDefault().post(new PeerConnectionEvent(PeerConnectionEvent.PeerConnectionEventType
+                        .CLOSE_PEER, sessionId));
             }
         }
 
@@ -282,9 +285,9 @@ public class MagicPeerConnectionWrapper {
                     sessionDescription.type,
                     sessionDescriptionStringWithPreferredCodec);
 
-            EventBus.getDefault().post(new SessionDescriptionSendEvent(sessionDescriptionWithPreferredCodec, sessionId,
+            EventBus.getDefault().post(new SessionDescriptionSendEvent(sessionDescription, sessionId,
                     sessionDescription.type.canonicalForm().toLowerCase(), null));
-            peerConnection.setLocalDescription(magicSdpObserver, sessionDescriptionWithPreferredCodec);
+            peerConnection.setLocalDescription(magicSdpObserver, sessionDescription);
         }
 
         @Override