title: Webrtc no video when users are on different network
body: <p>So I have a website set up. With a clienta page and a clientb page.</p>
  
  <p>This is basically a split version of this site:
  <a href="https://webrtc-demos.appspot.com/html/pc2.html" rel="nofollow">https://webrtc-demos.appspot.com/html/pc2.html</a></p>
  
  <p>I am using signalr (websockets) to exchange information between the clients.</p>
  
  <p><strong>When a user opens up both cleinta and b on the same computer it works fine.</strong></p>
  
  <p><strong>When a user opens up clienta on one computer and on another computer opens up clientb BUT both computers are on the same network, it works fine.</strong></p>
  
  <p><strong>When a user open up clienta on one computer and on another computer opens clientb BUT on different networks there is no video or audio.</strong></p>
  
  <p>When the ice messages are exchanged i pass back a number so i know the order its sent. On the opposite end they dont always arrive the same order, but audio #1 always gets there before audio#2. and the same with video.</p>
  
  <p>In all cases im using chrome dev 24.</p>
  
  <p>I realize sequence and timing are everything with webrtc. Im just not understanding how it can work on separate pcs on the same network but not different networks. I should point out that when i say same network ive test both at work with 2 pcs and at home with 2 pcs. so i dont think its a firewall thing.</p>
  
  <p>Any ideas?</p>
  
  <p>I did check out <a href="https://apprtc.appspot.com/" rel="nofollow">https://apprtc.appspot.com/</a> as its a slightly more relevant link. This lead me to adding a couple settimeouts though they didnt seem to help.</p>
  
  <p>One last thing, i did mention about the ice messages. I should also note that both sides send and receive all the messages. an offer is created and an answer is created. Hence, it working on same network machines.</p>
  
  <p><strong>Update:</strong></p>
  
  <p>Im using jsep and all the latest syntax according to webrtc.org</p>
  
  <p><strong>Update 11/15/2012:</strong></p>
  
  <p>So is there a open source package for creating a media relay? </p>
  
  <p>Specifically .net, but could be php. The current site is public facing, this is how I was able to test on multiple networks. So it seems like I just need another endpoint for the media relay.</p>
  
  <p><strong>Updated 11/16/2012:</strong></p>
  
  <p>In hopes that I'll get it working or get valuable input from other developers I'm putting my code out on github.</p>
  
  <p><a href="https://github.com/thorst/RTC" rel="nofollow">https://github.com/thorst/RTC</a></p>
  
  <p><strong>Updated 11/21/2012</strong></p>
  
  <p>The code now works for everything except different network connections. (as described in this post)</p>
  
  <p><strong>Updated 5/28/2013</strong></p>
  
  <p>This years google io was much better at explaining turn, stun, and ice.</p>
  
  <p><a href="http://www.youtube.com/watch?feature=player_embedded&amp;v=p2HzZkd2A40" rel="nofollow">http://www.youtube.com/watch?feature=player_embedded&amp;v=p2HzZkd2A40</a></p>
  
  <p>For reference here are the older helped me get started</p>
  
  <p><a href="http://www.youtube.com/watch?v=E8C8ouiXHHk" rel="nofollow">http://www.youtube.com/watch?v=E8C8ouiXHHk</a></p>
  
  <p><a href="http://www.youtube.com/watch?v=dAhhniqwkp8" rel="nofollow">http://www.youtube.com/watch?v=dAhhniqwkp8</a></p>