【问题标题】:Integrating PubNub WebRTC SDK for iOS为 iOS 集成 PubNub WebRTC SDK
【发布时间】:2015-09-10 11:21:41
【问题描述】:

我一直坚持为 iOS 应用程序集成 PubNub WebRTC SDK。

它是一个 JavaScript SDK。如何将它与我的 iOS 应用程序集成。

提前谢谢.....

【问题讨论】:

  • Mobile Safari 不支持 WebRTC。您必须通过视频流来本地化。您将/仍然可以将 PubNub 用于信号协议(连接/断开设备 - 换句话说,响铃/挂断)。
  • Perch 公司制作了一个本地 WebRTC iOS 库(因为 Apple/Safari 不支持它)。看看perch.co/blog/perchrtc-releasedgithub.com/perchco/perchrtc

标签: ios objective-c sdk pubnub


【解决方案1】:

这并不直接回答 Objective-C 的实现,但它可能有助于理解整体解决方案和 PubNub 所扮演的角色。

为什么选择 PubNub? - 发信号

WebRTC 不是一个独立的 API,它需要一个信令服务来协调通信。在建立连接之前,需要在调用者之间发送元数据。此元数据包括以下信息:

  • 用于打开和关闭连接的会话控制消息
  • 错误消息
  • 编解码器/编解码器设置、带宽和媒体类型
  • 建立安全连接的密钥
  • 主机 IP 和端口等网络数据

一旦发生信号,视频/音频/数据就会直接在客户端之间使用 WebRTC 的 PeerConnection API 进行流式传输。这种点对点直接连接允许您流式传输高带宽稳健数据,例如视频。 HTML5Rocks provides a great guide on all things WebRTC(无需阅读,总结如下)。

PubNub 让这个信号变得异常简单,此外,让您能够使用 WebRTC 应用程序做更多事情。

PubNub 不是什么

PubNub 不是 WebRTC 的服务器。信令服务指定视频聊天可以流式传输的 ICE 服务器。可以使用google提供的公共STUN服务器,但不是很可靠。绕过防火墙需要 STUN 或 TURN 服务器,否则聊天将失败。许多服务提供信令和服务器的“总包”合二为一,而不是 PN。我们的受众是想要构建自己的、更加定制化的服务的人。

XirSys

XirSys already have a WebRTC-PubNub demo using rails on their GitHub。他们托管 STUN 和 TURN 服务器来满足 WebRTC 的需求。

开源

有一些开源 STUN 和 TURN 服务器项目可以轻松下载和托管:

  • Amazon AWS VM:预先准备好部署
  • RFC5766 TURN:谷歌代码,TURN 服务器
  • 一对多:关于 MCU 的说明,用于一对多媒体服务器。对于拥有数百名用户的大型群聊和直播是必需的。

如您所见,我们不提供音频/视频流服务,但如果您正在构建此解决方案,PubNub 是将其与信号协议绑定在一起的必要部分。

AndroidRTC

这是我们实习生的PubNub AndroidRTC example

【讨论】:

  • 想知道否决票的原因,以便为您提供更好的答案。
猜你喜欢
  • 2016-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多