CallKit Video button disabled

I have integrated CallKit successfully and I'm trying to handle the video button. In some devices, I get the enabled video button and can request to open a video connection. But for some devices, I get a disabled video icon. What could be the reason for that?

private lazy var provider: CXProvider = {
    let configuration = CXProviderConfiguration()
    configuration.supportsVideo = true
    configuration.maximumCallGroups = 2
    configuration.maximumCallsPerCallGroup = 4
    configuration.includesCallsInRecents = false
    configuration.supportedHandleTypes = [.generic]
    return CXProvider(configuration: configuration)
}()

func reportIncomingCall() {
    let uuid = UUID()

    let update = CXCallUpdate()
    update.supportsGrouping = true
    update.supportsHolding = true
    update.remoteHandle = CXHandle(type: .generic, value: "Name")
    update.hasVideo = true // or false

    provider.reportNewIncomingCall(with: uuid, update: update) { [weak self] error in
      // handle 
    }
}

Note: Whatsapp has the enabled video button in the same device.

Replies

Same issue here, would really appreciate any help.

Below Code Not work: let configuration = CXProviderConfiguration() configuration.supportsVideo = true

I ran into this issue with iOS 17 devices - If the call was answered from the Lock Screen, the video button is disabled. Is this your experience also?

Add a Comment