Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This structure describes the capabilities of a specified address. The lineGetAddressCapsfunction and the TSPI_lineGetAddressCapsfunction return the LINEADDRESSCAPSstructure.

Syntax

typedef struct lineaddresscaps_tag {
  DWORD
 dwTotalSize;
  DWORD
 dwNeededSize;
  DWORD
 dwUsedSize;
  DWORD
 dwLineDeviceID;
  DWORD
 dwAddressSize;
  DWORD
 dwAddressOffset;
  DWORD
 dwDevSpecificSize;
  DWORD
 dwDevSpecificOffset;
  DWORD
 dwAddressSharing;
  DWORD
 dwAddressStates;
  DWORD
 dwCallInfoStates;
  DWORD
 dwCallerIDFlags;
  DWORD
 dwCalledIDFlags;
  DWORD
 dwConnectedIDFlags;
  DWORD
 dwRedirectionIDFlags;
  DWORD
 dwRedirectingIDFlags;
  DWORD
 dwCallStates;
  DWORD
 dwDialToneModes;
  DWORD
 dwBusyModes;
  DWORD
 dwSpecialInfo;
  DWORD
 dwDisconnectModes;
  DWORD
 dwMaxNumActiveCalls;
  DWORD
 dwMaxNumOnHoldCalls;
  DWORD
 dwMaxNumOnHoldPendingCalls;
  DWORD
 dwMaxNumConference;
  DWORD
 dwMaxNumTransConf;
  DWORD
 dwAddrCapFlags;
  DWORD
 dwCallFeatures;
  DWORD
 dwRemoveFromConfCaps;
  DWORD
 dwRemoveFromConfState;
  DWORD
 dwTransferModes;
  DWORD
 dwParkModes;
  DWORD
 dwForwardModes;
  DWORD
 dwMaxForwardEntries;
  DWORD
 dwMaxSpecificEntries;
  DWORD
 dwMinFwdNumRings;
  DWORD
 dwMaxFwdNumRings;
  DWORD
 dwMaxCallCompletions;
  DWORD
 dwCallCompletionConds;
  DWORD
 dwCallCompletionModes;
  DWORD
 dwNumCompletionMessages;
  DWORD
 dwCompletionMsgTextEntrySize;
  DWORD
 dwCompletionMsgTextSize;
  DWORD
 dwCompletionMsgTextOffset;
  DWORD
 dwAddressFeatures;
  DWORD
 dwPredictiveAutoTransferStates;
  DWORD
 dwNumCallTreatments;
  DWORD
 dwCallTreatmentListSize;
  DWORD
 dwCallTreatmentListOffset;
  DWORD
 dwDeviceClassesSize;
  DWORD
 dwDeviceClassesOffset;
  DWORD
 dwMaxCallDataSize;
  DWORD
 dwCallFeatures2;
  DWORD
 dwMaxNoAnswerTimeout;
  DWORD
 dwConnectedModes;
  DWORD
 dwOfferingModes;
  DWORD
 dwAvailableMediaModes;
} LINEADDRESSCAPS, FAR* LPLINEADDRESSCAPS;

Members

dwTotalSize

Total size allocated to this data structure, in bytes.

dwNeededSize

Size for this data structure that is needed to hold all the returned information, in bytes.

dwUsedSize

Size of the portion of this data structure that contains useful information, in bytes.

dwLineDeviceID

Device identifier of the line device with which this address is associated.

dwAddressSize

Size of the address field, in bytes.

dwAddressOffset

Offset from the beginning of the structure to the variably sized address field. The size of the field is specified by dwAddressSize.

dwDevSpecificSize

Size of the device-specific field, in bytes.

dwDevSpecificOffset

Offset from the beginning of the structure to the variably sized device-specific field. The size of the field is specified by dwDevSpecificSize.

dwAddressSharing

Sharing mode of the address. This member can be one of the LINEADDRESSSHARING.

dwAddressStates

Address states changes for which the application may get notified in the LINE_ADDRESSSTATEmessage. This member uses one or more of the LINEADDRESSSTATE.

dwCallInfoStates

Call information elements that are meaningful for all calls on this address. An application may get notified about changes in some of these states in LINE_CALLINFOmessages. This member uses one or more of the LINECALLINFOSTATE.

dwCallerIDFlags

Party identifier information types that can be provided for calls on this address. The caller is the originator of the session. This member uses one or more of the LINECALLPARTYID.

dwCalledIDFlags

Party identifier information types that can be provided for calls on this address. Here, "called" refers to the original destination. This member uses one or more of the LINECALLPARTYID constants.

dwConnectedIDFlags

Party identifier information types that can be provided for calls on this address. This member uses one or more of the LINECALLPARTYID constants.

dwRedirectionIDFlags

Party identifier information types that can be provided for calls on this address. Here, "redirection" is the new destination. This member uses one or more of the LINECALLPARTYID constants.

dwRedirectingIDFlags

Party identifier information types that can be provided for calls on this address. Here, "redirecting" is the address which invoked redirection. This member uses one or more of the LINECALLPARTYID constants.

dwCallStates

Call states that can be reported for calls on this address. This member uses one or more of the LINECALLSTATE.

dwDialToneModes

Dial tone modes that can be reported for calls made on this address. This member is meaningful only if the dialtonecall state can be reported. This member uses one or more of the LINEDIALTONEMODE.

dwBusyModes

Busy modes that can be reported for calls made on this address. This member is meaningful only if the busycall state can be reported. This member uses one or more of the LINEBUSYMODE.

dwSpecialInfo

Special information types that can be reported for calls made on this address. This member is meaningful only if the specialInfocall state can be reported. This member uses one or more of the LINESPECIALINFO.

dwDisconnectModes

Disconnect modes that can be reported for calls made on this address. This member is meaningful only if the disconnectedcall state can be reported. This member uses one or more of the LINEDISCONNECTMODE.

dwMaxNumActiveCalls

Maximum number of active call appearances that the address can handle. This number does not include calls on hold or calls on hold pending transfer or conference.

dwMaxNumOnHoldCalls

Maximum number of call appearances at the address that can be on hold.

dwMaxNumOnHoldPendingCalls

Maximum number of call appearances at the address that can be on hold pending transfer or conference.

dwMaxNumConference

Maximum number of parties that can join a single conference call on this address.

dwMaxNumTransConf

Number of parties (including "self") that can be added in a conference call that is initiated as a generic consultation call using the lineSetupTransferfunction.

dwAddrCapFlags

Packed bit flags that describe a variety of address capabilities. This member uses one or more of the LINEADDRCAPFLAGS.

dwCallFeatures

Switching capabilities or features available for all calls on this address using the LINECALLFEATURE. This member represents the call-related features that may possibly be available on an address (static availability as opposed to dynamic availability). Invoking a supported feature requires the call to be in the proper state and the underlying line device to be opened in a compatible mode. A zero in a bit position indicates that the corresponding feature is never available. A one indicates that the corresponding feature may be available if the application has the right privileges to the call and the call is in the appropriate state for the operation to be meaningful. This member allows an application to discover which call features can be (and which can never be) supported by the address.

dwRemoveFromConfCaps

Address's capabilities for removing calls from a conference call. This member uses one of the LINEREMOVEFROMCONF.

dwRemoveFromConfState

Uses the LINECALLSTATE constants to specify the state of the call after it has been removed from a conference call.

dwTransferModes

Address's capabilities for resolving transfer requests. This member uses one of the LINETRANSFERMODE.

dwParkModes

Different call park modes available at this address. This member uses one of the LINEPARKMODE.

dwForwardModes

Different modes of forwarding available for this address. This member uses the LINEFORWARDMODE.

dwMaxForwardEntries

Maximum number of entries that can be passed to the lineForwardfunction in the lpForwardListparameter.

dwMaxSpecificEntries

Maximum number of entries in the lpForwardListparameter passed to lineForwardthat can contain forwarding instructions based on a specific caller ID (selective call forwarding). This member is zero if selective call forwarding is not supported.

dwMinFwdNumRings

Minimum number of rings that can be set to determine when a call is officially considered "no answer."

dwMaxFwdNumRings

Maximum number of rings that can be set to determine when a call is officially considered "no answer." If this number of rings cannot be set, then the dwMinFwdNumRingsand dwMaxNumRingsmembers are equal.

dwMaxCallCompletions

Maximum number of concurrent call completion requests that can be outstanding on this line device. Zero implies that call completion is not available.

dwCallCompletionConds

Different call conditions under which call completion can be requested. This member uses one or more of the LINECALLCOMPLCOND.

dwCallCompletionModes

Way in which the call can be completed. This member uses one of the LINECALLCOMPLMODE.

dwNumCompletionMessages

Number of call completion messages that can be selected from when using the LINECALLCOMPLMODE_MESSAGE option. Individual messages are identified by values in the range zero through one less than dwNumCompletionMessages.

dwCompletionMsgTextEntrySize

Size of each of the call completion text descriptions specified by the dwCompletionMsgTextSizeand dwCompletionMsgTextOffsetmembers, in bytes.

dwCompletionMsgTextSize

Size of the call completion text, in bytes.

dwCompletionMsgTextOffset

Offset from the beginning of this data structure to the variably sized field containing descriptive text about each of the call completion messages. Each message is dwCompletionMsgTextEntrySizebytes long. The string format of these textual descriptions is indicated by the dwStringFormatmember on the line's device capabilities. The size of the field is specified by the dwCompletionMsgTextSizemember.

dwAddressFeatures

Features available for this address using the LINEADDRFEATURE. Invoking a supported feature requires the address to be in the proper state and the underlying line device to be opened in a compatible mode. A zero in a bit position indicates that the corresponding feature is never available. A one indicates that the corresponding feature may be available if the address is in the appropriate state for the operation to be meaningful. This member allows an application to discover which address features can be (and which can never be) supported by the address.

dwPredictiveAutoTransferStates

Call state or states upon which a call made by a predictive dialer can be set to automatically transfer the call to another address; one or more of the LINECALLSTATE constants. The value 0 indicates automatic transfer based on call state is unavailable.

dwNumCallTreatments

Number of entries in the array of LINECALLTREATMENTENTRYstructures delimited by the dwCallTreatmentListSizeand dwCallTreatmentListOffsetmembers.

dwCallTreatmentListSize

Size of the call treatment array, in bytes.

dwCallTreatmentListOffset

Offset from the beginning of the structure to an array of LINECALLTREATMENTENTRYstructures that specify the call treatments supported on the address. The value is dwNumCallTreatmentstimes SIZEOF( LINECALLTREATMENTENTRY). The size of the field is specified by dwCallTreatmentListSize.

dwDeviceClassesSize

Size of the list of supported device classes, in bytes.

dwDeviceClassesOffset

Offset from the beginning of the structure to a string consisting of the device class identifiers supported on this address for use with the lineGetIDfunction. The elements are separated by null characters, and the last class identifier is followed by two null characters. The size of the field is specified by dwDeviceClassesSize.

dwMaxCallDataSize

Maximum number of bytes that an application can set in the LINECALLINFOstructure.

dwCallFeatures2

Additional switching capabilities or features available for all calls on this address using the LINECALLFEATURE2. It is an extension of the dwCallFeaturesmember.

dwMaxNoAnswerTimeout

Maximum value in seconds that can be set in the dwNoAnswerTimeoutmember in the LINECALLPARAMSstructure when making a call. A value of 0 indicates that automatic abandonment of unanswered calls is not supported by the service provider, or that the timeout value is not adjustable by applications.

dwConnectedModes

LINECONNECTEDMODEthat can appear in the dwCallStateModemember of the LINECALLSTATUSstructure and in LINE_CALLSTATEmessages for calls on this address.

dwOfferingModes

LINEOFFERINGMODEthat can appear in the dwCallStateModemember of LINECALLSTATUSand in LINE_CALLSTATE messages for calls on this address.

dwAvailableMediaModes

Media types (modes) that can be invoked on new calls created on this address, when the dwAddressFeaturesmember indicates that new calls are possible. If this member is zero, it indicates that the service provider either does not know or cannot indicate which media types are available, in which case any or all of the media types indicated in the dwMediaModesmember in the LINEDEVCAPSstructure may be available.

Remarks

Device-specific extensions should use the DevSpecific( dwDevSpecificSizeand dwDevSpecificOffset) variably sized area of this data structure.

Older applications are compiled without this member in the LINEADDRESSCAPSstructure, and using a SIZEOF( LINEADDRESSCAPS) smaller than the new size. The application passes in a dwAPIVersionparameter with the lineGetAddressCapsfunction, which can be used for guidance by TAPI in handling this situation. If the application passes in a dwTotalSizemember less than the size of the fixed portion of the structure as defined in the dwAPIVersionmember specified, LINEERR_STRUCTURETOOSMALL is returned. If sufficient memory has been allocated by the application, before calling TSPI_lineGetAddressCaps, TAPI sets the dwNeededSizeand dwUsedSizemembers to the fixed size of the structure as it existed in the specified TAPI version.

New service providers must examine the TAPI version of the structure passed in. If the version is less than the highest version supported by the provider, the service provider must not fill in fields not supported in older versions of TAPI, as these would fall in the variable portion of the older structure.

New applications must be cognizant of the TAPI version of the structure negotiated, and not examine the contents of fields in the fixed portion beyond the original end of the fixed portion of the structure for the negotiated version.

The members dwPredictiveAutoTransferStatesthrough dwAvailableMediaModesare available only to applications that request a TAPI version of 2.0 or later when calling lineGetAddressCaps.

Requirements

Header tapi.h
Windows Embedded CE Windows CE 3.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also