如何创建将在 iPhone 上的 VoIP 应用程序上拨打 SIP 地址的链接
我想正确标记我网站上的所有电话号码,以便它们可点击。 该解决方案已在SO上提供:一般情况下和专门针对 iPhone。 然而,当针对 iPhone 时,这会唤起普通的电话应用程序。
如果安装了的话,是否有可能有一个调用 SIP VoIP 应用程序的链接(我猜在 PC 上,电话链接总是调用 VoIP 应用程序,因为它们根本没有内置普通电话...)
I want to properly markup all the phone numbers on my website so that they are clickable.
The solution has been offered on SO: in general and specifically for an iPhone.
However when targeting the iPhone this evokes the normal phone application.
Is it possible to have a link that invokes the SIP VoIP application if one is installed( I guess on pc's a tel link always invokes a VoIP application, because they simply don't have regular phones built in...)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是可能的,但有一些限制。
任何应用程序都可以注册 自定义 URL 方案。但此 URL 方案“必须”是唯一的。例如 my-cool-sip-app:...,另一个应用程序可以有像 super-duper-sip-app: 等方案。您可以检查是否安装了具有所选 URL 方案的应用程序 (UIApplication, canOpenURL: )。
或者,多个应用程序可以具有相同的自定义 URL 方案,例如在您的情况下为 sip:...。但是,如果您安装了 2 个或更多具有相同方案的应用程序,您就无法确定哪一个应该处理 sip:... URL。苹果的文档:
有效的 SIP URL 为:
地址。
传输指定为 TCP 的 URL。
如果没有则默认传输为 UDP
已指定。
网址。
包含全球电话号码的 URL 和
指定网关。
[电子邮件受保护];user=电话 SIP URL
具有全球电话号码格式和
指定网关。
因此,如果您安装了 SIP 应用程序,您应该尝试上述 SIP URL 之一。任何 SIP 应用程序都应该支持它。
这是一个 Acrobits Softphone 应用程序,您可以在其中可以看到(在描述中)它支持软件电话:号码 URL 方案。如果您只想使用这个应用程序,这很好,但对最终用户来说却很糟糕,因为其他开发人员不愿意通过 AppStore 并添加对除 sip 之外的所有自定义 URL 方案的支持:...
我的答案是 - 尝试 sip :...如果您有良好的 SIP 应用程序,它应该可以完美地处理这些链接。
It's possible, but with some limitations.
Any application can register custom URL scheme. But this URL scheme "must" be unique. For example my-cool-sip-app:..., another application can have scheme like super-duper-sip-app:, etc. You can check if an application with selected URL scheme is installed or not (UIApplication, canOpenURL:).
Or, several applications can have same custom URL scheme, in your case sip:... for example. But if you have 2 or more applications with the same scheme installed, you can't say which one should handle sip:... URL. Apple's documentation:
Valid SIP URLs are:
address.
URL with transport specified as TCP.
The default transport is UDP if none
is specified.
URL.
URL with global phone number and
specified gateway.
[email protected];user=phone SIP URL
with global phone number format and
specified gateway.
So, if you have a SIP application installed, you should try one of the mentioned SIP URLs. Any SIP application should support it.
Here's an Acrobits Softphone application where you can read (in description) that it supports asoftphone:number URL scheme. It's good if you want to use just this application, but it's bad for the end user, because other developers are not willing to go through AppStore and add support for all custom URL schemes other than sip:...
My answer is - try sip:... and if you have good SIP application, it should handle these links flawlessly.