Función linePark (tapi.h)

La función linePark coloca la llamada especificada según el modo de estacionamiento especificado.

Sintaxis

LONG linePark(
  HCALL       hCall,
  DWORD       dwParkMode,
  LPCSTR      lpszDirAddress,
  LPVARSTRING lpNonDirAddress
);

Parámetros

hCall

Maneje la llamada que se va a estacionar. La aplicación debe ser propietario de la llamada. El estado de llamada de hCall debe estar conectado.

dwParkMode

Modo de estacionamiento con el que se va a estacionar la llamada. Este parámetro solo puede tener un conjunto de marcas único y usa una de las LINEPARKMODE_ Constantes.

lpszDirAddress

Puntero a una cadena terminada en null que indica la dirección donde se va a estacionar la llamada cuando se usa el estacionamiento dirigido. La dirección está en formato de número de marcado. Este parámetro se omite para el parque no direccionado.

lpNonDirAddress

Puntero a una estructura de tipo VARSTRING. En el caso del parque no direccionado, la dirección donde se estaciona la llamada se devuelve en esta estructura. Este parámetro se omite para el parque dirigido. Dentro de la estructura VARSTRING , dwStringFormat debe establecerse en STRINGFORMAT_ASCII (un búfer de cadena ASCII que contenga una cadena terminada en NULL) y el valor NULL de terminación debe tener en cuenta en dwStringSize. Antes de llamar a linePark, la aplicación debe establecer el miembro dwTotalSize de esta estructura para indicar la cantidad de memoria disponible para TAPI para devolver información.

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_INVALADDRESS, LINEERR_NOTOWNER, LINEERR_INVALCALLHANDLE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLSTATE, LINEERR_OPERATIONFAILED, LINEERR_INVALPARKMODE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_STRUCTURETOOSMALL, LINEERR_NOMEM, LINEERR_UNINITIALIZED.

Comentarios

Con el estacionamiento dirigido, la aplicación determina la dirección en la que desea estacionar la llamada. Con el estacionamiento no direccionado, el modificador determina la dirección y la proporciona a la aplicación. En cualquier caso, una llamada estacionada se puede anular especificando esta dirección.

La llamada estacionada normalmente entra en el estado de inactividad después de que se haya estacionado correctamente, y la aplicación debe desasignar su identificador a la llamada. Si la aplicación realiza una lineUnpark en la llamada estacionada, se crea un nuevo identificador de llamada para la llamada sin parque aunque la aplicación no haya desasignado su identificador de llamada anterior.

Algunos modificadores pueden recordar al usuario después de que se haya estacionado una llamada durante un largo período de tiempo. La aplicación ve una llamada de oferta con un motivo de llamada establecido en reminder.

En un parque no direccionado, si el miembro dwTotalSize de la estructura VARSTRING no especifica una cantidad suficiente de memoria para recibir la dirección del parque, el mensaje de respuesta correspondiente devuelve un valor de error LINEERR_STRUCTURETOOSMALL. En tales casos, no hay ninguna manera de recuperar la dirección de parque completa. Cuando se devuelve un valor de error LINEERR_STRUCTURETOOSMALL, el miembro dwNeededSize de la estructura NonDirAddress no contiene un valor válido. Si se recibe un valor de error de LINEERR_STRUCTURETOOSMALL de un linePark no direccionado, aumente el tamaño del búfer y llame a linePark de nuevo hasta que devuelva éxito o un resultado de LINEERR_XXX diferente.

Requisitos

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

Consulte también

LINE_REPLY

Información general sobre el parque

Funciones complementarias del servicio de línea

Introducción a la referencia de TAPI 2.2

VARSTRING

lineUnpark