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 |