Browse Source

Some progress

Signed-off-by: Mario Danic <mario@lovelyhq.com>
Mario Danic 7 years ago
parent
commit
eb9d7ec0d7

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

@@ -632,7 +632,7 @@ public class CallActivity extends AppCompatActivity {
     }
 
     @Subscribe(threadMode = ThreadMode.BACKGROUND)
-    public void onMessageEvent(SessionDescriptionSendEvent sessionDescriptionSend) {
+    public void onMessageEvent(SessionDescriptionSendEvent sessionDescriptionSend) throws IOException {
         Log.d("MARIO_123", "SENDING " + sessionDescriptionSend.getType());
         String credentials = ApiHelper.getCredentials(userEntity.getUsername(), userEntity.getToken());
         NCMessageWrapper ncMessageWrapper = new NCMessageWrapper();
@@ -656,8 +656,13 @@ public class CallActivity extends AppCompatActivity {
         ncSignalingMessage.setPayload(ncMessagePayload);
         ncMessageWrapper.setSignalingMessage(ncSignalingMessage);
 
+        List<NCMessageWrapper> ncMessageWrappers = new ArrayList<>();
+        ncMessageWrappers.add(ncMessageWrapper);
+
+        Log.d("MARIO_123", LoganSquare.serialize(ncMessageWrappers));
+
         ncApi.sendSignalingMessages(credentials, ApiHelper.getUrlForSignaling(userEntity.getBaseUrl()),
-                ncMessageWrapper)
+                ncMessageWrappers)
                 .subscribeOn(Schedulers.newThread())
                 .subscribe(new Observer<Integer>() {
                     @Override

+ 2 - 1
app/src/main/java/com/nextcloud/talk/api/NcApi.java

@@ -33,6 +33,7 @@ import com.nextcloud.talk.api.models.json.signaling.NCMessageWrapper;
 import com.nextcloud.talk.api.models.json.signaling.SignalingOverall;
 import com.nextcloud.talk.api.models.json.userprofile.UserProfileOverall;
 
+import java.util.List;
 import java.util.Map;
 
 import io.reactivex.Observable;
@@ -168,7 +169,7 @@ public interface NcApi {
     */
     @POST
     Observable<Integer> sendSignalingMessages(@Header("Authorization") String authorization, @Url String url,
-                                              @Body NCMessageWrapper ncMessageWrapper);
+                                              @Body List<NCMessageWrapper> ncMessageWrapper);
 
     /*
         Server URL is: baseUrl + ocsApiVersion + spreedApiVersion + /signaling

+ 0 - 3
app/src/main/java/com/nextcloud/talk/api/models/json/signaling/NCIceCandidate.java

@@ -36,7 +36,4 @@ public class NCIceCandidate {
 
     @JsonField(name = "candidate")
     String candidate;
-
-    @JsonField(name = "type")
-    String type;
 }

+ 3 - 2
app/src/main/java/com/nextcloud/talk/webrtc/PeerConnectionWrapper.java

@@ -90,6 +90,9 @@ public class PeerConnectionWrapper {
 
             @Override
             public void onIceGatheringChange(PeerConnection.IceGatheringState iceGatheringState) {
+                if (iceGatheringState.equals(PeerConnection.IceGatheringState.COMPLETE)) {
+                    sendLocalCandidates();
+                }
             }
 
             @Override
@@ -150,7 +153,6 @@ public class PeerConnectionWrapper {
                         // We've just set our local SDP so time to send it, drain
                         // remote and send local ICE candidates.
                         Log.d("MARIO", "SENDING ANSWER FROM OBSERVER");
-                        sendLocalCandidates();
                         EventBus.getDefault().post(new SessionDescriptionSendEvent(peerConnection.getLocalDescription
                                 (),
                                 sessionId,
@@ -162,7 +164,6 @@ public class PeerConnectionWrapper {
                             public void onCreateSuccess(SessionDescription sessionDescription) {
                                 super.onCreateSuccess(sessionDescription);
                                 peerConnection.setLocalDescription(magicSdpObserver, sessionDescription);
-                                sendLocalCandidates();
                             }
 
                         }, mediaConstraints);