Platform SDK: TAPI

CALL_STATE

The CALL_STATE enum is used by the ITCallInfo::get_CallState and ITCallStateEvent::get_State methods.

typedef enum CALL_STATE
{
  CS_IDLE,
  CS_INPROGRESS,
  CS_CONNECTED,
  CS_DISCONNECTED,
  CS_OFFERING,
  CS_HOLD,
  CS_QUEUED
} CALL_STATE;

Members

CS_IDLE
The call has been created, but Connect has not been called yet. A call can never transition into the idle state.
CS_INPROGRESS
Connect has been called, and the service provider is working on making a connection. This state is valid only on outgoing calls. This message is optional, because a service provider may have a call transition directly to the connected state.
CS_CONNECTED
Call has been connected to the remote end and communication can take place.
CS_DISCONNECTED
Call has been disconnected. There are several causes for disconnection. See the table of valid call state transitions below.
CS_OFFERING
A new call has appeared, and is being offered to an application. If the application has owner privileges on the call, it can either call Answer or Disconnect while the call is in the offering state. Current call privilege can be determined by calling ITCallInfo::get_Privilege.
CS_HOLD
The call is in the hold state.
CS_QUEUED
The call is queued.

Following is a table of all valid call state transitions.

From State To State
CS_IDLE INPROGRESS
CS_INPROGRESS CONNECTED
FAILED
CS_CONNECTED HOLD
DISCONNECTED
CS_DISCONNECTED nothing – call should be freed
CS_OFFERING CONNECTED
DISCONNECTED
CS_HOLD CONNECTED
DISCONNECTED
CS_QUEUED CONNECTED
DISCONNECTED

Requirements

  Windows NT/2000: Requires Windows 2000.
  Version: Requires TAPI 3.0 or later.
  Header: Declared in Tapi3.h.

See Also

ITCallInfo::get_CallState, ITCallStateEvent::get_State