Ver código fonte

remove onnegotiationneeded

stops using onnegotiationneeded to create an offer.
This is wrong in the case of the answering peer and gets
triggered twice in Chrome due to bugs
Philipp Hancke 7 anos atrás
pai
commit
38d729c414
1 arquivos alterados com 1 adições e 16 exclusões
  1. 1 16
      lib/negotiator.js

+ 1 - 16
lib/negotiator.js

@@ -48,9 +48,7 @@ Negotiator.startConnection = function(connection, options) {
       connection.initialize(dc);
     }
 
-    if (!util.supports.onnegotiationneeded) {
-      Negotiator._makeOffer(connection);
-    }
+    Negotiator._makeOffer(connection);
   } else {
     Negotiator.handleSDP("OFFER", connection, options.sdp);
   }
@@ -175,19 +173,6 @@ Negotiator._setupListeners = function(connection, pc, pc_id) {
   // Fallback for older Chrome impls.
   pc.onicechange = pc.oniceconnectionstatechange;
 
-  // ONNEGOTIATIONNEEDED (Chrome)
-  util.log("Listening for `negotiationneeded`");
-  pc.onnegotiationneeded = function() {
-    util.log("`negotiationneeded` triggered");
-    if (pc.signalingState == "stable") {
-      Negotiator._makeOffer(connection);
-    } else {
-      util.log(
-        "onnegotiationneeded triggered when not stable. Is another connection being established?"
-      );
-    }
-  };
-
   // DATACONNECTION.
   util.log("Listening for data channel");
   // Fired between offer and answer, so options should already be saved