title: onaddstream method is not executed after RTCPeerconnection object is instantiated
body: <p>Dear friends I am trying to build test application which allows to connect a browser window to itself (streming video data from user's camera).The final result is to get two video streams on the page, one coming from the camera directly and the other coming from a WebRTC connection that the browser has made locally. 
  I guess the problem is that onaddstream method is not invoked when RTCPeerconnection object is instantiated therefore the second screen does not recieve url from window.URL.createObjectURL(e.stream);</p>
  
  <pre><code>function hasUserMedia() {
      navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;
      return !!navigator.getUserMedia;
  }
  
  function hasRTCPeerConnection() {
      window.RTCPeerConnection = window.RTCPeerConnection || window.webkitRTCPeerConnection || window.mozRTCPeerConnection;
      return !!window.RTCPeerConnection;
  }
  
  var yourVideo = document.querySelector('#yours'),
      theirVideo = document.querySelector('#theirs'),
      yourConnection, theirConnection;
  
  if (hasUserMedia()) {
      navigator.getUserMedia({ video: true, audio: false }, function (stream) {
          yourVideo.src = window.URL.createObjectURL(stream);
  
          if (hasRTCPeerConnection()) {
              startPeerConnection(stream);
          } else {
              alert("Sorry, your browser does not support WebRTC.");
          }
      }, function (error) {
          console.log(error);
      });
  } else {
      alert("Sorry, your browser does not support WebRTC.");
  }
  
  function startPeerConnection(stream) {
      var configuration = {
          "iceServers": [{ "url": "stun:192.168.1.100:9876" }] // this is address of a local server 
      };
      yourConnection = new mozRTCPeerConnection(configuration);
      theirConnection = new mozRTCPeerConnection(configuration);
  console.log(theirConnection);
  
      // Setup stream listening
      yourConnection.addStream(stream);
  
      theirConnection.onaddstream = function (e) {
          theirVideo.src = window.URL.createObjectURL(e.stream);
      };
  
      // Setup ice handling
      yourConnection.onicecandidate = function (event) {
          if (event.candidate) {
              theirConnection.addIceCandidate(new RTCIceCandidate(event.candidate));
          }
      };
  
      theirConnection.onicecandidate = function (event) {
          if (event.candidate) {
              yourConnection.addIceCandidate(new RTCIceCandidate(event.candidate));
          }
      };
  
      // Begin the offer
      yourConnection.createOffer(function (offer) {
          yourConnection.setLocalDescription(offer);
          theirConnection.setRemoteDescription(offer);
  
          theirConnection.createAnswer(function (offer) {
              theirConnection.setLocalDescription(offer);
              yourConnection.setRemoteDescription(offer);
          });
      });
  };
  </code></pre>
  
  <p>Here is the full code : <a href="https://gist.github.com/johannesMatevosyan/8e4529fdcc53dd711479" rel="nofollow">https://gist.github.com/johannesMatevosyan/8e4529fdcc53dd711479</a></p>
  
  <p>This is how it looks in browser: <a href="http://screencast.com/t/6dthclGcm" rel="nofollow">http://screencast.com/t/6dthclGcm</a></p>