通过本地呼叫UI进行VOIP拨出电话

时间:2018-12-31 17:12:49

标签: ios voip callkit

每当我在VOIP应用程序中收到来电时,我都可以在本机iPhone通话UI上看到日志。

我想通过单击上一个来电从UI的本机iPhone Callog拨出电话。就像它适用于WhatsApp,Skype,视频群聊等。

怎么可能打出电话?

下面是我为传入呼叫编写的方法:

protected $fillable = [
    'name', 'email', 'password','username',
    'lastname','firstname','contact','birthday','status'
];

我知道还有另一种拨出电话的方法。但是我不知道何时打电话:

-(void)reportIncomingCall:(NSUUID*)UDID handle:(NSString*)handle;
-(CXCallController*)startCall:(NSUUID*)UDID handle:(NSString*)handle
-(void)connectCallWithCallController:(CXCallController*)controller

1 个答案:

答案 0 :(得分:1)

在本地iOS调用日志中点击某个项目时,将调用应用程序委托的continueUserActivity函数。我的实现在Swift中看起来像这样:

func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void) -> Bool {

    self.startCallHandle = userActivity.startCallHandle
    // Cache call handle here, and make call using cached call handle 
    // when applicationDidBecomeActive is called

    return true

}

startCallHandle在NSUserActivity + StartCallConvertible.swift文件中定义,如SpeakerBox示例项目所示。

在应用程序的Info.plist中,您必须具有INStartAudioCallIntent和/或INStartVideoCallIntent。再次,请参见SpeakerBox示例应用程序以获取详细信息。