LINECALLPARAMS 结构 (tapi.h)

LINECALLPARAMS 结构描述在使用 lineMakeCallTSPI_lineMakeCall 函数进行调用时提供的参数。 LINECALLPARAMS 结构还用作其他操作(如 lineOpen 函数)中的参数。

语法块右侧的注释指示未将此结构提供给 lineMakeCall 时使用的默认值。

语法

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;
  DWORD          dwAddressType;
} LINECALLPARAMS, *LPLINECALLPARAMS;

成员

dwTotalSize

分配给此数据结构的总大小(以字节为单位)。 此大小应足够大,以容纳此数据结构的所有固定和可变大小部分。

dwBearerMode

调用的持有者模式。 此成员使用 LINEBEARERMODE_常量之一。

如果 dwBearerMode 为零,则默认值为 LINEBEARERMODE_VOICE。

dwMinRate

为调用的数据流请求的最小数据速率,以 bps (位/秒) 。

dwMaxRate

为调用的数据流请求的最大数据速率,以 bps (位/秒) 。 进行调用时,服务提供商会尝试在请求的范围内提供最高可用速率, (dwMinRatedwMaxRate) 。 如果需要特定的数据速率,则应将 dwMinRatedwMaxRate 设置为该值。 如果应用程序在一个速率下效果最佳,但能够降低到较低的速率,则应用程序应分别将这些速率指定为最大值和最小速率。 如果 dwMaxRate 为零,则默认值由 LINEDEVCAPS 结构的 dwMaxRate 成员指定。 这是设备支持的最大速率。

dwMediaMode

呼叫的预期媒体类型。 此成员使用 LINEMEDIAMODE_常量之一。

如果 dwMediaMode 为零,则默认值为 LINEMEDIAMODE_INTERACTIVEVOICE。

dwCallParamFlags

布尔调用设置参数的集合。 此成员使用一个或多个 LINECALLPARAMFLAGS_常量

dwAddressMode

指定源地址的模式。 此成员使用 LINEADDRESSMODE_常量之一。

注意无法为 lineOpen 函数调用LINEADDRESSMODE_ADDRESSID dwAddressMode 成员。 但是,此限制不适用于 lineMakeCall
 

dwAddressID

如果 dwAddressMode 设置为 LINEADDRESSMODE_ADDRESSID,则原始地址的地址标识符。 地址标识符与地址永久关联;标识符在操作系统升级中保持不变。

DialParams

要在此调用中使用的拨号参数,类型为 LINEDIALPARAMS。 当为此字段指定值 0 时,将使用字段的默认值,如 LINEDEVCAPS 结构的 DefaultDialParams 成员所示。 如果为 LINEDEVCAPS 结构中 MinDialParamsMaxDialParams 中的相应字段指定的范围之外的字段指定了非零值,则改用有效范围内最接近的值。

dwOrigAddressSize

原始地址字段的大小(以字节为单位)。

dwOrigAddressOffset

从结构开头到保存原始地址的可变大小的字段的偏移量。 此地址的格式取决于 dwAddressMode 成员。 字段的大小由 dwOrigAddressSize 指定。

dwDisplayableAddressSize

可显示字符串的大小,包括 null 终止符(以字节为单位)。

dwDisplayableAddressOffset

用于日志记录的可显示字符串。 这些成员的内容记录在调用的 LINECALLINFO 消息的 dwDisplayableAddressOffsetdwDisplayableAddressSize 成员中。 lineTranslateAddress 函数返回要放置在 LINETRANSLATEOUTPUT 结构的 dwDisplayableAddressSizedwDisplayableAddressOffset 成员的此字段中的适当信息。 字段的大小由 dwDisplayableAddressSize 指定。

dwCalledPartySize

被调用方信息的大小(以字节为单位)。

dwCalledPartyOffset

从 结构的开头到保存被调用方信息的可变大小的字段的偏移量。 此信息可由进行调用的应用程序指定,并在调用的信息结构中用于日志记录。 此字段的格式为 dwStringFormat 的格式,如 LINEDEVCAPS 中所述。 字段的大小由 dwCalledPartySize 指定。

dwCommentSize

呼叫注释字段的大小(以字节为单位)。

dwCommentOffset

从 结构的开头到包含有关调用的注释的可变大小字段的偏移量。 此信息可由进行调用的应用程序指定,并在调用的信息结构中用于日志记录。 此字段的格式为 dwStringFormat 的格式,如 LINEDEVCAPS 中所述。 字段的大小由 dwCommentSize 指定。

dwUserUserInfoSize

用户信息(包括 null 终止符)的大小(以字节为单位)。

dwUserUserInfoOffset

从结构的开头到保存用户-用户信息的可变大小的字段的偏移量。 用户-用户信息的协议鉴别器字段(如果需要)应显示为 dwUserUserInfoOffset 指向的数据的第一个字节,并且必须在 dwUserUserInfoSize 中考虑。

dwHighLevelCompSize

高级兼容性信息的大小(以字节为单位)。

dwHighLevelCompOffset

从结构开头到保存高级兼容性信息的可变大小字段的偏移量。 字段的大小由 dwHighLevelCompSize 指定。

dwLowLevelCompSize

低级别兼容性信息的大小(以字节为单位)。

dwLowLevelCompOffset

从 结构开头到保存低级别兼容性信息的可变大小字段的偏移量。 字段的大小由 dwLowLevelCompSize 指定。

dwDevSpecificSize

设备特定信息的大小(以字节为单位)。

dwDevSpecificOffset

从结构开头到保存设备特定信息的可变大小的字段的偏移量。 字段的大小由 dwDevSpecificSize 指定。

dwPredictiveAutoTransferStates

LINECALLSTATE_常量,其中的条目会导致调用被盲目传输到指定的目标地址。 如果不需要自动传输,则设置为零。

dwTargetAddressSize

包括 null 终止符的目标可拨号地址字符串的大小(以字节为单位)。

dwTargetAddressOffset

从 结构的开头偏移到指定目标可拨号地址的字符串 (不是 dwAddressID) ;在某些自动操作的情况下使用。 对于预测拨号, 指定呼叫应自动转移到的地址。 字符串的大小由 dwTargetAddressSize 指定。

这实质上是未使用自动传输时传递给 lineBlindTransfer 的同一字符串。 如果不需要自动传输,则设置为零。 对于“不举行会议”,指定应与呼叫开会的地址。 对于一步转移,指定要在咨询呼叫上拨打的地址。

dwSendingFlowspecSize

服务质量信息的大小(以字节为单位)。

dwSendingFlowspecOffset

从结构开头到 FLOWSPEC 结构的偏移量,后跟 WinSock 提供程序特定的数据,相当于 QOS 结构中在 SendingFlowspec 中存储的数据。 指定呼叫的发送方向上所需的服务质量。 FLOWSPEC 结构后面的提供程序特定部分不得包含指向其他内存块的指针,因为 TAPI 不知道如何封送专用指针 () 所指向的数据,并通过进程间通信将其传递给应用程序。 字段的大小由 dwSendingFlowspecSize 指定。

dwReceivingFlowspecSize

服务质量信息的大小(以字节为单位)。

dwReceivingFlowspecOffset

从结构开头到 FLOWSPEC 结构的偏移量,后跟 WinSock 提供程序特定的数据,相当于 QOS 结构中在 ReceivingFlowspec 中存储的数据。 指定呼叫的接收方向上所需的服务质量。 FLOWSPEC 结构后面的提供程序特定部分不得包含指向其他内存块的指针,因为 TAPI 不知道如何封送专用指针 () 所指向的数据,并通过进程间通信将其传递给应用程序。 字段的大小由 dwReceivingFlowspecSize 指定。

dwDeviceClassSize

设备类字符串的大小(包括 null 终止符),以字节为单位。

dwDeviceClassOffset

从 结构的开头偏移到以 null 结尾的字符串,该字符串指示其配置在 DeviceConfig 中指定的设备的设备类。 有效的设备类字符串与为 lineGetID 函数指定的设备类字符串相同。 字符串的大小由 dwDeviceClassSize 指定。

dwDeviceConfigSize

设备配置数据的大小(以字节为单位)。

dwDeviceConfigOffset

从结构开头到不透明配置数据结构的偏移量。 此值在 lineGetDevConfig 返回的 VARSTRING 结构中的 dwStringSize 成员中返回。 如果大小为零,则使用默认设备配置。 这允许应用程序在启动调用之前设置设备配置。 字段的大小由 dwDeviceConfigSize 指定。

dwCallDataSize

应用程序可设置的调用数据的大小(以字节为单位)。

dwCallDataOffset

从 结构开头到最初附加到调用的应用程序可设置的调用数据的偏移量。 字段的大小由 dwCallDataSize 指定。

dwNoAnswerTimeout

拨号完成后,应允许呼叫在 PROCEEDING 或 RINGBACK 状态中等待的秒数,然后服务提供商使用LINECALLSTATE_DISCONNECTED和LINEDISCONNECTMODE_NOANSWER自动放弃呼叫。 值为 0 表示应用程序不需要自动放弃调用。

dwCallingPartyIDSize

包括 null 终止符(以字节为单位)的调用方 ID 字符串的大小,包括 null 终止符。

dwCallingPartyIDOffset

从结构的开头偏移到以 null 结尾的字符串,该字符串指定发出调用的一方的身份。 如果标识符的内容是可接受的,并且路径可用,则服务提供商会将标识符传递给被调用方,以指示调用方的身份。 字段的大小由 dwCallingPartyIDSize 指定。

dwAddressType

用于呼叫的地址类型。 仅当协商的 TAPI 版本为 3.0 或更高版本时,结构中的此成员才可用。

注解

特定于设备的扩展应使用 DevSpecific (dwDevSpecificSizedwDevSpecificOffset) 此数据结构的可变大小区域。

设置调用时,此结构用作 lineMakeCall 的参数。 其字段允许应用程序指定从网络请求的服务质量以及各种 ISDN 调用设置参数。 如果未向 lineMakeCall 提供 LINECALLPARAMS 结构,则会使用上面列出的默认值请求默认 POTS 语音级呼叫。

注意使用 lineOpen 函数指定 lpCallParams 参数时,将忽略通过 dwDevSpecificOffset 的 DialParams 字段。
 
通过 dwCallingPartyIDOffset 的成员 dwPredictiveAutoTransferStates 仅适用于使用 API 版本 2.0 或更高版本打开线路设备的应用程序。

要求

   
标头 tapi.h

另请参阅

LINEDEVCAPS

LINEDIALPARAMS

LINETRANSLATEOUTPUT

TSPI_lineMakeCall

VARSTRING

lineBlindTransfer

lineGetDevConfig

lineGetID

lineMakeCall

lineOpen

lineTranslateAddress