Función lineHold (tapi.h)

La función lineHold coloca la llamada especificada en espera.

Sintaxis

LONG lineHold(
  HCALL hCall
);

Parámetros

hCall

Controle la llamada que se va a colocar en espera. La aplicación debe ser propietario de la llamada. El estado de llamada de hCall debe estar conectado.

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 realiza correctamente o es un número de error negativo si se produce un error. Los valores devueltos posibles son:

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

Comentarios

La llamada en espera se desconecta temporalmente, lo que permite a la aplicación usar el dispositivo de línea para realizar o responder a otras llamadas. La función lineHold realiza una llamada "suspensión dura" de la llamada especificada (en lugar de una "llamada de consulta"). Normalmente, una llamada en espera dura no se puede transferir ni incluir en una llamada de conferencia, pero una llamada de consulta puede. Las llamadas de consulta se inician mediante lineSetupTransfer, lineSetupConference o linePrepareAddToConference.

Después de que una llamada se haya colocado correctamente en espera, el estado de llamada normalmente pasa a onHold. LineUnhold recupera una llamada mantenida. Mientras una llamada está en espera, la aplicación puede recibir LINE_CALLSTATE mensajes sobre los cambios de estado de la llamada mantenida. Por ejemplo, si la parte mantenida se bloquea, el estado de llamada puede pasar a desconectado.

En una situación puenteda, es posible que una operación lineHold no coloque realmente la llamada en espera, ya que el estado de otras estaciones en la llamada puede gobernar (por ejemplo, intentar "retener" una llamada cuando otras estaciones participan no es posible); en su lugar, la llamada simplemente se puede cambiar al modo LINECONNECTEDMODE_INACTIVE si permanece conectado en otras estaciones.

Requisitos

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

Consulte también

Información general sobre la suspensión

LINE_CALLSTATE

Funciones de servicio de línea complementarias

Información general de referencia de TAPI 2.2

linePrepareAddToConference

lineSetupConference

lineSetupTransfer

lineUnhold