David Dong
David Dong

Reputation: 111

Error while requesting a transaction with CXEndCallAction

While requesting a CXTransaction with a CXEndCallAction, the transaction fails with error code Error Domain=com.apple.CallKit.error.requesttransaction Code=4 "(null)"

I was able to make a CXStartCallAction successfully. Does anyone know what this error means?

Upvotes: 7

Views: 9115

Answers (2)

malex
malex

Reputation: 10096

If you use

func reportCall(with UUID: UUID, updated update: CXCallUpdate)

to update CXStartCallAction with CXCallUpdate you MUST use action.uuid, not action.callUUID.

Later leads to unknownCallUUID error on call ending. In this case

func provider(_ provider: CXProvider, perform action: CXEndCallAction)

does not fire.

Upvotes: 3

Stuart M
Stuart M

Reputation: 11588

The error codes for CallKit are defined in <CallKit/CXError.h>, and in iOS 10 Seed 4, error code 4 for domain com.apple.CallKit.error.requesttransaction is defined as:

CXErrorCodeRequestTransactionErrorUnknownCallUUID = 4,

This indicates that the call UUID for the requested CXEndCallAction did not correspond to an known call. I recommend confirming that the UUID set on the CXEndCallAction matches an existing call.

Upvotes: 14

Related Questions