Función lineGenerateDigits (tapi.h)

La función lineGenerateDigits inicia la generación de los dígitos especificados en la llamada especificada como tonos de banda mediante el modo de señalización especificado. Al llamar a esta función con un valor NULL para lpszDigits , se anula cualquier generación de dígitos actualmente en curso. Invocar lineGenerateDigits o lineGenerateTone mientras la generación de dígitos está en curso anula la generación de dígitos o la generación de tono actual e inicia la generación de los dígitos o tono especificados más recientemente.

Sintaxis

LONG lineGenerateDigits(
  HCALL  hCall,
  DWORD  dwDigitMode,
  LPCSTR lpszDigits,
  DWORD  dwDuration
);

Parámetros

hCall

Identificador de la llamada. La aplicación debe ser propietario de la llamada. El estado de llamada de hCall puede ser cualquier estado. TAPI no impone ningún requisito de callstate, pero algunos proveedores de servicios de Tapi pueden requerir que la hCall esté en estado de LINECALLSTATE_CONNECTED.

dwDigitMode

Formato que se usará para señalar estos dígitos. Tenga en cuenta que dwDigitMode solo puede tener un único conjunto de marcas. Este parámetro usa una de las LINEDIGITMODE_ Constantes.

lpszDigits

Puntero a un búfer de caracteres terminado en null que contiene los dígitos que se van a generar. Los caracteres válidos son los especificados para las constantes de LINEDIGITMODE_ proporcionadas en dwDigitModes.

Además, la coma (,) también es un carácter válido. Una coma inserta un retraso adicional entre la señalización de los dígitos anteriores y siguientes que separa. La duración de esta pausa está definida por la configuración y las funcionalidades del dispositivo de línea indican esta duración. Se pueden usar varias comas para insertar pausas más largas. Los dígitos no válidos se omiten durante la generación, en lugar de notificarse como errores.

La exclamación (!) es un carácter válido. Este carácter provoca una operación "hookflash", como se describe para las direcciones que se pueden marcar.

dwDuration

Tanto la duración en milisegundos de dígitos DTMF como el espaciado de pulso y DTMF entre dígitos. Un valor de 0 usa un valor predeterminado. El parámetro dwDuration debe estar dentro del intervalo especificado por MinDialParams y MaxDialParams en LINEDEVCAPS. Si está fuera del intervalo, el valor real se establece en el valor más cercano del intervalo.

Valor devuelto

Devuelve cero si la solicitud se realiza correctamente o un número de error negativo si se produce un error. Los valores devueltos posibles son:

LINEERR_INVALCALLHANDLE, LINEERR_NOTOWNER, LINEERR_INVALCALLSTATE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALDIGITMODE, LINEERR_OPERATIONFAILED, LINEERR_INVALPOINTER, LINEERR_RESOURCEUNAVAIL, LINEERR_NOMEM, LINEERR_UNINITIALIZED.

Comentarios

La función lineGenerateDigits se considera que se ha completado correctamente cuando se ha iniciado correctamente la generación de dígitos, no cuando se han generado todos los dígitos. A diferencia de lineDial, que marca los dígitos de forma dependiente de la red, lineGenerateDigits garantiza producir los dígitos como tonos de banda sobre el canal de voz mediante pulsos de marcado DTMF o hookswitch al usar pulsos de pulso. La función lineGenerateDigits generalmente no es adecuada para realizar llamadas o marcados. Está pensado para la señalización de un extremo a otro sobre una llamada establecida.

Una vez generados todos los dígitos de lpszDigits , o después de que se haya anulado o cancelado la generación de dígitos, se envía un mensaje LINE_GENERATE a la aplicación.

Solo se permite que una solicitud de generación de banda (generación de tono o generación de dígitos) esté en curso por llamada en todas las aplicaciones que sean propietarios de la llamada. La generación de dígitos en una llamada se cancela iniciando otra solicitud de generación de dígitos o una solicitud de generación de tono. Para cancelar la generación de dígitos actual, la aplicación puede invocar lineGenerateDigits y especificar NULL para el parámetro lpszDigits .

Según el proveedor de servicios y el hardware, la aplicación puede supervisar los dígitos que genera. Si no lo desea, la aplicación puede deshabilitar la supervisión de dígitos al generar dígitos.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado tapi.h
Library Tapi32.lib
Archivo DLL Tapi32.dll

Consulte también

LINEDEVCAPS

LINE_GENERATE

Funciones de servicio de línea complementarias

Información general de referencia de TAPI 2.2

lineDial

lineGenerateTone