【问题标题】:Webrtc, websockets, Stun/turn server, working alltogether?Webrtc、websockets、Stun/turn 服务器,一起工作?
【发布时间】:2017-06-27 07:25:28
【问题描述】:

我正在尝试了解 webrtc 中 websocket 的使用,我创建了一个 websocket,并成功连接到它。 使用 stun 服务器获取设备的 IP 地址(哪些设备??) 它返回了我的冰候选人(我应该如何使用它们来连接我哥哥的手机??)

使用 stun 服务器 - stun:stun.l.google.com:19302

我了解 webrtc 捕获我们的视频/音频并创建对等连接(但它与谁建立对等连接,它向谁发送连接提议?websockets 是从哪里来的?websockets 必须做什么?玩,我必须使用 websocket 在服务器上注册每个用户吗?)

无法用外行的语言理解 websockets 的概念。

附:我使用来自网络的随机链接作为一些教程中的 websocket - https://appr.tc/join/ 我得到的响应已成功连接。

谢谢。

【问题讨论】:

    标签: android websocket webrtc


    【解决方案1】:

    WebRTC 有以下两个主要 API
    getUserMedia : 用于捕获音频/视频等
    peerConnection : 使用信令消息(offer/answer/candidates)在对等方之间建立通信通道以传输媒体/数据。

    因此,我们需要一个渠道在同行之间传递这些提议/答案/候选人。 WebRTC独立于这个通信通道,所以你可以选择像WebSocket/Ajax/RestAPI/IM...

    首先尝试basic demo,它在没有任何信号通道的情况下工作,因为两个对等点都在同一个窗口中。
    AppRTC 演示是基于房间的,双方都应该使用相同的 roomId,然后他们将与 WebSocket 交换消息。

    所以在你的情况下,有一个简单的信号服务器设置,
    所有对等点都将通过 WebSocket 连接到服务器。
    如果您想与您的兄弟交谈,请创建报价并要求您的服务器将报价发送到您兄弟的 websocket 连接。
    然后您的兄弟必须创建答案并通过服务器将其发送回您。 而且你们必须交换候选人。

    只要网络正常,google stun server (stun:stun.l.google.com:19302) 就可以工作。如果您在复杂的 NAT 后面,那么您需要设置自己的 TURN 服务器。 Read more

    More references

    【讨论】:

    • 我想出了这一切,这几乎就是我现在想出的(你解释得很清楚)。感谢您的链接以及我与兄弟交谈的方式;)
    猜你喜欢
    • 2017-11-01
    • 2014-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多