funzione TSPI_lineCompleteTransfer (tspi.h)
La funzione TSPI_lineCompleteTransfer completa il trasferimento della chiamata specificata alla parte connessa nella chiamata di consultazione. Se dwTransferMode è LINETRANSFERMODE_CONFERENCE, l'handle di chiamata originale viene modificato in una conferenza telefonica. In caso contrario, il provider di servizi deve inviare messaggi di stato di chiamata che modificano le chiamate inattive.
Sintassi
LONG TSPIAPI TSPI_lineCompleteTransfer(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
HDRVCALL hdConsultCall,
HTAPICALL htConfCall,
LPHDRVCALL lphdConfCall,
DWORD dwTransferMode
);
Parametri
dwRequestID
Identificatore della richiesta asincrona.
hdCall
Handle del provider di servizi per la chiamata da trasferire. Lo stato della chiamata di hdCall può essere onHoldPendingTransfer.
hdConsultCall
Handle per la chiamata che rappresenta una connessione alla destinazione del trasferimento. Lo stato della chiamata di hdConsultCall può essere connesso, ringback, occupato o continuare.
htConfCall
Questo parametro è valido solo se dwTransferMode viene specificato come LINETRANSFERMODE_CONFERENCE. Il provider di servizi deve salvare questo valore di parametro e usarlo in tutte le chiamate successive alla routine LINEEVENT che segnala gli eventi sulla chiamata. In caso contrario, questo parametro viene ignorato.
lphdConfCall
Puntatore a un HDRVCALL che rappresenta l'identificatore del provider di servizi per la chiamata. Questo parametro è valido solo se dwTransferMode viene specificato come LINETRANSFERMODE_CONFERENCE. Il provider di servizi deve riempire questa posizione con il relativo handle per la nuova conferenza telefonica prima di tornare da questa funzione.
dwTransferMode
Specifica la modalità di risoluzione della richiesta di trasferimento avviata. Questo parametro usa una delle costanti LINETRANSFERMODE_.
Valore restituito
Restituisce dwRequestID o un numero di errore se si verifica un errore. Il parametro effettivo lResultdell'ASYNC_COMPLETION corrispondente è zero se la funzione ha esito positivo o un numero di errore se si verifica un errore. I valori restituiti possibili sono i seguenti:
LINEERR_INVALCALLHANDLE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLSTATE, LINEERR_OPERATIONFAILED, LINEERR_NOMEM, LINEERR_RESOURCEUNAVAIL.
Commenti
Questa funzione completa il trasferimento della chiamata originale, hdCall, all'entità attualmente connessa tramite hdConsultCall. La chiamata di consultazione viene in genere chiamata alla chiamata di consultazione allocata come parte di TSPI_lineSetupTransfer, ma può essere qualsiasi chiamata a cui il commutatore è in grado di trasferire hdCall.
La richiesta di trasferimento può essere risolta come trasferimento o come conferenza telefonica a tre vie. Quando viene risolto come trasferimento, le parti connesse tramite hdCall e hdConsultCall sono connesse tra loro e hdCall e hdConsultCall passano allo stato di inattività.
Quando viene risolta come conferenza, tutte e tre le parti entrano in una conferenza telefonica. Entrambi gli handle di chiamata esistenti rimangono validi, ma passano allo stato conferenza . Viene creato e restituito un handle di conferenza telefonica e passa allo stato connesso .
Può anche essere possibile eseguire un trasferimento cieco di una chiamata usando TSPI_lineBlindTransfer.
Questa funzione è diversa dalla funzione TAPI corrispondente in quanto segue il modello TSPI per iniziare la durata di una chiamata. TAPI e il provider di servizi scambiano handle opachi che rappresentano la chiamata tra loro. Inoltre, il provider di servizi è autorizzato a eseguire callback per la nuova chiamata prima che venga restituito da questa procedura. In ogni caso, il provider di servizi deve anche considerare l'handle restituito come "non ancora valido" fino a quando il messaggio corrispondente ASYNC_COMPLETION segnala l'esito positivo. In altre parole, non deve emettere alcun messaggio LINEEVENT per la nuova chiamata o includerlo nei conteggi delle chiamate in messaggi o strutture di dati di stato per la riga.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | tspi.h |