# nccPlaceCall and specifying extended information

With certain CAS protocols, when an application attempts to place a call with nccPlaceCall, extended information can be sent with the call placement request. This information is included in the CAS_PLACECALL_EXT structure which is a component of the NCC_ADI_CAS_PARMS structure:

typedef struct
{
DWORD size;
char ANIpresentation;
BYTE redirectingreason;
WORD satellitecircuit;
char redirectingaddr[33];
char carrierid[33];
char pad2[2];
INT16 usercategory;
INT16 tollcategory;
char datetime[8];
char callingname[32];
} CAS_PLACECALL_EXT;

In the function call, the NCC_ADI_CAS_PARMS structure is referenced using the void *protcallparms argument.

The CAS_PLACECALL_EXT structure contains the following fields:

Field | Protocols that use the field | Description
--- | --- | ---
size | All | Size of this structure.
ANIpresentation | MFC, EAM, STA | Set this parameter if ANI presentation is restricted (that is, caller ID information is restricted).
redirectingreason | LPS (with caller ID) | Reason for call redirection (for example, busy, universal, or unanswered).
satellitecircuit | MFC | Set this parameter if there is a satellite link in the circuit.
redirectingaddr | EUC, STA | Redirecting number information (if the call has been redirected from another terminal).
carrierid | FGD, STA | Carrier ID information.
usercategory | MFC, LPS (with caller ID), EAM, R15, STA | The type of the calling party (for example, normal subscriber, operator, pay phone), or the type of call (protocol-specific).
tollcategory | MFC, EAM, STA | Generally the same as usercategory, if supported. It can be different for certain countries using the MFC-R2 protocol.
datetime | STA | Date and time as MMDDhhmm.
callingname | STA | Calling party name.