Compartir a través de


función TSPI_lineCompleteTransfer (tspi.h)

La función TSPI_lineCompleteTransfer completa la transferencia de la llamada especificada a la parte conectada en la llamada de consulta. Si dwTransferMode está LINETRANSFERMODE_CONFERENCE, el identificador de llamada original se cambia a una llamada de conferencia. De lo contrario, el proveedor de servicios debe enviar mensajes de estado de llamada que cambian las llamadas a inactivas.

Sintaxis

LONG TSPIAPI TSPI_lineCompleteTransfer(
  DRV_REQUESTID dwRequestID,
  HDRVCALL      hdCall,
  HDRVCALL      hdConsultCall,
  HTAPICALL     htConfCall,
  LPHDRVCALL    lphdConfCall,
  DWORD         dwTransferMode
);

Parámetros

dwRequestID

Identificador de la solicitud asincrónica.

hdCall

Identificador del proveedor de servicios para la llamada que se va a transferir. El estado de llamada de hdCall puede ser onHoldPendingTransfer.

hdConsultCall

Identificador de la llamada que representa una conexión al destino de la transferencia. El estado de llamada de hdConsultCall se puede conectar, revertir, ocupado o continuar.

htConfCall

Este parámetro solo es válido si dwTransferMode se especifica como LINETRANSFERMODE_CONFERENCE. El proveedor de servicios debe guardar este valor de parámetro y usarlo en todas las llamadas posteriores a los eventos de informes del procedimiento LINEEVENT en la llamada. De lo contrario, se omite este parámetro.

lphdConfCall

Puntero a un HDRVCALL que representa el identificador del proveedor de servicios para la llamada. Este parámetro solo es válido si dwTransferMode se especifica como LINETRANSFERMODE_CONFERENCE. El proveedor de servicios debe rellenar esta ubicación con su identificador para la nueva llamada de conferencia antes de volver de esta función.

dwTransferMode

Especifica cómo se va a resolver la solicitud de transferencia iniciada. Este parámetro usa una de las constantes LINETRANSFERMODE_.

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_OPERATIONUNAVAIL, LINEERR_INVALCALLSTATE, LINEERR_OPERATIONFAILED, LINEERR_NOMEM, LINEERR_RESOURCEUNAVAIL.

Comentarios

Esta función completa la transferencia de la llamada original, hdCall, a la entidad conectada actualmente a través de hdConsultCall. Normalmente, la llamada de consulta se marca en la llamada de consulta asignada como parte de TSPI_lineSetupTransfer, pero puede ser cualquier llamada a la que el conmutador sea capaz de transferir hdCall.

La solicitud de transferencia se puede resolver como una transferencia o como una llamada de conferencia triple. Cuando se resuelve como transferencia, las partes conectadas a través de hdCall y hdConsultCall se conectan entre sí, y la transición de hdCall y hdConsultCall al estado inactivo.

Cuando se resuelve como conferencia, las tres partes entran en una llamada de conferencia. Ambos identificadores de llamada existentes siguen siendo válidos, pero la transición al estado con conferencia . Se crea y devuelve un identificador de llamada de conferencia y pasa al estado conectado .

También puede realizar una transferencia ciega de una llamada mediante TSPI_lineBlindTransfer.

Esta función difiere de la función TAPI correspondiente en que sigue el modelo de TSPI para comenzar la duración de una llamada. TAPI y el proveedor de servicios intercambian identificadores opacos que representan la llamada entre sí. Además, el proveedor de servicios puede realizar devoluciones de llamada para la nueva llamada antes de que vuelva de este procedimiento. En cualquier caso, el proveedor de servicios también debe tratar el identificador que devolvió como "todavía no válido" hasta después de que el mensaje de ASYNC_COMPLETION coincidente notifique que se ha realizado correctamente. En otras palabras, no debe emitir ningún mensaje LINEEVENT para la nueva llamada o incluirlo en recuentos de llamadas en mensajes o estructuras de datos de estado para la línea.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado tspi.h

Consulte también

ASYNC_COMPLETION

LINEEVENT

constantes de LINETRANSFERMODE_

LINE_CALLSTATE

TSPI_lineBlindTransfer

TSPI_lineCloseCall

TSPI_lineSetupTransfer