gpt4 book ai didi

javascript - WebRTC 在 iOS 中与 OWN 服务器的集成

转载 作者:行者123 更新时间:2023-11-30 16:01:27 25 4
gpt4 key购买 nike

是否可以将 WebRTC 概念集成到 iOS 应用程序中,而无需在我们自己的服务器 URL 中使用第三方 API。
如果可能,请告诉我我们如何配置连接,使用后端 API 或者我们可以从我们的应用程序本身配置它。

我们的 Web 团队已经将它集成到浏览器中(通过使用 Java Script),现在我们正在尝试将这个概念集成到 iOS 中。

最佳答案

您可以自己制作signaling server允许客户相互协商通话。你想如何做到这一点取决于你,但我们使用 node.js为了这。我们的应用程序连接到我们的 node.js server通过 TCP socket .

当我们的应用进行调用时,它会向我们的 signaling server 发送一个创建信号.服务器然后发送 voip push给被叫方(当用户登录时,应用程序注册 voip push notifications 并将它的 device id 发送到 signaling server )。被叫方连接到服务器,客户端可以开始发送报价并回答 SDPICE candidates .

这是我们用于 WebRTC 的类部分来电<Link removed> .您可以将这些文件放入项目中并扩展 viewcontroller在上面执行 delegation .对于 signaling你将不得不设计自己的系统,但任何体面的程序员都应该能够创建一个简单的 signaling server .

添加library我向你的项目推荐cocoapods .然后用它来添加 library :

target 'your_project_here' do
pod 'libjingle_peerconnection'
post_install do |installer_representation|
installer_representation.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['ONLY_ACTIVE_ARCH'] = 'NO'
config.build_settings['VALID_ARCHS'] = ['armv7', 'arm64']
end
end
end
end

或者关注the guide提供编译library自己。

您可以阅读有关使用 WebRTC 的更多信息原生 here .这些图表显示了您必须执行信号的顺序。这并不难,当客户端 A 调用客户端 B 时,基本上你会这样做:

  • A 创建对等连接工厂
  • A 创建对等连接
  • A 创建本地媒体流
  • A 创建一个要约 SDP
  • A 将报价设置为本地 SDP
  • A 开始生成 ICE 候选人
  • A 在 ICE 候选人到来时将他们发送给 B *
  • A 将报价发送给 B *
  • B 创建对等连接工厂
  • B 创建对等连接
  • B 将报价设置为远程 SDP
  • B 创建本地媒体流
  • B 创建一个答案 SDP
  • B将答案设置为本地SDP
  • B 开始生成 ICE 候选人
  • B 在 ICE 候选人到来时将他们发送给 A *
  • B将答案发送给A *
  • A 将答案设置为远程 SDP

* 如果你使用我链接的类,你只需要担心这几点

请注意,此类只是一个起点,它不允许多用户调用(仅 2 个对等点)并且没有太多功能。

关于javascript - WebRTC 在 iOS 中与 OWN 服务器的集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37672080/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com