ITAddress::CreateCall 方法 (tapi3if.h)

CreateCall 方法會建立新的 Call 物件,可用來進行傳出呼叫,並傳回物件的 ITBasicCallControl 介面指標。 新建立的呼叫處於CS_IDLE 狀態 ,且未選取媒體或終端機。

可接受的通話位址、位址類型和媒體類型的輸入值是支援目前位址的電話語音服務提供者所特有。 如需隨附於 Windows 2000 的 TSP 資訊,請參閱 關於電話語音服務提供者 (TSP) 。 如需第三方 TSP,請參閱自動銷售工具所提供的檔。

語法

HRESULT CreateCall(
  [in]  BSTR               pDestAddress,
  [in]  long               lAddressType,
  [in]  long               lMediaTypes,
  [out] ITBasicCallControl **ppCall
);

參數

[in] pDestAddress

BSTR 字串包含目的地位址。 格式為提供者特定。 此指標可以是非撥號位址的 NULL (,例如使用熱電話) ,或使用 ITBasicCallControl::D ial 執行所有撥號時。 NULLITBasicCallControl::P ickup 中的 NULLpGroupID 結合會導致群組取貨。 具有反向多任務功能的服務提供者可讓應用程式一次指定多個位址。

[in] lAddressType

包含 地址類型 常數,例如 LINEADDRESSTYPE_PHONENUMBER,其描述位址的格式。 這個位址的值必須有效。 使用 ITAddressCapabilities::get_AddressCapability ,並將 AddressCap 設定為 AC_ADDRESSTYPES 來驗證值。

[in] lMediaTypes

識別將涉及呼叫會話的 媒體類型

[out] ppCall

ITBasicCallControl 介面的指標。

傳回值

這個方法可以傳回下列其中一個值。

意義
S_OK
方法成功。
E_INVALIDARG
位址類型 lAddressType 無效或指定多個地址類型。
E_OUTOFMEMORY
記憶體不足,無法執行作業。
E_POINTER
ppCall 參數不是有效的指標。

備註

應用程式必須使用 SysAllocStringpDestAddress 參數配置記憶體,並在不再需要變數時使用 SysFreeString 釋放記憶體。

當位址類型LINEADDRESSTYPE_SDP時,應用程式應該在 pDestAddress 上呼叫 ITSDP::get_IsValid 方法,以確認包含的 SDP 資訊已根據 RFC 2327 正確建構。

您必須使用此方法建立用來做為諮詢通話的通話,例如在會議、轉移或轉寄作業期間。

TAPI 會在 ITAddress::CreateCall 所傳回的 ITBasicCallControl 介面上呼叫 AddRef 方法。 應用程式必須在 ITBasicCallControl 介面上呼叫 Release,以釋放與其相關聯的資源。

注意 這個方法與 TAPI 2 中的 lineMakeCall 不完全相同。 它提供 TAPI 與許多相同的資訊,但在呼叫 ITBasicCallControl::Connect 之前,不會執行平行作業。
 

規格需求

需求
目標平台 Windows
標頭 tapi3if.h (包括 Tapi3.h)
程式庫 Uuid.lib
Dll Tapi3.dll

另請參閱

Address 物件

ITAddress

ITBasicCallControl

ITBasicCallControl::D ial

lineDial