PubNub webrtc仅适用于本地网络

Sha*_*ham 3 javascript stun webrtc pubnub turn

我以前问过这个问题,但没有任何运气..我在本教程后遇到问题https://www.pubnub.com/blog/2014-10-21-building-a-webrtc-video-and-voice-chat - 应用/.我写了代码,它在本地网络上完美运行,但是当我尝试连接远程客户端(即不在同一网络上)时,代码不再起作用了.它只显示一个黑屏,客户端的视频应该是.

phone.receive(function(session){
    session.connected(function(session){
        $("#vid-box").append(session.video); //outputs black screen
    });

    session.ended(function(session) {alert("Call ended: "+session.number});
});
Run Code Online (Sandbox Code Playgroud)

我甚至联系了PubNub,但他们无法提供帮助.有人有什么想法吗?

Ste*_*lum 6

WebRTC双NAT哦不!

⚠️TURN 服务器未提供 ⚠️

确保您没有进行NAT网络转发.否则你需要TURN servers(未提供).TURN Servers代理网络流量并允许受限制的网络视频对话.大多数移动提供商都是基本的开放路由(非NAT).大多数企业防火墙至少有一个NAT.

  • TURN Streams BINARY VIDEO.需要NATed网络,但不是必需的.
  • STUN解析IP地址.Peer to Peer发现.
  • PUBNUB发送IP地址.

的WebRTC

STUN提供IP地址.WebRTC中没有任何内容可以提供在连接客户端之间交换IP地址的方法.这是PubNub的用武之地.

STURN与TURN服务器WebRTC

WebRTC资源和SDK链接