Websocket WebRTC:数据通道可以用来发送信号吗?

Websocket WebRTC:数据通道可以用来发送信号吗?,websocket,webrtc,Websocket,Webrtc,我正在从事一个实施webRTC技术的项目,我想知道我是否可以使用数据通道来发送信号,比如WebSocket,或者数据通道可以通过发送全局数据来取代peerconnection,因此我需要使用WebSocket来将信号部分发送到服务器?我想否 因为对于第一次握手,您需要一个服务器来发送信号 我认为如果没有握手,我们将无法使用数据通道共享文本或文件 我对他做了同样的事看见我用它来发信号和交换信息。事实上,答案是肯定的 让我详细说明一下:一旦PeerConnection被连接(通过任何方式-WebSo

我正在从事一个实施webRTC技术的项目,我想知道我是否可以使用数据通道来发送信号,比如WebSocket,或者数据通道可以通过发送全局数据来取代peerconnection,因此我需要使用WebSocket来将信号部分发送到服务器?

我想

因为对于第一次握手,您需要一个服务器来发送信号

我认为如果没有握手,我们将无法使用数据通道共享文本或文件


我对他做了同样的事看见我用它来发信号和交换信息。

事实上,答案是肯定的

让我详细说明一下:一旦PeerConnection被连接(通过任何方式-WebSocket、https等),那么您可以重新协商(new CreateOffer/CreateAnswer/etc)并通过数据通道发送它们。这意味着在某些情况下,重新协商的速度明显加快,特别是在两个端点都远离服务器的情况下,或者如果两个端点都在同一个LAN中,等等(也可以降低服务器上的负载,尽管这可能无关紧要,并且不依赖服务器维护调用状态)

您还可以通过对等连接使用数据通道连接到充当会议中心或信令服务器的服务器,用于重新协商(在会议中)和启动与连接到中心或服务器的其他人的连接


如果是“我想不通过服务器直接连接到其他人”,答案是否定的;您首先需要一个已连接的对等连接。如果您想交换报价和答复,可以使用。之后,您可以使用数据通道(可能会快一点)。

正如jesup所提到的,答案是肯定的

信号可以在任何传输上发生。我建议使用websockets,因为大多数

如果您不想经历设置自己的信令服务器的麻烦,可以使用Pubnub或为您处理

如果你有兴趣了解更多,这里有一个教程


免责声明:我在Pusher工作。

Muaz是对的。DataChannel是一种用于通信任意流数据的API;RTPeerConnection用于音频和视频流。两者都需要通过交换媒体和网络信息,通过WebSocket等其他机制来协调通信。。。但最好还是留着它发信号。