首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Webrtc,ICE故障

Webrtc,ICE故障
EN

Stack Overflow用户
提问于 2017-07-13 04:25:27
回答 1查看 905关注 0票数 2

视频通话在同一网络中运行良好。问题是,当在其他网络上调用计算机时,远程视频没有出现。在chrome上,我在控制台中没有任何错误,但是在firefox上我得到了"ICE Failure"

我使用Node来实现信令服务器和Google。

以下是我使用的事件序列:

用户A:

  1. 创建Peerconnection (包括getusermedia、addstream)
  2. 寄存器onIcecandidate处理程序
  3. 发出一个套接字事件,将调用通知用户B,并等待响应
  4. 接收来自用户B的,并创建应答

用户B:

  1. 接收套接字事件并创建Peerconnection (包括getusermedia、addstream)
  2. 寄存器onicecandidate处理程序
  3. 还注册了"Onnegogiationneeded"处理程序。用户A没有这个处理程序。它被删除,这样用户B就有足够的时间创建Peerconnection候选处理程序,然后创建
  4. 当Onnegogiation被触发时,提供将被创建并发送给用户A

注:

  1. 在创建报价之前,我在双方创建peerconnection和onicecandidate处理程序。2.这样做是为了确保Onicecandiate处理程序在提出报价之前就已经准备好了,而且没有ICE候选人被错过。

上述事件的顺序有什么问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-13 13:17:52

我们可以按照以下顺序调试和修复该问题:

  1. 检查sdp和正在交换的候选人。
  2. 如果任何STUn候选文件(我指的是srflx或prflx )被交换,我们需要检查它们后来是否被用于交换媒体,或者not.If not STUN服务器配置不正确,请纠正。 3.如果被交换的候选对象仍然是您所面临的问题,这意味着不同网络中的候选人之一落后于对称的firewall.In,在这种情况下,需要配置转服务器。您可以使用任何免费的转身服务器,或者部署我们自己的TS,或者使用一些付费的service.Make,确保您正在按照防火墙配置良好的转弯服务器。大多数情况下,旋转服务器是不可自由使用的。

4.如果您仍然面临一些问题,这意味着防火墙存在一些问题,无论是STUN,转身服务器,还是您的防火墙中的协商端口都没有打开。在这种情况下,测试您在开放网络中的设置。如果这样做有效,就必须打开这些端口/IP并相应地配置防火墙。

PS :您可能在chrome控制台中找不到任何日志,但是在chrome://webrtc-内部文件中,您会发现非常丰富的信息,这些信息对于调试和解决问题非常有用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45071377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档