- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
现在我正在尝试将 CallKit 集成到现有的 VoIP 应用中。
根据 API,通过 CallKit 报告的每个调用都有一个与之关联的句柄。我们应用程序的用户可以进行音频和视频通话,这些通话是在账户之间建立的,他们没有任何关联的“电话号码”,因此我们将通话句柄类型设置为“通用”,并使用一些特殊的账户标识符作为这些句柄的值.这些用户帐户对用户不友好,不应显示在 UI 中。
因此自然而然地希望在通话记录中显示真实的用户名。这是我们遇到障碍的地方。
根据 WWDC session ,社交资料将成为集成 CallKit 的 VoIP 应用程序之间的一种链接,所以我的问题是如何创建社交资料并将其与 Callkit API 链接?
在检查了几个 VoIP 应用程序后,我认为使用这些信息创建新联系人的方法不正确,因为我在联系人中找不到它们。
任何意见/建议/帮助将不胜感激!!!
提前致谢。
最佳答案
它的回复晚了,但它可能对 future 的观众有所帮助。您可以在 ProviderDelegate 中欺骗它。无论您有什么Generic 或PhoneNumber,只需使用您的句柄开始调用。并通过开始调用操作向您发送被调用者姓名,如
public func startCall(handle: String,contactIdentifier:String/*Your Callee Name*/, video: Bool = false) {
let handle = CXHandle(type: .Generic, value: handle)
let startCallAction = CXStartCallAction(callUUID: NSUUID(), handle: handle)
startCallAction.video = video
startCallAction.contactIdentifier = contactIdentifier //Callee name goes with action so we can get in Delegate
let transaction = CXTransaction()
transaction.addAction(startCallAction)
requestTransaction(transaction)
}
在那个主要技巧之后是在 ProviderDelegate Like
中的 StartCallAction 中更新您的调用public func provider(provider: CXProvider, performStartCallAction action: CXStartCallAction) {
let update = CXCallUpdate()
update.remoteHandle = action.handle
update.hasVideo = action.isVideo
update.localizedCallerName = action.contactIdentifier //Here contactIdentifier is assigned callee name on start call
self.provider.reportCall(with: action.callUUID, updated: update)
// Rest of your code
}
对于来电设置CXCallUpdate的localizedCallerName
在你的通话记录中它会显示类似
关于ios - 如何使用 CallKit API 映射社交资料,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39957242/
我想开发一个 SOS 应用程序。当我尝试使用 URL 模式 openURL() 时,它会显示一个警报,但我的要求是在尝试调用时连接调用而没有任何警报或弹出窗口。所以我找到了一个使用 CallKit 的
我正在使用 callkit 来识别电话号码。 它给我错误:操作无法完成。 (com.apple.CallKit.error.calldirectorymanager 错误 1.) override
我正在使用 Twilio 语音快速入门代码 https://github.com/twilio/voice-quickstart-swift .当我进行客户端对客户端调用时,调用无法接通。虽然 Cal
我已经尝试了很多使用 CallKit 在 ios swift 上启动传出调用的示例。我在功能中启用了 VOIP。在所有情况下,它都会失败: callController.request(transac
我的 iOS VoIP 应用程序使用 CallKit 来支持 native 调用集成功能。第一次启动时一切正常,但如果我重新初始化 CXProvider 和 CXCallController(为了禁用
我制作了 VOIP 应用程序。为此,我将 PushKit 和 Callkit 与 pjsip 结合使用。 当后台应用程序收到调用通知时,我打开 Callkit 屏幕,然后单击接受调用后使用 pjsip
此错误仅出现在 iOS 13.3.1 中。它不会出现在 iOS 13.3.0 或更早版本上。 如果应用程序在前台并调用 CXCallController.request,则它工作正常。但是一旦我将应用
我开发了一个 VoIP 应用程序。我现在正在与 callkit 框架集成。一切都很好,除了 session 。 情况如下: 1.) 我打电话。 2.) 保留第一个调用并调用另一个。 3.) 我点击 s
我在 VOIP 应用程序中使用 CallKit。一切正常,除了在拨出电话后的最近通话列表中,它只显示号码,即使号码保存在电话簿中。 例如,电话簿中有一个名为“John”的联系人。现在,如果从应用程序拨
假设一个应用程序一次支持两个调用。第一个电话已接通,第二个电话打进来。一个得到“结束通话和接听电话”、“拒绝”、“保持通话和接听电话”按钮。 如果是“挂断接听电话”,则表示结束已接通的通话并接听新来电
我正在开发 CallKit 应用程序,我遇到一个问题,在 CallKit 屏幕上“交换”调用时,调用保持无法重新启动音频,直到用户返回到应用内调用屏幕。我可以通过更新来绕过这个: supportsHo
我已经使用 pjsip 库开发了 ios voip 应用程序。在这个应用程序传入 View 中,我在这里使用带有 pushkit 的 callkit 音频和麦克风在 ios 10.2 版本中不起作用
我使用 CallKit 开发了一个 VoIP 应用。 如果用户收到两个来电并且他/她接听其中一个,另一个将关闭。 例如报告两个来电: reportInComingCall uuid: 70D506FB
我已成功安装扩展CXCallDirectoryProvider,以识别预先添加的电话条目。我在网上找到的文档相当不够。尽管如此,我还是成功地完成了必要的电话条目的初始导入。通过重写 func begi
是否可以使用 CallKit 获取所有 CallKit 扩展程序中已阻止的所有电话号码的列表? 最佳答案 不,这是不可能的。 CallKit 扩展只能将号码添加到列表中。没有用于检索被阻止号码的 AP
CallKit作为iOS10的新特性,功能强大。屏幕锁定时,如何禁用“视频”按钮?喜欢图片底部: example 最佳答案 您必须将 CXProviderConfiguration 中的 suppor
我正在使用调用套件框架进行调用,请帮助我 如何在应用程序在前台和调用过程中发生来电时删除调用套件 ui,我在后台获取调用套件 ui。 最佳答案 您可以在向 CXProvider 报告新来电之前检查应用
我正在尝试在 Swift 中使用 CallKit 来识别调用者。 我正在寻找一种通过发出 URL 请求来识别调用者的方法。 例如:+1-234-45-241 给我打电话,我希望它向 mydomain.
我现在正在玩 CallKit。我已经下载了 SpeakerBox 示例,我有自己的示例,它使用 SpeakerBox 中的自定义 SIP 和 WebRTC 以及 CallKit 代码。 我注意到在 S
我正在尝试在我的 VoIP 应用程序中实现 Apple CallKit。我正在使用 Xcode 9.2、Swift 4.0.3、iOS 10.3。问题是我不知道该怎么做。我试图在网络上搜索教程,但我没
我是一名优秀的程序员,十分优秀!