CALL_STATE enumeration (tapi3if.h)

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

Syntax

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

Constants

 
CS_IDLE
The call has been created, but
Connect has not been called yet. A call can never transition into the idle state. This is the initial state for both incoming and outgoing calls.
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.
CS_LASTITEM

Remarks

Following is a table of all valid call state transitions.

From state To state
CS_IDLE
INPROGRESS
CONNECTED
DISCONNECTED
OFFERING
HOLD
CS_INPROGRESS
CONNECTED
DISCONNECTED
HOLD
CS_CONNECTED
HOLD
DISCONNECTED
CS_DISCONNECTED Nothing—call should be freed
CS_OFFERING
CONNECTED
DISCONNECTED
HOLD
CS_HOLD
CONNECTED
DISCONNECTED
CS_QUEUED
CONNECTED
DISCONNECTED
HOLD

Requirements

   
Header tapi3if.h

See also

ITCallInfo::get_CallState

ITCallStateEvent::get_State