Share via


función TSPI_lineDial (tspi.h)

La función TSPI_lineDial marca el número de marcado especificado en la llamada especificada.

Sintaxis

LONG TSPIAPI TSPI_lineDial(
  DRV_REQUESTID dwRequestID,
  HDRVCALL      hdCall,
  LPCWSTR       lpszDestAddress,
  DWORD         dwCountryCode
);

Parámetros

dwRequestID

Identificador de la solicitud asincrónica.

hdCall

Identificador del proveedor de servicios a la llamada que se va a marcar. El estado de llamada de hdCall puede ser cualquier estado excepto inactivo y desconectado.

lpszDestAddress

Puntero a una cadena Unicode terminada en null que especifica el 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. La implementación lo usa para seleccionar los protocolos de progreso de llamada para la dirección de destino. Si se especifica un valor de 0, se usa un protocolo predeterminado de progreso de llamada definido por el proveedor de servicios. TAPI no valida este parámetro cuando se llama a esta función.

Valor devuelto

Devuelve dwRequestID o un número de error si se produce un error. El parámetro real lResult del ASYNC_COMPLETION correspondiente es cero si la función se realiza correctamente o si se produce un error. Los valores devueltos posibles son los siguientes:

LINEERR_INVALCALLHANDLE, LINEERR_OPERATIONFAILED, LINEERR_INVALADDRESS, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALCOUNTRYCODE, LINEERR_DIALBILLING, LINEERR_INVALCALLSTATE, LINEERR_DIALQUIET, LINEERR_ADDRESSBLOCKED, LINEERR_DIALDIALTONE, LINEERR_NOMEM, LINEERR_DIALPROMPT, LINEERR_OPERATIONUNAVAIL.

Comentarios

El proveedor de servicios devuelve LINEERR_INVALCALLSTATE si el estado actual de la llamada no permite el marcado.

El proveedor de servicios no realiza ninguna marcación si devuelve LINEERR_INVALADDRESS.

Si el proveedor de servicios devuelve LINEERR_DIALBILLING, LINEERR_DIALQUIET, LINEERR_DIALDIALTONE o LINEERR_DIALPROMPT, no debe realizar ninguna de las acciones realizadas de otro modo por TSPI_lineDial (por ejemplo, sin marcado parcial y sin offhook). Esto se debe a que el proveedor de servicios debe examinar previamente el número de caracteres no admitidos en primer lugar.

TSPI_lineDial se utiliza para marcar en una apariencia de llamada existente; por ejemplo, los identificadores de llamada devueltos desde TSPI_lineMakeCall con NULL como lpszDestAddress o finalizando en ';', identificadores de llamada devueltos desde TSPI_lineSetupTransfer o TSPI_lineSetupConference. TSPI_lineDial se puede invocar varias veces en el transcurso de la marcación en el caso de marcado de varias fases, si las funcionalidades del dispositivo de la línea lo permiten.

Si la cadena a la que apunta el parámetro lpszDestAddress en la llamada anterior a la función TSPI_lineMakeCall o TSPI_lineDial finaliza con un punto y coma, una cadena vacía en la llamada actual a TSPI_lineDial indica que se ha completado la marcación.

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 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 que el proveedor de servicios haya aceptado la dirección, 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 debe enviar mensajes LINE_CALLSTATE a TAPI para informarle sobre el progreso de la llamada.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado tspi.h

Consulte también

ASYNC_COMPLETION

LINE_CALLSTATE

TSPI_lineMakeCall