Table of Contents Index NMS Glossary Previous Page Next Page (Page 24 of 69 in this chapter) Version


adiPlaceSecondCall

Description

Places a second call on a PBX, Centrex, or Centrex-like, line.

Note: This function and all other ADI call control functions have been superseded by the NCC service. For more information, see the Natural Call Control Service Developer's Reference Manual.

Prototype

DWORD adiPlaceSecondCall ( CTAHD ctahd,
char *digitstr,
ADI_PLACECALL_PARMS *parms )

ctahd CTA context handle returned by ctaCreateContext.

digitstr Address of the party to transfer to (for example, the party's extension).

parms Pointer to an ADI_PLACECALL_PARMS structure shown below (NULL uses default parameter values):

typedef struct

{ /* passed with adiStartProtocol() */

DWORD size; /* size of this structure */

DWORD connectmask; /* cause transition to connected */

DWORD disconnectmask; /* cause transition to disconnected */

ADI_CALLPROG_PARMS callprog;

/* call progress analysis parameters */

} ADI_PLACECALL_PARMS;

For the ADI_CALLPROG_PARM structure, refer to adiStartCallProgress. Refer to Appendix D for more details and default values.

Return Values

Events

Details

This function is an extension to the standard call control model. It requests the placing of a second call (in preparation for a transfer) via a PBX, Centrex, or Centrex-like switch. It is only valid from the ADI_CC_STATE_CONNECTED state.

This function causes a transition from the ADI_CC_STATE_CONNECTED state to the ADI_CC_STATE_PLACING2, upon receiving the ADIEVN_PLACING_CALL2 event. Once this event is received, you can expect either an ADIEVN_CALL2_CONNECTED (call succeeded and you are connected to a new party) or an ADIEVN_CALL2_DISCONNECTED (the call failed and you are connected back to the original caller in the ADI_CC_STATE_CONNECTED state).

adiPlaceSecondCall is similar to adiTransferCall, except that a successful call placement (i.e., party answers) connects you to the second call. The ADI service does not complete the transfer automatically. This allows an interactive supervised transfer, and at this point, you can execute any function that is allowed in the ADI_CC_STATE_CONNECTED state, to interact with the new called party. To complete the transfer, call adiReleaseCall, or to return to the original party, call adiReleaseSecondCall.

Call placement, call transfer, and call control are discussed in detail in the ADI Service Developer's Manual.

Some protocols allow you to use adiSetExtendedArgs to set additional arguments to adiPlaceSecondCall. For more information about controlling calls under specific TCPs, refer to the AG CAS for ADI Service Installation and Developer's Manual.

Note: This function is not available when using the NOCC protocol.

See Also

adiPlaceCall, adiReleaseSecondCall, adiReleaseCall, adiSetExtendedArgs, adiTransferCall

Example

Refer to the xferpbx demonstration program.



Table of Contents Index NMS Glossary Previous Page Next Page (Page 24 of 69 in this chapter) Version


Want to send us feedback on our documentation? Email: Tech_Pubs@nmss.com
Copyright © 2000, Natural MicroSystems, Inc. All rights reserved.