IOS – How does call blocking app work with conditional call forwarding

callcaller-idios

I'm at the initial stages of researching the development of my own call blocking mechanism for iOS. The goal is to develop a spam blocking app and infrastructure that delivers on some features that are sorely needed. The whole thing, from a development perspective is quite new to me.

Does anybody know how an app like RoboKiller works to route and block incoming calls? My observation is that the RoboKiller service forwards my calls to a managed service which then filters the calls and sends them back to my phone.

I notice that the app adds itself to the "Call Blocking and Identification" extension in iOS. And, the app has the user dial out and turn on conditional call forwarding to what I presume is a RoboKiller phone number. By conditional call forwarding, I mean the app has me dial a phone number using *71,xxx-xxx-xxxx on Verizon service.

If it is only "conditional" forwarding, meaning the call has to go unanswered or the line has to be busy before it forwards, then how is the RoboKiller service forcing calls through their system before redirecting them back to me? Is the app able to block a call from any number using some feature in CallKit that I am overlooking?

My question is specific about how the call is getting routed through a 3rd party service for filtering and then sent back to me, especially when only "conditional" forwarding is used?

Best Answer

RoboKiller uses a combination of carrier network (PSTN) and Voice over IP (VoIP) to deliver calls to your phone. The technology and how calls are received on your phone are determined by the iOS version the device is running when RoboKiller is set up. If you upgrade your iOS version, it is recommended that you disable/deprogram your phone, uninstall, and reinstall RoboKiller to ensure you have the best experience. You can find instructions on how to disable/deprogram RoboKiller in the Settings menu of the RoboKiller app.