lineMonitorTones 函式 (tapi.h)
lineMonitorTones 函式會啟用和停用呼叫上的頻內音偵測。 每次偵測到指定的音調時,都會將訊息傳送至應用程式。
語法
LONG lineMonitorTones(
HCALL hCall,
LPLINEMONITORTONE const lpToneList,
DWORD dwNumEntries
);
參數
hCall
處理要監視其語音通道音調的通話。 hCall 的呼叫狀態可以是閑置以外的任何狀態。
lpToneList
要監視的音調清單。 此參數的類型為 LINEMONITORTONE。 此清單中的每個音調都有應用程式定義的標記欄位,用來識別清單中的個別音調,以報告音調偵測。 進行中的音調監視會取消或變更,方法是針對 lpToneList 或另一個音調清單呼叫此作業 NULL。
dwNumEntries
lpToneList 中的項目數。 如果 lpToneList 為 NULL,則會忽略此參數。
傳回值
如果要求成功或發生錯誤,則傳回零。 可能的傳回值為:
LINEERR_INVALCALLHANDLE、LINEERR_INVALCALLSTATE、LINEERR_INVALPOINTER、LINEERR_INVALTONE、LINEERR_NOMEM、LINEERR_OPERATIONFAILED、LINEERR_OPERATIONUNAVAIL、LINEERR_RESOURCEUNAVAIL、LINEERR_UNINITIALIZED。
備註
如果已正確起始音調監視,而不是當音調監視終止時,此函式就會成功。 音調監視會維持有效狀態,直到使用另一個音調清單來呼叫 lineMonitorTones , (或 NULL) 、直到呼叫轉換到 閒置,或當應用程式解除分配呼叫句柄時為止。
雖然此函式可以在任何呼叫狀態中叫用,但通常只能在呼叫處於 連線 狀態時偵測到音調。 音調偵測通常需要計算資源。 根據服務提供者和其他競爭這類資源的活動,可以偵測到的音調數目可能會隨著時間而有所不同。 此外,監視單一三次頻率音調與三個單一頻率音調,可以耗用對等的資源量。 如果資源已過度認可,則會傳回LINEERR_RESOURCEUNAVAIL錯誤。
lineMonitorTones 函式也可用來偵測無聲。 無聲會指定為頻率為零的音調。
會議通話上的音調監視僅適用於 hConfCall,不適用於個別參與通話
如果傳回LINEERR_INVALPOINTER錯誤值,則指定的 lpToneList 參數無效,或 dwNumEntries 參數所指定的值太大。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | tapi.h |
程式庫 | Tapi32.lib |
Dll | Tapi32.dll |