Can CallKit (Call Directory Extension) identify and block cellular calls - ios

Firstly I am new to iOS development and I have extensively gone over the little documentation and tutorials there are of Apples CallKit framework, but I cannot figure out if this framework can actually block cellular calls or just VoIP calls?
The question is as simple as that, I need to know if CallKit can be used to block cellular calls, when I have predefined a list of telemarketers that use their mobile phones to call people in my country. I am just wondering if someone can give me a clear cut answer and then I could move on with my life, without having to waste more time, trying to get the CallKit to recognize incoming cellular calls.
Thanks!

Yes, you can block incoming calls using a CallKit extension

Related

How to implement callkit with connectycube on cordova ios application

Dear Connectycube Team,
I hope this email finds you well.
Our company has integrated Connectycube into our application, which primarily relies on video calling for communication between users and service providers. To ensure a seamless user experience, it's imperative that the video calling system is robust and reliable.
Unfortunately, our development team is facing challenges in making the system highly robust and 100% reliable. The issue lies in the connection dropping when the application is killed or the phone is locked.
issue: We are trying to integrate connecticube onto cordova app. We are using callkit to implement native incoming screen. The issue is that whenever the app is killed or the phone's screen is locked, accepting the call on callkit leads to failure since the accept call function gets called before the connecticube oncall event listener is called.
I would like to request a call with your technical team to discuss this matter and receive any insights or recommendations that could improve the video calling system.
Thank you for your assistance.
Best regards,
Kanhu
Once we receive incoming call using callkit and the user accepts the call, we try to send the accept call command to connectycube. But since the oncall event is not fired immediately, we create a callback loop to wait for the oncall event to get fired. This works sometimes but fails most of the time. Is there any other way ro achieve the accept call functionalities using callkit and connectycube on cordova.

iOS + How to answer System call using an App from wearable device

First of all, this is not about VoIP.
Requirement: The user taps on a wearable device to receive an incoming call, just like FitBit.
I have tried CallKit's CXProvider and its delegate but it seems only work with VoIP related apps.
How we can answer the call using an app? I saw in FitBit wearable it is allowed to receive an incoming system call.
Spend a whole day to search an answer not able to figure it out. Please don't suggest private APIs.

CallKit without VOIP

Please let me clear, is it possible to integrate CallKit without using VOIP?
What I want to achieve is to get call history from iPhone. and I know it is not possible. So I want to create my own history with the help of CallKit. For this purpose I need following:
I want to detect incoming call (not voip)
Outgoing call (not voip)
In all states - background, foreground, not running, suspended
Call duration
Can we do this with the help of CallKit or is there any other workaround?
Note: It is not about VOIP Apps
is it possible to integrate CallKit without using VOIP?
I would say yes, SpeakerBox (the Apple CallKit example) doesn't use VoIP.
https://developer.apple.com/library/archive/samplecode/Speakerbox/Listings/Speakerbox_SpeakerboxCall_swift.html
is it possible to integrate CallKit in all states - background, foreground, not running, suspended without using VOIP?
No, if the app is suspended or not running you can't detect an incoming call.
For case of CallDuration in active mode can be traceable by using callkit. Let me know, if you are only interested to know Call Duration. I can give full detail.
Other all cases that you mentioned are not possible to trace, unless your phone is jailbroken.

How to block incoming calls for a few minutes in iOS application?

How to block the incoming calls for a few minutes in iOS application?
In my iOS application I want to block the incoming calls when the user is attending the video interview. How can I achieve this?
Check the CallKit framework
The CallKit framework provides programmatic access to VoIP
functionality, as well as call blocking and identification.
Refer This Link : https://developer.apple.com/reference/callkit
It's clearly forbidden for a third-part app to block incoming
calls.However you can use CallKit to block unwanted calls. Your app
should be able to add blocked numbers.The reason Apple doesn't allow
you to block it is because there would be a lot of abuse and Malware
that would disturb user experience.
iOS doesn't let you generically block all calls coming in. in iOS 10 with CallKit, you can block specific numbers (documentation here), but you can't block all numbers for a given time

IOS - How to block all incoming calls?

Can anyone suggest me is there a way to block all incoming calls for a while? or at least can I put my phone into silent pragmatically ? Please suggest
No. Simply you cannot do that. There is no public API is available to do that. Your app will be in sandbox mode. You cannot access them in anyway.
Now it can be done from iOS 10 and above using the CallKit framework upto a certain amount. The numbers we provide can be blocked. If you want to block all incoming calls, just use Airplane mode.
The CallKit framework provides programmatic access to VoIP functionality, as well as call blocking and identification.

Resources