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

此位址上可提供給呼叫的合作物件識別碼資訊類型。 在這裡,「重新導向」是叫用重新導向的位址。 一或多個 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

解決傳輸要求的功能。 此成員會使用其中一個 LINETRANSFERMODE_常數

dwParkModes

此位址提供的不同通話駐留模式。 這個成員會使用其中一個 LINEPARKMODE_常數

dwForwardModes

此位址可用的不同轉送模式。 這個成員會使用 LINEFORWARDMODE_常數

dwMaxForwardEntries

可以在lpForwardList參數中傳遞至lineForward的專案數目上限。

dwMaxSpecificEntries

傳遞至lineForward 的 lpForwardList參數中,可包含根據特定呼叫端識別碼 (選擇性呼叫轉送) 轉送指令的專案數目上限。 如果不支援選擇性呼叫轉送,則這個成員為零。

dwMinFwdNumRings

可以設定的通道數目下限,以判斷何時正式將通話視為「沒有答案」。

dwMaxFwdNumRings

可以設定為判斷何時正式將通話視為「無答案」的通道數目上限。如果無法設定這個通道數目, 則 dwMinFwdNumRingsdwMaxNumRings 相等。

dwMaxCallCompletions

此行裝置上可以未完成的並行呼叫完成要求數目上限。 零表示呼叫完成無法使用。

dwCallCompletionConds

可以要求呼叫完成的不同通話條件。 此成員會使用一或多個LINECALLCOMPLCOND_常數。

dwCallCompletionModes

呼叫完成的方式。 此成員會使用其中一個LINECALLCOMPLMODE_常數。

dwNumCompletionMessages

使用 [LINECALLCOMPLMODE_MESSAGE] 選項時可從中選取的呼叫完成訊息數目。 個別訊息是由範圍中零到一個小於 dwNumCompletionMessages 的值所識別。

dwCompletionMsgTextEntrySize

dwCompletionMsgTextSizedwCompletionMsgTextOffset所指定之每個呼叫完成文字描述的大小,以位元組為單位。

dwCompletionMsgTextSize

呼叫完成文字的大小,以位元組為單位。

dwCompletionMsgTextOffset

從這個資料結構的開頭到包含每個呼叫完成訊息的描述性文字的可變大小欄位的位移。 每個訊息都是 dwCompletionMsgTextEntrySize 位元組長。 這些文字描述的字串格式是由線條裝置功能的 dwStringFormat 表示。 欄位的大小是由 dwCompletionMsgTextSize所指定。

dwAddressFeatures

此位址可使用 LINEADDRFEATURE_常數的功能。 叫用支援的功能需要位址處於適當的狀態,且基礎線裝置必須在相容模式中開啟。 位位置中的零表示無法取得對應的功能。 一個表示如果位址處於適當的狀態,讓作業有意義,則可能可以使用對應的功能。 此成員可讓應用程式探索哪些位址功能可以 (,且永遠不會) 位址支援的功能。

dwPredictiveAutoTransferStates

撥號狀態或預測撥號器呼叫的狀態可以設定為自動將通話轉移至另一個位址;一或多個 LINECALLSTATE_常數。 值 0 表示無法根據撥號狀態自動轉移。

dwNumCallTreatments

LINECALLTREATMENTENTRY結構陣列中以dwCallTreatmentListSizedwCallTreatmentListOffset分隔的專案數。

dwCallTreatmentListSize

呼叫處理陣列的大小,以位元組為單位。

dwCallTreatmentListOffset

從結構的開頭位移到 LINECALLTREATMENTENTRY 結構的陣列,指定可以使用 lineSetCallTreatment) 選取位址 (支援的呼叫處理。 值為 dwNumCallTreatments times SIZEOF (LINECALLTREATMENTENTRY) 。 欄位的大小是由 dwCallTreatmentListSize所指定。

dwDeviceClassesSize

支援的裝置類別清單大小,以位元組為單位。

dwDeviceClassesOffset

從結構的開頭位移到包含此位址上支援之裝置類別識別碼的字串,以便與 lineGetID搭配使用。 元素會以 Null 字元分隔,最後一個類別識別碼後面接著兩 個 Null 字元。 欄位的大小是由 dwDeviceClassesSize所指定。

dwMaxCallDataSize

應用程式可以使用lineSetCallDataLINECALLINFO中設定的最大位元組數目。

dwCallFeatures2

使用 LINECALLFEATURE2_ 常數,此位址上所有呼叫可用的其他切換功能或功能。 它是 dwCallFeatures 成員的延伸模組。

dwMaxNoAnswerTimeout

在進行呼叫時,可以在LINECALLPARAMS中的dwNoswerTimeout成員中設定的秒數最大值。 值為 0 表示服務提供者不支援自動放棄未呼叫,或應用程式無法調整逾時值。

dwConnectedModes

LINECONNECTEDMODE_值,這些值可以出現在LINECALLSTATUSdwCallStateMode成員中,以及在此位址上呼叫的LINE_CALLSTATE訊息中。

dwOfferingModes

LINEOFFERINGMODE_值,這些值可以出現在LINECALLSTATUSdwCallStateMode成員中,以及在此位址上呼叫的LINE_CALLSTATE訊息中。

dwAvailableMediaModes

dwAddressFeatures 成員指出新呼叫可能時,媒體類型 (模式) 可在此位址上建立的新呼叫上叫用。 如果此成員為零,表示服務提供者不知道或無法指出可用的媒體類型,在此情況下,LINEDEVCAPSdwMediaModes成員中指出的任何或所有媒體類型都可使用。

備註

裝置特定延伸模組應該使用 DevSpecific (dwDevSpecificSizedwDevSpecificOffset) 此資料結構的可變大社區域。

繼承應用程式會在 LINEADDRESSCAPS 結構中不使用這個成員進行編譯,並使用 SIZEOF (LINEADDRESSCAPS) 小於新大小。 應用程式會使用lineGetAddressCaps函式傳入dwAPIVersion參數,以用於處理這種情況的 TAPI 指引。 如果應用程式傳入 的 dwTotalSize 成員小於所指定 dwAPIVersion 成員中所定義之結構的固定部分大小,則會傳回LINEERR_STRUCTURETOOSMALL。 如果應用程式已配置足夠的記憶體,在呼叫 TSPI_lineGetAddressCaps之前,TAPI 會將 dwNeededSizedwUsedSize 成員設定為結構在指定 API 版本中存在的固定大小。

支援新 API 版本) 的新服務提供者 (必須檢查傳入的 API 版本。 如果 API 版本小於提供者支援的最高版本,服務提供者不得填入舊版 API 版本中不支援的欄位,因為這些版本會落在較舊結構的變數部分。

新應用程式必須能夠辨識交涉的 API 版本,而且不會檢查已交涉 API 版本之結構之固定部分原始結尾以外的欄位內容。

透過dwAvailableMediaModesdwPredictiveAutoTransferStates成員僅適用于在呼叫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