A telephony call.


@interface CXCall : NSObject


You don’t instantiate CXCall objects directly. Instead, CXCall objects are created by the telephony provider when an incoming call is received or an outgoing call is initiated.

Each CXCall object is uniquely identified by a UUID. You primarily interact with calls by passing their unique identifiers to CallKit APIs. For example, to place a call on hold, you create an instance of CXSetHeldCallAction with initWithCallUUID:onHold: passing the UUID of the call and YES, create a CXTransaction object containing the action, and then pass the transaction to an instance of CXCallController using the requestTransaction:completion: method.

You can use the CXCallObserver managed by a CXCallController to access CXCall instances for active calls using the calls property, or provide an object conforming to the CXCallObserverDelegate protocol to be notified anytime a call is updated.


Accessing Call Attributes


The unique identifier for the call.


A Boolean value that indicates whether the call is outgoing.


A Boolean value that indicates whether the call has connected.


A Boolean value that indicates whether the call has ended.


A Boolean value that indicates whether the call is on hold.

Comparing Calls

- isEqualToCall:

Returns a Boolean value that indicates whether a given call is equal to the receiver.


Inherits From

See Also

Call Information


A programmatic interface for an object that manages a list of active calls and observes call changes.


A collection of methods that are called by a call observer object when a call changes state.


A means by which a call recipient can be reached, such as a phone number or email address.

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.

Learn more about using Apple's beta software