2.2.3.1.31 LINECONNECTEDMODE_Constants

The LINECONNECTEDMODE_Constants are bit-flag constants that describe different substates of a connected call. A mode is available as a call status to the application after the call state transitions are connected and within the LINE_CALLSTATE packet indicating the call is in LINECALLSTATE_CONNECTED. These values are used when the call is on an address that is shared (bridged) with other stations, primarily electronic key systems.

The following constants are present in TAPI versions 1.4, 2.0, 2.1, 2.2, 3.0, and 3.1.

Constant/value

Description

LINECONNECTEDMODE_ACTIVE

0x00000001

Indicates that the call must be connected at the current station (the current station is a participant in the call). If the call state mode is 0, the application assumes that the value is "active" (which would be the situation on a non-bridged address). The mode can switch between ACTIVE and INACTIVE during a call if the user joins and leaves the call through manual action. In such a bridged situation, a Drop or Hold packet operation cannot actually drop the call or place it on hold because the status of other stations on the call can govern (for example, attempting to hold a call when other stations are participating is not possible); instead, the call is changed to INACTIVE mode if it remains CONNECTED at other stations.

LINECONNECTEDMODE_INACTIVE

0x00000002

Indicates that the call must be active at one or more other stations, but the current station is not a participant in the call. If the call state mode is 0, the application assumes that the value is active (which would be the situation on a non-bridged address). A call in the INACTIVE state can be joined by using the Answer packet. Many operations that are valid calls in the CONNECTED state are impossible in the INACTIVE mode, such as monitoring for tones and digits, because the station is not actually participating in the call; monitoring is usually suspended (although not canceled) while the call is in the INACTIVE mode.

The following constants are present in TAPI versions 2.0, 2.1, 2.2, 3.0, and 3.1.

Constant/value

Description

LINECONNECTEDMODE_ACTIVEHELD

0x00000004

Indicates that the station must be an active participant in the call, but that the remote party has placed the call on hold (the other party considers the call to be in the onHold state). Typically, such information is available only when both endpoints of the call fall within the same switching domain.

LINECONNECTEDMODE_INACTIVEHELD

0x00000008

Indicates that the station must not be an active participant in the call and that the remote party has placed the call on hold.

LINECONNECTEDMODE_CONFIRMED

0x00000010

Indicates that the service provider received affirmative notification that the call has entered the connected state (for example, through answer supervision or similar mechanisms).

For backward compatibility, it is the responsibility of the service provider to examine the negotiated TAPI version on the line and to not use those LINECONNECTEDMODE_Constants values that are not supported on the negotiated version. Applications that are not cognizant of LINECONNECTEDMODE_Constants will most likely assume that a call that is in LINECALLSTATE_CONNECTED is in LINECONNECTEDMODE_ACTIVE.

The LINECONNECTEDMODE_ACTIVE and LINECONNECTEDMODE_INACTIVE values MUST be used when the call is on an address that is shared with other stations (bridged; for more information, see LINEADDRESSSHARING_Constants), primarily electronic key systems. If the connected call state mode is "active," the call MUST be connected at the current station (the current station is a participant in the call). If the call state mode is "inactive", the call MUST be active at one or more other stations, but the current station MUST NOT be a participant in the call.

If the call state mode is 0, the application SHOULD assume that the value is "active" (which would be the situation on a non-bridged address). The mode can switch between ACTIVE and INACTIVE during a call if the user joins and leaves the call through manual action. In such a bridged situation, a Drop or Hold packet operation can actually drop the call or place it on hold because the status of other stations on the call can govern (for example, attempting to hold a call when other stations are participating is not possible); instead, the call can be changed to INACTIVE mode if it remains CONNECTED at other stations.

Many operations that MUST be valid in calls in the connected state are impossible in the INACTIVE mode, such as monitoring for tones and digits, because the station MUST NOT be actually participating in the call. Monitoring is usually suspended (although not canceled) while the call is in the INACTIVE mode.