Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La función lineDial marca el número de marcado especificado en la llamada especificada.
Sintaxis
LONG lineDialW(
HCALL hCall,
LPCWSTR lpszDestAddress,
DWORD dwCountryCode
);
Parámetros
hCall
Controla la llamada en la que se va a marcar un número. La aplicación debe ser propietario de la llamada. El estado de llamada de hCall puede ser cualquier estado, excepto inactivos y desconectados.
lpszDestAddress
Destino que se va a marcar con el formato de número de marcado estándar.
dwCountryCode
Código de país o región del destino. Esta implementación la usa para seleccionar los protocolos de progreso de la llamada para la dirección de destino. Si se especifica un valor de 0, se usa un protocolo de progreso de llamada predeterminado definido por el proveedor de servicios.
Valor devuelto
Devuelve un identificador de solicitud positivo si la función se completa de forma asincrónica o un número de error negativo si se produce un error. El parámetro dwParam2 del mensaje de LINE_REPLY correspondiente es cero si la función se ejecuta correctamente o es un número de error negativo si se produce un error. Los valores devueltos posibles son:
LINEERR_ADDRESSBLOCKED, LINEERR_INVALPOINTER, LINEERR_DIALBILLING, LINEERR_NOMEM, LINEERR_DIALDIALTONE, LINEERR_NOTOWNER, LINEERR_DIALPROMPT, LINEERR_OPERATIONFAILED, LINEERR_DIALQUIET, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLHANDLE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALCALLSTATE, LINEERR_UNINITIALIZED, LINEERR_INVALCOUNTRYCODE.
Observaciones
Si se devuelve LINEERR_INVALADDRESS, no se ha realizado ninguna marcación. Si se devuelve LINEERR_DIALBILLING, LINEERR_DIALQUIET, LINEERR_DIALDIALTONE o LINEERR_DIALPROMPT, no se ha producido ninguna de las acciones que realice lineDial. Por ejemplo, ninguna de las direcciones que se pueden marcar antes del carácter infractor se ha marcado, no ha cambiado ningún estado de hookswitch, etc.
La función lineDial se usa para marcar en una apariencia de llamada existente. Por ejemplo, después de configurar una llamada para transferencia o conferencia, se asigna automáticamente una llamada de consulta y la función lineDial se usaría para realizar la marcación de esta llamada de consulta. La función lineDial se puede invocar varias veces en el transcurso de la marcación de varias fases, si las funcionalidades del dispositivo de la línea lo permiten. Además, se pueden proporcionar varias direcciones en una sola cadena de marcado separada por CRLF. Los proveedores de servicios que proporcionan multiplexación inversa pueden establecer llamadas físicas individuales con cada una de las direcciones y pueden devolver un identificador de llamada único al agregado de todas las llamadas a la aplicación. Todas las direcciones usarían el mismo código de país o región.
La marcación se considera completa después de pasar la dirección al proveedor de servicios; no después de que la llamada se conecte finalmente. Los proveedores de servicios que proporcionan multiplexación inversa pueden permitir que se proporcionen varias direcciones a la vez. El proveedor de servicios envía LINE_CALLSTATE mensajes a la aplicación para informarle sobre el progreso de la llamada. Para anular un intento de llamada mientras se establece una llamada, la aplicación que invoca debe usar lineDrop.
Una aplicación puede establecer el parámetro lpszDestAddress de la función lineDial en la dirección de una cadena vacía para indicar que la marcación está completa, pero solo si las llamadas anteriores a la lineMakeCall y funciones lineDial han tenido las cadenas especificadas por lpszDestAddress terminados con punto y coma.
La función lineDial también se puede usar en marcado parcial. Para iniciar una llamada mediante marcado parcial, la aplicación llama a lineMakeCall y especifica una cadena de marcado parcial. Una cadena de marcado parcial es cualquier cadena de marcado terminada por punto y coma. Normalmente, la llamada pasará a LINECALLSTATE_DIALING después de la cual se puede llamar a lineDial para especificar más cadenas de marcado, cada una terminada por un punto y coma. El marcado se completa llamando a lineDial con una cadena de marcado que no finaliza con un punto y coma (por ejemplo, una cadena vacía). Esta técnica permite a las aplicaciones realizar marcado parcial interactivo con el usuario o habilitar marcados más sofisticados que un TSP puede ser capaz de hacerlo.
Si una cadena de destino nula o una cadena vacía terminada con un punto y coma (";") se escribe en lineMakeCall la aplicación pasa a LINE_CALLSTATE_DIALTONE. Se puede llamar a la función lineDial en este estado para especificar una sola cadena de marcado o varias cadenas de marcado parciales, cada una separada por un punto y coma. La aplicación pasa al estado LINECALLSTATE_DIALING después de escribir el primer dígito.
Nota
El encabezado tapi.h define lineDial como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
| Requisito | Valor |
|---|---|
| de la plataforma de destino de |
Windows |
| encabezado de |
tapi.h |
| biblioteca de |
Tapi32.lib |
| DLL de |
Tapi32.dll |
Consulte también
referencia de servicios de telefonía básica de
de información general de marcado de