LINEADDRESSCAPS 结构 (tapi.h)

LINEADDRESSCAPS 结构描述指定地址的功能。 lineGetAddressCaps 函数和 TSPI_lineGetAddressCaps 函数返回 LINEADDRESSCAPS 结构。

语法

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, *LPLINEADDRESSCAPS;

成员

dwTotalSize

分配给此数据结构的总大小(以字节为单位)。

dwNeededSize

保存所有返回信息所需的此数据结构的大小(以字节为单位)。

dwUsedSize

包含有用信息的此数据结构部分的大小(以字节为单位)。

dwLineDeviceID

与此地址关联的线路设备的设备标识符。

dwAddressSize

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

dwAddressOffset

从结构开头到大小可变的地址字段的偏移量。 字段的大小由 dwAddressSize 指定。

dwDevSpecificSize

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

dwDevSpecificOffset

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

dwAddressSharing

地址的共享模式。 此成员可以是 LINEADDRESSSHARING_常量之一。

dwAddressStates

地址表示应用程序可能会在LINE_ADDRESSSTATE消息中收到通知的更改。 此成员使用一个或多个 LINEADDRESSSTATE_常量

dwCallInfoStates

对此地址上的所有调用都有意义的调用信息元素。 应用程序可能会在 LINE_CALLINFO 消息中收到有关其中某些状态更改的通知。 此成员使用一个或多个 LINECALLINFOSTATE_常量

dwCallerIDFlags

可为此地址上的调用提供的参与方标识符信息类型。 调用方是会话的发起方。 一个或多个 LINECALLPARTYID_常量

dwCalledIDFlags

可为此地址上的调用提供的参与方标识符信息类型。 此处,“已调用”是指原始目标。 一个或多个 LINECALLPARTYID_常量

dwConnectedIDFlags

可为此地址上的调用提供的参与方标识符信息类型。 一个或多个 LINECALLPARTYID_常量

dwRedirectionIDFlags

可为此地址上的调用提供的参与方标识符信息类型。 在这里,“重定向”是新的目标。 一个或多个 LINECALLPARTYID_常量

dwRedirectingIDFlags

可为此地址上的调用提供的参与方标识符信息类型。 此处,“redirecting”是调用重定向的地址。 一个或多个 LINECALLPARTYID_常量

dwCallStates

可针对此地址上的呼叫报告呼叫状态。 此成员使用一个或多个 LINECALLSTATE_常量

dwDialToneModes

可针对此地址的呼叫报告拨号音模式。 仅当可以报告 拨号 呼叫状态时,此成员才有意义。 此成员使用一个或多个 LINEDIALTONEMODE_常量

dwBusyModes

可针对此地址的调用报告忙碌模式。 仅当可以报告 呼叫状态时,此成员才有意义。 此成员使用一个或多个 LINEBUSYMODE_常量

dwSpecialInfo

可针对此地址的调用报告的特殊信息类型。 仅当可以报告 specialInfo 调用状态时,此成员才有意义。 此成员使用一个或多个 LINESPECIALINFO_常量

dwDisconnectModes

可报告对此地址的调用的断开连接模式。 仅当可以报告 断开连接 的调用状态时,此成员才有意义。 此成员使用一个或多个 LINEDISCONNECTMODE_常量

dwMaxNumActiveCalls

地址可以处理的活动呼叫外观的最大数目。 此号码不包括待定呼叫或待处理转移或会议呼叫。

dwMaxNumOnHoldCalls

可在保留的地址上出现的最大呼叫次数。

dwMaxNumOnHoldPendingCalls

在等待转移或会议中可以处于挂起状态的地址上的最大呼叫出现次数。

dwMaxNumConference

可在此地址上加入单个电话会议的最大参与方数。

dwMaxNumTransConf

(包括“self”) 在内的参与方数,这些参与方可添加到使用 lineSetupTransfer 作为通用咨询呼叫发起的电话会议中。

dwAddrCapFlags

描述各种地址功能的打包位标志。 此成员使用一个或多个 LINEADDRCAPFLAGS_常量

dwCallFeatures

使用 LINECALLFEATURE_ 常量切换此地址上所有调用可用的功能。 此成员表示可能与静态可用性 (地址上可用的呼叫相关功能,而不是动态可用性) 。 调用受支持的功能需要调用处于正确的状态,并且基础线路设备必须在兼容模式下打开。 位位置中的零表示相应的功能永远不可用。 一个指示,如果应用程序对调用具有适当的权限,并且调用处于适当的状态,则相应的功能可能可用,以便操作有意义。 此成员允许应用程序发现哪些调用功能可以 (,哪些永远不能) 地址支持。

dwRemoveFromConfCaps

地址用于从电话会议中删除呼叫的功能。 此成员使用 LINEREMOVEFROMCONF_常量之一。

dwRemoveFromConfState

使用 LINECALLSTATE_ 常量指定从电话会议中删除后的呼叫状态。

dwTransferModes

Address 用于解析传输请求的功能。 此成员使用 LINETRANSFERMODE_常量之一。

dwParkModes

此地址提供不同的呼叫寄存模式。 此成员使用 LINEPARKMODE_常量之一。

dwForwardModes

此地址可用的不同转发模式。 此成员使用 LINEFORWARDMODE_常量

dwMaxForwardEntries

可在 lpForwardList 参数中传递到 lineForward 的最大条目数。

dwMaxSpecificEntries

传递给 lineForward 的 lpForwardList 参数中可以包含基于特定呼叫方 ID 的转发指令的最大条目数 (选择性呼叫转接) 。 如果不支持选择性呼叫转接,则此成员为零。

dwMinFwdNumRings

可以设置的最小响铃数,用于确定何时将呼叫正式视为“无应答”。

dwMaxFwdNumRings

可以设置的最大响铃数,以确定何时将呼叫正式视为“无应答”。如果无法设置此数目的环,则 dwMinFwdNumRingsdwMaxNumRings 相等。

dwMaxCallCompletions

此线路设备上可以未完成的并发呼叫完成请求的最大数目。 零表示调用完成不可用。

dwCallCompletionConds

可以请求呼叫完成的不同呼叫条件。 此成员使用一个或多个LINECALLCOMPLCOND_常量。

dwCallCompletionModes

完成调用的方式。 此成员使用LINECALLCOMPLMODE_常量之一。

dwNumCompletionMessages

使用 LINECALLCOMPLMODE_MESSAGE 选项时可从中选择的呼叫完成消息数。 单个消息由介于 0 到 1 个小于 dwNumCompletionMessages 范围内的值标识。

dwCompletionMsgTextEntrySize

由 dwCompletionMsgTextSizedwCompletionMsgTextOffset 指定的每个调用完成文本说明的大小(以字节为单位)。

dwCompletionMsgTextSize

调用完成文本的大小(以字节为单位)。

dwCompletionMsgTextOffset

从此数据结构的开头偏移到包含有关每个调用完成消息的描述性文本的可变大小的字段。 每条消息的长度为 dwCompletionMsgTextEntrySize 字节。 这些文本说明的字符串格式由行的设备功能中的 dwStringFormat 指示。 字段的大小由 dwCompletionMsgTextSize 指定。

dwAddressFeatures

使用 常量LINEADDRFEATURE_此地址可用的功能。 调用受支持的功能需要地址处于正确的状态,并且基础线路设备需要在兼容模式下打开。 位位置中的零表示相应的功能永远不可用。 一个指示,如果地址处于适当的状态,则相应的功能可能可用,以便使操作有意义。 此成员允许应用程序发现哪些地址功能可以 (,哪些永远不能) 地址支持。

dwPredictiveAutoTransferStates

呼叫状态或状态,预测拨号程序进行的呼叫可以设置为自动将呼叫转移到另一个地址;一个或多个 LINECALLSTATE_常量。 值 0 指示基于呼叫状态的自动转移不可用。

dwNumCallTreatments

dwCallTreatmentListSize 和 dwCallTreatmentListOffset 分隔的 LINECALLTREATMENTENTRY 结构数组中的条目数。

dwCallTreatmentListSize

调用处理数组的大小(以字节为单位)。

dwCallTreatmentListOffset

从 结构的开头偏移到 LINECALLTREATMENTENTRY 结构的数组,指定可以使用 lineSetCallTreatment) 选择的地址 (支持的调用处理。 该值为 dwNumCallTreatments 乘以 SIZEOF (LINECALLTREATMENTENTRY) 。 字段的大小由 dwCallTreatmentListSize 指定。

dwDeviceClassesSize

受支持设备类列表的大小(以字节为单位)。

dwDeviceClassesOffset

从 结构的开头偏移到包含此地址上支持用于 lineGetID 的设备类标识符的字符串。 元素由 null 字符分隔,最后一个类标识符后跟两个 null 字符。 字段的大小由 dwDeviceClassesSize 指定。

dwMaxCallDataSize

应用程序可以使用 lineSetCallDataLINECALLINFO 中设置的最大字节数。

dwCallFeatures2

使用 LINECALLFEATURE2_ 常量对此地址的所有调用可用的其他切换功能。 它是 dwCallFeatures 成员的扩展。

dwMaxNoAnswerTimeout

调用时,可在 LINECALLPARAMS 中的 dwNoAnswerTimeout 成员中设置的最大值(以秒为单位)。 值为 0 表示服务提供商不支持自动放弃未接听的调用,或者应用程序无法调整超时值。

dwConnectedModes

LINECONNECTEDMODE_值,这些值可以出现在 LINECALLSTATUSdwCallStateMode 成员中,以及针对此地址的调用LINE_CALLSTATE消息中。

dwOfferingModes

LINEOFFERINGMODE_值,这些值可以出现在 LINECALLSTATUSdwCallStateMode 成员中,以及针对此地址的调用LINE_CALLSTATE消息中。

dwAvailableMediaModes

dwAddressFeatures 成员指示可以进行新调用时,媒体类型 (模式) ,可在在此地址上创建的新调用上调用。 如果此成员为零,则表示服务提供商不知道或无法指示哪些媒体类型可用,在这种情况下,LINEDEVCAPS 中的 dwMediaModes 成员中指示的任何或所有媒体类型都可能可用。

注解

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

较旧的应用程序是在 LINEADDRESSCAPS 结构中没有此成员的情况下编译的,并且使用 SIZEOF (LINEADDRESSCAPS) 小于新大小。 应用程序使用 lineGetAddressCaps 函数传入 dwAPIVersion 参数,TAPI 可使用该参数指导处理这种情况。 如果应用程序传入的 dwTotalSize 成员小于指定的 dwAPIVersion 成员中定义的结构的固定部分的大小,则返回LINEERR_STRUCTURETOOSMALL。 如果应用程序已分配足够的内存,则在调用 TSPI_lineGetAddressCaps之前,TAPI 会将 dwNeededSizedwUsedSize 成员设置为在指定的 API 版本中存在的结构的固定大小。

支持新 API 版本的新服务提供商 () 必须检查传入的 API 版本。 如果 API 版本低于提供程序支持的最高版本,则服务提供程序不得填写较旧 API 版本不支持的字段,因为这些字段将落在较旧结构的可变部分。

新应用程序必须识别协商的 API 版本,并且不检查已协商 API 版本结构固定部分的原始末尾之外的固定部分中字段的内容。

通过 dwAvailableMediaModes 的成员 dwPredictiveAutoTransferStates 仅适用于在调用 lineGetAddressCaps 时请求 API 版本 2.0 或更高版本的应用程序。

要求

   
标头 tapi.h

另请参阅

LINEADDRESSSTATUS

LINECALLINFO

LINECALLPARAMS

LINECALLSTATUS

LINECALLTREATMENTENTRY

LINEDEVCAPS

LINEDIALPARAMS

LINE_ADDRESSSTATE

LINE_CALLINFO

LINE_CALLSTATE

LINE_LINEDEVSTATE

TSPI_lineGetAddressCaps

lineCompleteCall

lineForward

lineGenerateDigits

lineGetAddressCaps

lineGetID

lineSetCallData

lineSetCallTreatment