ITLegacyCallMediaControl2::GatherDigits 方法 (tapi3if.h)
GatherDigits 方法會在指定的呼叫上起始數位的收集。 應用程式會指定要收集的最大位數。
語法
HRESULT GatherDigits(
[in] TAPI_DIGITMODE DigitMode,
[in] long lNumDigits,
[in] BSTR pTerminationDigits,
[in] long lFirstDigitTimeout,
[in] long lInterDigitTimeout
);
參數
[in] DigitMode
要監視的數位模式 () 。 此參數會指定一或多個 LINEDIGITMODE 常數。
[in] lNumDigits
要收集的數字數目。
如果此參數為零,方法會取消任何進行中的數位收集,而不需要啟動新的數位收集嘗試。 如需詳細資訊,請參閱接下來的<備註>一節。
[in] pTerminationDigits
終止數位之 BSTR 表示的指標。 如果偵測到字串中的其中一個終止位數,該數位會附加至緩衝區、終止數位集合,並將 TE_GATHERDIGITS 事件傳送至應用程式。
[in] lFirstDigitTimeout
預期第一個數字的時間長度,以毫秒為單位。 如果未在此時間範圍內收到第一個數位,則會中止數位集合,並將 TE_GATHERDIGITS 事件傳送至應用程式。 緩衝區只包含 NULL 字元,表示未收到任何數位,以及第一位數逾時終止數位收集。 您可以在AC_GATHERDIGITSMINTIMEOUT和AC_GATHERDIGITSMAXTIMEOUT功能中找到您可以指定的最小和最大逾時。
[in] lInterDigitTimeout
連續數字之間的最大時間,以毫秒為單位。 如果未在此時間範圍內收到下一個數位,則會中止數位集合,並將 TE_GATHERDIGITS 事件傳送至應用程式。 緩衝區只包含最多收集到這個點的數位,後面接著 NULL 字元,表示 Interdigit-timeout 終止了數位收集。 您可以在AC_GATHERDIGITSMINTIMEOUT和AC_GATHERDIGITSMAXTIMEOUT功能中找到可指定的最小和最大逾時。
傳回值
這個方法可以傳回其中一個值。
傳回碼 | 描述 |
---|---|
|
方法成功。 |
|
pTerminationDigits 參數不是有效的指標。 |
|
記憶體不足,無法配置收集的數位緩衝區。 |
|
呼叫必須處於 連線 狀態。 |
備註
GatherDigits 方法會轉譯為TAPI 2的呼叫。xlineGatherDigits 函式。
通話上只能有一個 GatherDigits 呼叫未完成。 如果您再次呼叫 GatherDigits , 在發生TE_GATHERDIGITS 事件之前,第二次呼叫會取消先前的位數收集。 已取消的數位收集嘗試會傳送 TE_GATHERDIGITS 事件,其中目前收集的位數。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | tapi3if.h |
程式庫 | Uuid.lib |
Dll | Tapi3.dll |