LINECALLPARAMS

This structure describes parameters supplied when making calls using the lineMakeCall function. The LINECALLPARAMS structure is also used as a parameter in other operations.

At a Glance

Header file: Tapi.h
Windows CE versions: 1.0 and later

Syntax

typedef struct linecallparams_tag {
DWORD
dwTotalSize;

DWORD
dwBearerMode;
DWORD
dwMinRate;
DWORD
dwMaxRate;
DWORD
dwMediaMode;

DWORD
dwCallParamFlags;
DWORD
dwAddressMode;
DWORD
dwAddressID;

LINEDIALPARAMS
DialParams;

DWORD
dwOrigAddressSize;
DWORD
dwOrigAddressOffset;

DWORD
dwDisplayableAddressSize;
DWORD
dwDisplayableAddressOffset;

DWORD
dwCalledPartySize;
DWORD
dwCalledPartyOffset;

DWORD
dwCommentSize;
DWORD
dwCommentOffset;

DWORD
dwUserUserInfoSize;
DWORD
dwUserUserInfoOffset;

DWORD
dwHighLevelCompSize;
DWORD
dwHighLevelCompOffset;

DWORD
dwLowLevelCompSize;
DWORD
dwLowLevelCompOffset;

DWORD
dwDevSpecificSize;
DWORD
dwDevSpecificOffset;
DWORD
dwPredictiveAutoTransferStates;
DWORD
dwTargetAddressSize;
DWORD
dwTargetAddressOffset;
DWORD
dwSendingFlowspecSize;
DWORD
dwSendingFlowspecOffset;
DWORD
dwReceivingFlowspecSize;
DWORD
dwReceivingFlowspecOffset;
DWORD
dwDeviceClassSize;
DWORD
dwDeviceClassOffset;
DWORD
dwDeviceConfigSize;
DWORD
dwDeviceConfigOffset;
DWORD
dwCallDataSize;
DWORD
dwCallDataOffset;
DWORD
dwNoAnswerTimeout;
DWORD
dwCallingPartyIDSize;
DWORD
dwCallingPartyIDOffset;
} LINECALLPARAMS, FAR *LPLINECALLPARAMS;

Members

dwTotalSize

Specifies the total size, in bytes, allocated to this data structure. This size should be big enough to hold all the fixed and variably sized portions of this data structure.

dwBearerMode

Specifies the bearer mode for the call. If dwBearerMode is set to any value except LINEBEARERMODE_PASSTHROUGH, the call will attempt to complete if or not that bearer mode is supported on the line being accessed. This member uses the following LINEBEARERMODE_ constants:

Value Description
LINEBEARERMODE_VOICE This is a regular 3.1 kHz analog voice grade bearer service. Bit integrity is not assured. Voice can support fax and modem media modes.
LINEBEARERMODE_SPEECH Corresponds to G.711 speech transmission on the call. The network can use processing techniques such as analog transmission, echo cancellation, and compression/decompression. Bit integrity is not assured. Speech is not intended to support fax and modem media modes.
LINEBEARERMODE_MULTIUSE The multiuse mode defined by ISDN.
LINEBEARERMODE_DATA The unrestricted data transfer on the call. The data rate is specified separately.
LINEBEARERMODE_ALTSPEECHDATA The alternate transfer of speech or unrestricted data on the same call (ISDN).
LINEBEARERMODE_NONCALLSIGNALING Corresponds to a non-call-associated signaling connection from the application to the service provider or switch (treated as a “media stream” by the Telephony API).
LINEBEARERMODE_PASSTHROUGH When a call is active in LINEBEARERMODE_PASSTHROUGH, the service provider gives direct access to the attached hardware for control by the application. This mode is used primarily by applications desiring temporary direct control over asynchronous modems, accessed through the Win32 comm functions, for the purpose of configuring or using special features not otherwise supported by the service provider.

If dwBearerMode is zero, the default value is LINEBEARERMODE_VOICE.

DwMinRate
dwMaxRate

Unsupported; set to zero.

dwMediaMode

Specifies the expected media mode of the call. This member uses the following LINEMEDIAMODE_ constants:

Value Description
LINEMEDIAMODE_UNKNOWN A media stream exists, but its mode is not known. This would correspond to a call with an unclassified media type. In typical analog telephony environments, an incoming call’s media mode may be unknown until after the call has been answered and the media stream has been filtered to make a determination.
LINEMEDIAMODE_INTERACTIVEVOICE The presence of speech on the call and the call is treated as an interactive call with humans on both ends.
LINEMEDIAMODE_AUTOMATEDVOICE The presence of speech on the call and the voice is locally handled by an automated application.
LINEMEDIAMODE_DATAMODEM A datamodem session on the call.
LINEMEDIAMODE_G3FAX A group 3 fax is being sent or received on the call.
LINEMEDIAMODE_G4FAX A group 4 fax is being sent or received on the call.
LINEMEDIAMODE_TDD A TDD (Telephony Devices for the Deaf) session on the call.
LINEMEDIAMODE_DIGITALDATA Digital data is being sent or received on the call.
LINEMEDIAMODE_TELETEX A teletex session on the call. Teletex is one of the telematic services.
LINEMEDIAMODE_VIDEOTEX A videotex session on the call. Videotex is one of the telematic services.
LINEMEDIAMODE_TELEX A telex session on the call. Telex is one of the telematic services.
LINEMEDIAMODE_MIXED A mixed session on the call. Mixed is one of the ISDN telematic services.
LINEMEDIAMODE_ADSI An ADSI (Analog Display Services Interface) session on the call.
LINEMEDIAMODE_VOICEVIEW The media mode of the call is VoiceView.

If dwMediaMode is zero, the default value is LINEMEDIAMODE_INTERACTIVEVOICE.

dwCallParamFlags

Specifies a collection of Boolean call-setup parameters. This member uses the following LINECALLPARAMFLAGS_ constants:

Value Description
LINECALLPARAMFLAGS_SECURE The call should be set up as secure.
LINECALLPARAMFLAGS_IDLE The call should get an idle call appearance.
LINECALLPARAMFLAGS_BLOCKID The originator identity should be concealed (block caller identifier).
LINECALLPARAMFLAGS_ORIGOFFHOOK The originator’s phone should be automatically taken offhook.
LINECALLPARAMFLAGS_DESTOFFHOOK The called party’s phone should be automatically taken offhook.

dwAddressMode

Specifies the mode by which the originating address is specified. The dwAddressMode member cannot be LINEADDRESSMODE_ADDRESSID for the lineOpen function call. This member uses the following LINEADDRESSMODE_ constants:

Value Description
LINEADDRESSMODE_ADDRESSID The address is specified with a small integer in the range zero to dwNumAddresses minus one, where dwNumAddresses is the value in the line’s LINEDEVCAPS structure. The selected address is specified in the dwAddressID member.
LINEADDRESSMODE_DIALABLEADDR The address is specified with its dialable address. The address is contained in the dwOrigAddressSize and dwOrigAddressOffset field. If dwAddressMode is zero, the default value is LINEADDRESSMODE_ADDRESSID.

dwAddressID

Specifies the address identifier of the originating address if dwAddressMode is set to LINEADDRESSMODE_ADDRESSID.

DialParams

Unsupported; set to zero.

DwOrigAddressSize
dwOrigAddressOffset

Specify the size, in bytes, of the field holding the originating address, and the offset, in bytes, from the beginning of this data structure. The format of this address is dependent on the dwAddressMode member.

dwDisplayableAddressSize
dwDisplayableAddressOffset

Specify the displayable string is used for logging purposes. The content of these members is recorded in the dwDisplayableAddressOffset and dwDisplayableAddressSize members of the call’s LINECALLINFO message. The lineTranslateAddress function returns appropriate data to be placed in this field in the dwDisplayableAddressSize and dwDisplayableAddressOffset members of the LINETRANSLATEOUTPUT structure.

dwCalledPartySize
dwCalledPartyOffset

Specify the size, in bytes, of the field that holds called-party data, and the offset, in bytes, from the beginning of this data structure. This data can be specified by the application that makes the call and is made available in the call’s data structure for logging purposes. The format of this field is that of dwStringFormat, as specified in LINEDEVCAPS.

dwCommentSize
dwCommentOffset

Specify the size, in bytes, of the field that holds comments about the call, and the offset, in bytes, from the beginning of this data structure. This data can be specified by the application that makes the call and is made available in the call’s data structure for logging purposes. The format of this field is that of dwStringFormat, as specified in LINEDEVCAPS.

dwUserUserInfoSize
dwUserUserInfoOffset

Specify the size, in bytes, of the field that holds user-user data, and the offset, in bytes, from the beginning of this data structure. The protocol discriminator field for the user-user data, if required, should appear as the first byte of the data pointed to by dwUserUserInfoOffset, and must be accounted for in dwUserUserInfoSize.

dwHighLevelCompSize
dwHighLevelCompOffset

Specify the size, in bytes, of the field that holds high-level compatibility data, and the offset, in bytes, from the beginning of this data structure.

dwLowLevelCompSize
dwLowLevelCompOffset

Specify the size, in bytes, of the field that holds low-level compatibility data, and the offset, in bytes, from the beginning of this data structure.

dwDevSpecificSize
dwDevSpecificOffset

Specify the size, in bytes, of the field that holds device-specific data, and the offset, in bytes, from the beginning of this data structure.

dwPredictiveAutoTransferStates

The LINECALLSTATE_ values, entry into which cause the call to be blind-transferred to the specified target address. Set to zero if automatic transfer is not desired.

dwTargetAddressSize
dwTargetAddressOffset

The size in bytes and offset from the beginning of LINECALLPARAMS of a string specifying the target dialable address (not dwAddressID); used in the case of certain automatic actions. In the case of predictive dialing, specifies the address to which the call should be automatically transferred. Set to zero if automatic transfer is not desired. In the case of a No Hold Conference, specifies the address that should be added to the call. In the case of a One Step Transfer, specifies the address to dial on the consultation call.

dwSendingFlowspecSize
dwSendingFlowspecOffset

The total size in bytes and offset from the beginning of LINECALLPARAMS of a WinSock2 FLOWSPEC structure followed by WinSock2 provider-specific data, equivalent to what would have been stored in SendingFlowspec.len in a WinSock2 QOS structure. Specifies the quality of service desired in the sending direction on the call. The provider-specific portion following the FLOWSPEC structure must not contain pointers to other blocks of memory, because TAPI does not know how to marshal the data pointed to by the private pointer(s) and convey it through interprocess communication to the application.

dwReceivingFlowspecSize
dwReceivingFlowspecOffset

The total size in bytes and offset from the beginning of LINECALLPARAMS of a WinSock2 FLOWSPEC structure followed by WinSock2 provider-specific data, equivalent to what would have been stored in ReceivingFlowspec.len in a WinSock2 QOS structure. Specifies the quality of service desired in the receiving direction on the call. The provider-specific portion following the FLOWSPEC structure must not contain pointers to other blocks of memory, because TAPI does not know how to marshal the data pointed to by the private pointer(s) and convey it through interprocess communication to the application.

dwDeviceClassSize
dwDeviceClassOffset

The size in bytes and offset from the beginning of LINECALLPARAMS of a NULL-terminated ASCII string (the size includes the NULL) that indicates the device class of the device whose configuration is specified in DeviceConfig. Valid device class strings are the same as those specified for the lineGetID function.

dwDeviceConfigSize
dwDeviceConfigOffset

The number of bytes and offset from the beginning of LINECALLPARAMS of the opaque configuration data structure pointed to by dwDevConfigOffset. This value is returned in the dwStringSize member in the VARSTRING structure returned by lineGetDevConfig. If the size is zero, the default device configuration is used. This enables the application to set the device configuration before the call is initiated.

dwCallDataSize
dwCallDataOffset

The size in bytes and offset from the beginning of LINECALLPARAMS of the application-settable call data to be initially attached to the call.

dwNoAnswerTimeout

The number of seconds, after the completion of dialing, that the call should wait in the PROCEEDING or RINGBACK state, before abandoned by the service provider with a LINECALLSTATE_DISCONNECTED and LINEDISCONNECTMODE_NOANSWER. A value of 0 indicates that the application does not desire automatic call abandonment.

dwCallingPartyIDSize
dwCallingPartyIDOffset

The size in bytes and offset from the beginning of LINECALLPARAMS of a NULL-terminated ASCII string (the size includes the NULL) that specifies the identity of the party placing the call. If the content of the identifier is acceptable and a path is available, the service provider passes the identifier along to the called party to indicate the identity of the calling party.

Remarks

Device-specific extensions should use the dwDevSpecificSize and dwDevSpecificOffset members of this structure.

This structure is used as a parameter to lineMakeCall when setting up a call. Its fields enable the application to specify the quality of service requested from the network as well as a variety of ISDN call-setup parameters. If no LINECALLPARAMS structure is supplied to lineMakeCall, a default POTS voice-grade call is requested with the default values listed above.

Note   The members dwOrigAddressSize through dwDevSpecificOffset are ignored when an lpCallParams parameter is specified with the lineOpen function.

For Windows CE versions 1.0 through 2.12, the following members are not supported:

dwUUISendUserUserInfoSize dwDeviceClassSize
dwMinRate dwDeviceClassOffset
dwMaxRate dwDeviceConfigSize
dwPredictiveAutoTransferStates dwDeviceConfigOffset
dwTargetAddressSize dwCallDataSize
dwTargetAddressOffset dwCallDataOffset
dwSendingFlowspecSize dwNoAnswerTimeout
dwSendingFlowspecOffset dwCallingPartyIDSize
dwReceivingFlowspecSize dwCallingPartyIDOffset
dwReceivingFlowspecOffset