TSPI_lineMonitorDigits 函数 (tspi.h)
TSPI_lineMonitorDigits 函数启用和禁用对调用中收到的数字的无缓冲区检测。 每次检测到指定数字模式 () 的数字时,TAPI 会向应用程序发送 一条LINE_MONITORDIGITS 消息,指示检测到哪个数字。
语法
LONG TSPIAPI TSPI_lineMonitorDigits(
HDRVCALL hdCall,
DWORD dwDigitModes
);
参数
hdCall
要检测数字的调用的句柄。 hdCall 的调用状态可以是空闲或断开连接之外的任何状态。
dwDigitModes
数字模式 (要监视的) 。 值为 0 的 dwDigitModes 参数取消数字监视。 dwDigitModes 参数可以具有LINEDIGITMODE_常量之一。
返回值
如果函数成功,则返回零;如果发生错误,则返回错误号。 可能的返回值如下所示:
LINEERR_INVALCALLHANDLE、LINEERR_OPERATIONUNAVAIL、LINEERR_INVALCALLSTATE、LINEERR_OPERATIONFAILED、LINEERR_INVALDIGITMODE、LINEERR_RESOURCEUNAVAIL、LINEERR_NOMEM。
注解
此函数在正确启动数字监视时返回零 (成功) ,而不是在数字监视终止时返回。 数字监视将一直有效,直到调用 TSPI_lineMonitorDigits 且 dwDigitModes 设置为零时显式禁用,或直到调用转换为空闲。 当数字监视取消 (即 dwDigitModes 参数为零) 时,函数必须返回零。 当呼叫处于空闲状态时,服务提供商必须终止数字监视。 TAPI 不会自发调用 TSPI_lineMonitorDigits 来终止监视。
尽管可以在任何调用状态下调用此函数,但通常仅在调用处于 连接 状态时才检测到数字。
每次检测到数字时,服务提供商都会向 TAPI 发送 LINE_MONITORDIGITS 消息,并将检测到的数字作为参数传递。 如果在 dwDigitModes 中同时设置了LINEDIGITMODE_DTMF和LINEDIGITMODE_DTMFEND,则会为每个数字发送两条LINE_MONITORDIGITS消息。
TAPI 可以使用 TSPI_lineMonitorDigits 启用或禁用无缓冲区数字检测。 它可以使用 TSPI_lineGatherDigits 进行缓冲数字检测。 缓冲数字收集完成后,将发送 LINE_GATHERDIGITS 消息。 可以在同一调用上同时启用缓冲和无缓冲数字检测。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | tspi.h |