WebRTC中的信令通道

3

我想创建一个WebRTC聊天(视频/音频)应用程序,大多数教程和演示都使用以下信令通道:

signaling.simplewebrtc.com:8888

我甚至找到了这个很好的演示 (链接),开发者声称它不依赖于这个信令通道,但是当我查看代码时发现它确实存在。
请问有人能解释一下,我如何用自己的信令通道替换它呢?

你只需要添加一个信令服务器来交换SDP和ICE候选项。通过简单的谷歌搜索,您可以获得大量可供选择的选项和教程。 - Benjamin Trent
5个回答

3
我不完全理解你的问题。我猜测你提供的URL指向WebSocket服务器。 WebSockets通常用于信令,因为它们提供一个永久的、全双工的连接(这意味着服务器能够向客户端推送消息而无需先前的请求)。
由于NAT和防火墙等原因,你必须在想要建立RTCPeerConnection的两个方之间交换网络信息。如何交换这些信息不是WebRTC规范的一部分。你可以使用任何协议,例如HTTP、Websockets,甚至电子邮件(但这会非常麻烦)。但是,如果你想使用node.js构建自己的信令服务器,可以参考我正在撰写的教程。该教程详细说明了如何使用WebRTC和托管在uberspace.de上的Node服务器设置自己的简单视频聊天:

教程:使用HTML和JavaScript创建自己的视频聊天应用程序 如果你使用我的教程,如果你能告诉我它是否容易理解,那就太好了。

Edit: 由于我仍然收到有关此旧教程的请求,请使用最新的教程之一,如下所示: https://www.baeldung.com/webrtc https://www.html5rocks.com/en/tutorials/webrtc/basics/

1
如果我想构建WebRTC应用程序并且想要使用SIP Servlet作为信令?因为我已经创建了连接到SIP Servlet的Android Jain SIP客户端。我能做到吗?提前致谢 :) - mubeen
正如我之前所写的,您可以使用任何技术,只要您能够在客户端之间交换文本数据。当然,您需要从客户端(即JavaScript)访问该数据。 - Felix Hagspiel
兄弟,你博客的链接加载不出来了 :'( - Miko Chu
@MikoChu 这个教程已经快10年了(而且我已经删除了我的博客),你应该寻找更新的版本。我会编辑我的回答。 - Felix Hagspiel
@FelixHagspiel,你不打算创建一个新版本吗?:o - Miko Chu
显示剩余2条评论

0

0

0
  1. 我从安装NodeJS,并在signalmaster安装了必需的依赖包
  2. 在cmd中运行 node server.js,服务器开始运行。

  3. P.S:更改simplewebrtc.bundle.js中的url选项

如果您遇到任何问题,请告诉我。


0

我想知道为什么迄今没有人提到这一点。 您还可以使用基于sip框架的webrtc库和客户端,例如sipml5,jssip等。另外,由于您提到希望设置自己的服务器以满足信令请求,因此您将有各种基于Websockets的sip服务器可供选择,例如officesip,kamailio,mobicents等。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接