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
Funciones de servicio de línea complementarias