我已经开始研究WebRTC了,我正在使用它来构建一个使用数据通道的简单对等聊天应用程序。我有以下问题:
我是否需要为每个想要与之对话的对等方建立RTCPeerConnection?因此,如果有三个对等体,它们每个都需要2个RTCPeerConnections(除非我使用其中一个对等体作为一种ad-hoc服务器)。
如果对等体A在向对等体B创建提议时发出候选者和sdp。对等体B可以使用该信息连接到对等体A并通过RTCPeerConnection发送其答案(带有候选者及其sdp),即使用RTCPeerConnection(在它完全建立之前)作为信令通道?我认为当优惠由对等方A创建时,它会开始侦听某个端口上的连接。
我对WebRTC的理解有点受限,所以如果我在上面的问题中误解了WebRTC的一些概念,请指出它们!
答案 0 :(得分:3)
特别是对于简单的纯文本聊天,通过服务器通常比使用P2P更容易;处理和带宽要求非常小,以至于P2P连接的复杂性可能不值得。无论如何你还需要一个信令服务器。一旦你开始发送大文件或音频/视频流,P2P才会变得非常有趣。
答案 1 :(得分:1)
原则上可以在没有信令服务器的情况下建立WebRTC连接,但是这要求对等方之间进行会话令牌的带外交换。即用户将不得不从应用程序中复制令牌,然后以某种方式将其发送给另一个用户,而另一个用户则将其粘贴。
此外,这些令牌不能重复使用,因此每次对等体想要建立连接时,都必须重复此过程。
因此,虽然理论上可能的webrtc并非以实用术语发布。
有is some noise关于指定对传入连接和可重用对等联系人的支持,但是目前尚不清楚。