【问题标题】:How VoIP apps like Viber, Skype,.. work when user's IP changed?用户 IP 更改时,Viber、Skype 等 VoIP 应用程序如何工作?
【发布时间】:2017-10-13 18:05:26
【问题描述】:

我目前正在研究如何制作 iOS VoIP 应用程序,我想知道 Skype、Viber、Facebook Messengers 的用户 1...如何联系到联系人列表中的其他用户?就我而言,用户可以请求给管理员打电话。然后管理员可以使用他们向服务器请求的 IP 地址回拨给他们。

最大的问题是如果用户连接到 Wi-Fi 来请求调用服务器,应用程序会将他们的 IP 地址发送给管理员。但如果他们必须连接到另一个 Wi-Fi,他们的 IP 地址将与旧的不同。

我不知道如何检查用户的 IP 何时更改。以及如果发生如何更新IP。有没有人遇到过这个问题,你们能给我一些解决这个问题的方法吗?

【问题讨论】:

  • 哦,一个问题有这么多误解...我建议您先阅读IP网络,然后您将能够理解hole punching背后的概念
  • @Lashane 是的,我知道这个问题是非常有误解的。但我不知道如何描述我的问题。简而言之:如何更新用户的 IP 每当它改变时发送到我的服务器?
  • 为每个客户端分配唯一的id,每个客户端都会发送心跳,每个心跳包都会有ip

标签: ios voip ott


【解决方案1】:

为此,您必须配置很多东西。

通常 Skype、Viber、Facebook Messenger 配置如下。

  • 理想情况下,应该有针对特定 IP 的目标。
  • 在视频通话中获得连接的端点必须配置并来自服务器端
  • https://www.vidyo.com/ 是一个非常好的平台,虽然有 C++ 的 SDK,所以在任何技术中你都可以轻松配置它
  • 要了解在线/离线用户,更好的方法是websocket
  • 用户列表也将基于 websocket 或 API 响应
  • websocket 的好平台 - https://github.com/tidwall/SwiftWebSocket
  • Pushkit 也是必需的,当应用程序处于终止(终止)状态时,使用带有本地通知的 Pushkit 静默通知,您可以通知用户来电

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-04
    • 1970-01-01
    • 2011-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-11
    • 1970-01-01
    相关资源
    最近更新 更多