2010-04-20 86 views
0

据我所知,从应用程序拨打电话的唯一方法是使用tel:// URL方案,该方案启动本地电话应用程序。但即使在没有WIFI可用的情况下,App Store上提供的Truphone应用也可以进行VOIP呼叫。他们表示,他们通过向其服务器发起GSM呼叫并通过因特网从该处路由VOIP数据包来实现。“Truphone Anywhere”<TM>如何在iPhone上拨打GSM电话?

Rerference:http://blog.truphone.com/2008/12/truphone-on-the-iphone-now-works-without-wi-fi.html

我怎么做我的应用程序类似的东西?

回答

1

就手机的小区硬件而言,这不是一个呼叫。它只是一个2路数据流。他们正在激活麦克风并对其输入进行编码并将其发送到服务器,同时他们接收另一个流并在扬声器上播放。他们的服务器然后解码流,然后将其连接到正常的电话系统,以便您可以与不使用其服务的人交谈。

是否允许用户联系用户群以外的人?如果是这样,那就需要你建立一个服务器来解码你的数据流,然后找到一个具有API的VOIP提供商,这样你的服务器就可以对它们进行流式传输。这是可能的,但它的成本。

如果您只希望用户使用此功能,可以免费使用,但与之前的选项几乎相同,只需取出VOIP提供商即可。

+0

你是说他们打开某种GSM插座并传输语音数据?此外,他们说,用户将收取通过GSM拨打电话。所以我觉得硬件必须考虑这个问题。请注意,我没有亲自使用该应用程序。让我实际验证它在使用和回来时的外观。 – Plumenator 2010-04-21 08:38:36

+0

电话的操作系统/硬件最难被认为是“通话”。没有任何公开的API允许应用程序在不离开应用程序的情况下进行“通话”。此外,他们的应用程序可以在iPad和iPod touch上运行,并且不支持手机通话。 IE将无法使用无线提供商提供的语音分钟。对于您的无线提供商,它就像您的手机发送/接收的任何其他数据一样。因此,如果您支付x数量的数据并且VOIP导致您超过该数据,您可以支付其使用费用。 – jamone 2010-04-21 12:18:19

+0

对于iPhone OS上的任何VOIP应用程序,他们并不关心您所处的网络类型:WiFi,EDGE或3G。该应用程序只关心是否可以连接互联网,如果可以,则打开与Truphone服务器的网络连接。之前在EDGE/3G上使用VOIP的唯一原因是因为手机供应商不希望人们在没有使用语音分钟的情况下使用手机进行语音通话,因此他们让Apple禁止使用3G的VOIP应用。 – jamone 2010-04-21 12:22:00