Table of Contents Index NMS Glossary Previous Page Next Page (Page 4 of 23 in this chapter) Version


nccAutomaticTransfer

Description

Transfers a call on a PBX, Centrex, or Centrex-like line.

Prototype

DWORD nccAutomaticTransfer ( NCC_CALLHD callhd,
char *digitstr,
unsigned transferwhen,
void *transferparms,
void *mgrcallparms,
void *protcallparms )

callhd Handle for a call that is in the connected state. This call must not be held.

digitstr Pointer to the address of the party to transfer to (the party's extension); must be a NULL terminated string with a maximum of 32 digits.

transferwhen Determines when the call is to be transferred. The value can be:
NCC_TRANSFER_PROCEEDING: After digitstr dialed.
NCC_TRANSFER_ALERTING: When ring detected.
NCC_TRANSFER_CONNECTED: When called party answers.

transferparms Pointer to a protocol-specific CT Access call transfer parameter structure. Specify NULL to use the default values. See the protocol-specific documentation for details.

mgrcallparms Pointer to a manager-specific CT Access call placement parameter structure. Specify NULL to use the default values. See the protocol-specific documentation for details.

protcallparms Pointer to a protocol-specific CT Access parameter structure. Specify NULL to use the default values. See the protocol-specific documentation for details.

Return Values

Events

This event...

Indicates that...

NCCEVN_CALL_HELD

The first call is held

NCCEVN_CALL_RETRIEVED

The transfer failed. The event value field contains one of the NCC_DIS_xxx reason codes indicating why the transfer failed. For a list of possible NCC_DIS_xxx values, see NCCEVN_CALL_DISCONNECTED in
Chapter 9.

NCCEVN_CALL_DISCONNECTED

callhd is in disconnected call state. Receipt of this event with reason code NCC_DIS_TRANSFER indicates successful completion of the automatic transfer. The application should now release this call handle with nccReleaseCall. Note that other protocol-specific errors or reasons for disconnecting may be reported. See your protocol-specific documentation for more details.

Details

This function executes a blind transfer by performing placement of a second call and completing call transfer. This function operates only when the first call handle is in the connected state, or is on hold.

nccAutomaticTransfer works as follows:

  1. The function places the first party on hold and returns NCCEVN_CALL_HELD to the application.

    
    
  2. The function places a second call to the specified address.

    
    
  3. If the placed call reaches the transferwhen stage, the transfer is performed. NCCEVN_CALL_DISCONNECTED is returned, with reason NCC_DIS_TRANSFER, indicating that the transfer succeeded and the first call is in the disconnected call state from the point of view of the application. The application should now invoke nccReleaseCall to destroy the call handle and release resources.

    
    
  4. If the transfer fails, the first call is retrieved from hold and remains in the connected state. NCCEVN_CALL_RETRIEVED is returned, with a value field containing one of the NCC_DIS_xxx reason codes indicating why the transfer failed. For a list of possible NCC_DIS_xxx values, see NCCEVN_CALL_DISCONNECTED in Chapter 9.

Not all protocols support automatic call transfer. The application can determine if the protocol supports this state by examining the NCC_CAP_AUTOMATIC_TRANSFER bit in the capabilitymask returned by nccQueryCapability.

See Also

nccTransferCall



Table of Contents Index NMS Glossary Previous Page Next Page (Page 4 of 23 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.