# nccRetrieveCall

Retrieves a held call.

#### Prototype

DWORD nccRetrieveCall ( NCC_CALLHD callhd, void *retrieveparms )

Argument | Description
callhd | Handle of the call being retrieved.
retrieveparms | Pointer to a protocol-specific NaturalAccess call retrieve parameter structure. Protocol-independent applications can use default parameters by passing NULL for this argument. See the protocol-specific documentation for details.

#### Return values

Return value | Description
SUCCESS |
CTAERR_INVALID_HANDLE | The call handle is not valid. It may have been released.
CTAERR_INVALID_STATE | The line is not in the appropriate state to invoke this function.
CTAERR_SVR_COMM | A server communication error occurred.
NCCERR_INVALID_CALL_STATE | The call is not in the connected state. The protocol requires a call to be in the connected state before it can be put on hold or retrieved.

#### Events

Event | Description
NCCEVN_ CALL_RETRIEVED | The call was successfully retrieved.
NCCEVN_RETRIEVE_REJECTED | The request to retrieve a call was rejected. If the NCC_CAP_HOLD_IN_ANY_STATE bit is set in the capabilitymask returned by nccQueryCapability, depending upon what state the call is in, you may receive other events that are valid in that state. Refer to the event/call state chart in NCC events and call states for details.

#### Details

nccRetrieveCall retrieves a call previously placed on hold using nccHoldCall. The call becomes active again. The line state changes to active.

Some protocols do not support the capability to hold or retrieve calls. The application can determine if the protocol supports call hold or call retrieval by examining the NCC_CAP_HOLD_CALL bit in the capabilitymask returned by nccQueryCapability.

#### See also

nccTransferCall