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
可以設定為判斷何時正式將通話視為「無答案」的通道數目上限。如果無法設定這個通道數目, 則 dwMinFwdNumRings 和 dwMaxNumRings 相等。
dwMaxCallCompletions
此行裝置上可以未完成的並行呼叫完成要求數目上限。 零表示呼叫完成無法使用。
dwCallCompletionConds
可以要求呼叫完成的不同通話條件。 此成員會使用一或多個LINECALLCOMPLCOND_常數。
dwCallCompletionModes
呼叫完成的方式。 此成員會使用其中一個LINECALLCOMPLMODE_常數。
dwNumCompletionMessages
使用 [LINECALLCOMPLMODE_MESSAGE] 選項時可從中選取的呼叫完成訊息數目。 個別訊息是由範圍中零到一個小於 dwNumCompletionMessages 的值所識別。
dwCompletionMsgTextEntrySize
dwCompletionMsgTextSize和dwCompletionMsgTextOffset所指定之每個呼叫完成文字描述的大小,以位元組為單位。
dwCompletionMsgTextSize
呼叫完成文字的大小,以位元組為單位。
dwCompletionMsgTextOffset
從這個資料結構的開頭到包含每個呼叫完成訊息的描述性文字的可變大小欄位的位移。 每個訊息都是 dwCompletionMsgTextEntrySize 位元組長。 這些文字描述的字串格式是由線條裝置功能的 dwStringFormat 表示。 欄位的大小是由 dwCompletionMsgTextSize所指定。
dwAddressFeatures
此位址可使用 LINEADDRFEATURE_常數的功能。 叫用支援的功能需要位址處於適當的狀態,且基礎線裝置必須在相容模式中開啟。 位位置中的零表示無法取得對應的功能。 一個表示如果位址處於適當的狀態,讓作業有意義,則可能可以使用對應的功能。 此成員可讓應用程式探索哪些位址功能可以 (,且永遠不會) 位址支援的功能。
dwPredictiveAutoTransferStates
撥號狀態或預測撥號器呼叫的狀態可以設定為自動將通話轉移至另一個位址;一或多個 LINECALLSTATE_常數。 值 0 表示無法根據撥號狀態自動轉移。
dwNumCallTreatments
LINECALLTREATMENTENTRY結構陣列中以dwCallTreatmentListSize和dwCallTreatmentListOffset分隔的專案數。
dwCallTreatmentListSize
呼叫處理陣列的大小,以位元組為單位。
dwCallTreatmentListOffset
從結構的開頭位移到 LINECALLTREATMENTENTRY 結構的陣列,指定可以使用 lineSetCallTreatment) 選取位址 (支援的呼叫處理。 值為 dwNumCallTreatments times SIZEOF (LINECALLTREATMENTENTRY) 。 欄位的大小是由 dwCallTreatmentListSize所指定。
dwDeviceClassesSize
支援的裝置類別清單大小,以位元組為單位。
dwDeviceClassesOffset
從結構的開頭位移到包含此位址上支援之裝置類別識別碼的字串,以便與 lineGetID搭配使用。 元素會以 Null 字元分隔,最後一個類別識別碼後面接著兩 個 Null 字元。 欄位的大小是由 dwDeviceClassesSize所指定。
dwMaxCallDataSize
應用程式可以使用lineSetCallData在LINECALLINFO中設定的最大位元組數目。
dwCallFeatures2
使用 LINECALLFEATURE2_ 常數,此位址上所有呼叫可用的其他切換功能或功能。 它是 dwCallFeatures 成員的延伸模組。
dwMaxNoAnswerTimeout
在進行呼叫時,可以在LINECALLPARAMS中的dwNoswerTimeout成員中設定的秒數最大值。 值為 0 表示服務提供者不支援自動放棄未呼叫,或應用程式無法調整逾時值。
dwConnectedModes
LINECONNECTEDMODE_值,這些值可以出現在LINECALLSTATUS的dwCallStateMode成員中,以及在此位址上呼叫的LINE_CALLSTATE訊息中。
dwOfferingModes
LINEOFFERINGMODE_值,這些值可以出現在LINECALLSTATUS的dwCallStateMode成員中,以及在此位址上呼叫的LINE_CALLSTATE訊息中。
dwAvailableMediaModes
當 dwAddressFeatures 成員指出新呼叫可能時,媒體類型 (模式) 可在此位址上建立的新呼叫上叫用。 如果此成員為零,表示服務提供者不知道或無法指出可用的媒體類型,在此情況下,LINEDEVCAPS中dwMediaModes成員中指出的任何或所有媒體類型都可使用。
備註
裝置特定延伸模組應該使用 DevSpecific (dwDevSpecificSize 和 dwDevSpecificOffset) 此資料結構的可變大社區域。
繼承應用程式會在 LINEADDRESSCAPS 結構中不使用這個成員進行編譯,並使用 SIZEOF (LINEADDRESSCAPS) 小於新大小。 應用程式會使用lineGetAddressCaps函式傳入dwAPIVersion參數,以用於處理這種情況的 TAPI 指引。 如果應用程式傳入 的 dwTotalSize 成員小於所指定 dwAPIVersion 成員中所定義之結構的固定部分大小,則會傳回LINEERR_STRUCTURETOOSMALL。 如果應用程式已配置足夠的記憶體,在呼叫 TSPI_lineGetAddressCaps之前,TAPI 會將 dwNeededSize 和 dwUsedSize 成員設定為結構在指定 API 版本中存在的固定大小。
支援新 API 版本) 的新服務提供者 (必須檢查傳入的 API 版本。 如果 API 版本小於提供者支援的最高版本,服務提供者不得填入舊版 API 版本中不支援的欄位,因為這些版本會落在較舊結構的變數部分。
新應用程式必須能夠辨識交涉的 API 版本,而且不會檢查已交涉 API 版本之結構之固定部分原始結尾以外的欄位內容。
透過dwAvailableMediaModes的dwPredictiveAutoTransferStates成員僅適用于在呼叫lineGetAddressCaps時要求 API 版本為 2.0 或更新版本的應用程式。
規格需求
標頭 | tapi.h |