In situations where the app receives a VoIP push, and the user starts to answer by sliding, the call is initiated and the timer starts. However, due to network issues, the app's call may not be fully ready, resulting in a delay of 5-10 seconds before the actual call begins. Is there a way to display a "loading" or "connecting" indicator on the CallKit interface during this wait time?
callkit Is there a way to display a "loading" or "connecting" indicator on the CallKit interface during this wait time?
In situations where the app receives a VoIP push, and the user starts to answer by sliding, the call is initiated and the timer starts. However, due to network issues, the app's call may not be fully ready, resulting in a delay of 5-10 seconds before the actual call begins. Is there a way to display a "loading" or "connecting" indicator on the CallKit interface during this wait time?
Yes, you have a few different tools:
-
You can delay fulfilling the CXAnswerCallAction until the call is actually answered. There is a timeout on the action (which you can check through CXAction) but the timeout is currently fairly long (~60s).
-
Your app can update the call metadata dynamically using "reportCall(with:updated:)". So, for example, you can use the localizedCallerName (or other fields) to provide status as well.
__
Kevin Elliott
DTS Engineer, CoreOS/Hardware