Global Call API for HMP on Windows Programming Guide — August 2006 39
Call State Models
3.4 Basic Call Control in Asynchronous Mode
This section describes and illustrates the basic call model and state transitions for call control in
asynchronous mode. This section also describes the process for call establishment for both inbound
and outbound calls and call termination in the asynchronous mode.
The procedures for establishing and terminating calls in the asynchronous mode are described in
the following sections:
Inbound Calls in Asynchronous Mode
Outbound Calls in Asynchronous Mode
Call Termination in Asynchronous Mode
Note: For E1, T1 and ISDN technologies, the Advanced Call Model includes call states associated with
holding, retrieving and transferring calls. See Section 3.5, “Advanced Call Control with Call Hold
and Transfer” for more information.
Caution: In general, when a function is called in asynchronous mode, and an associated termination event
exists, the gc_Close() function should not be called until the termination event has been received.
Otherwise, the behavior is undefined.

3.4.1 Inbound Calls in Asynchronous Mode

This section describes how calls are established and shows call scenarios for asynchronous inbound
calls. The following topics describe the processing of inbound calls in asynchronous mode:
Inbound Calls in Asynchronous Mode Overview
Channel Initialization
Call Detection
Call Offered
Call Routing
Call Acceptance
Call Establishment
Overlap Receiving (for E1, T1, and ISDN technologies only)
Call Failure
Abandoned Calls
Inbound Call Scenarios in Asynchronous Mode

3.4.1.1 Inbound Calls in Asynchronous Mode Overview

Figure 4 illustrates a Basic Inbound Call Model, which shows the call states associated with
establishing a call in asynchronous mode. All calls start from a Null state. The call establishment
process for inbound calls is shown in Figure 4.
See Table6, “Asynchronous Inbound Call State Transitions”, on page 41 for a summary of the call
state transitions.