88 Global Call API for HMP on Windows Programming Guide — August 2006
Call Control
7.2.2 Configuring Default Call Progress Analysis Parameters
Call Progress Analysis (CPA) is characterized by parameters such as CaSignalTimeout (the
maximum time to wait to detect a call progress tone), CaAnswerTimeout (the maximum time that
call analysis will wait for ringback to stop), and others that define CPA behavior. Depending on the
technology you are using, the default values of CPA parameters may be configurable in the
CONFIG file corresponding to the board. If this is the case, the required information is documented
in the corresponding Global Call Technology Guide.
Note: When a voice resource has been attached (using either gc_OpenEx() or gc_AttachResource( )),
by default, the DM3 host runtime library enables the detection of BUSY, RINGING, and SIT tone
(that is, pre-connect call progress), even if Call Progress Analysis (CPA) is disabled in the
CONFIG file. A user who does not want pre-connect call progress, must explicitly use the
gc_SetConfigData( ) function to disable CPA on that line device. Alternatively, the user can attach
the voice resource after the call is connected.
7.2.3 Configuring Call Progress Analysis on a Per Call Basis
To specify call progress analysis behavior, use the gc_MakeCall() function with an associated
GC_PARM_BLK (accessible via the GC_MAKECALL_BLK and GCLIB_MAKECALL_BLK
structures) containing the CCSET_CALLANALYSIS parameter set ID and the
CCPARM_CA_MODE parameter ID with one or more of the following bitmask values ORed
together:
GC_CA_BUSY
Pre-connect busy tone detection
GC_CA_RINGING
Pre-connect ringback tone detection
GC_CA_SIT
Pre-connect special information tone (SIT) detection
GC_CA_FAX
Post-connect fax detection
GC_CA_PVD
Post-connect positive voice detection (PVD)
GC_CA_PAMD
Post-connect positive answering machine detection (PAMD)
While the CCPARM_CA_MODE bitmask offers complete flexibility in terms of the selected
options, not all option combinations make sense. For this reason, the following defines, that can
also be used as values to the CCPARM_CA_MODE parameter ID, identify the most logical and
traditionally used option combinations:
GC_CA_DISABLE
Call progress and call analysis disabled
GC_CA_PREONLY
Busy and Ringing enabled