Funzione lineCompleteCall (tapi.h)
La funzione lineCompleteCall specifica invece come deve essere completata una chiamata che non è stata connessa normalmente. Il commutatore o la rete potrebbe non essere in grado di completare una chiamata perché le risorse di rete sono occupate o la stazione remota è occupata o non risponde. L'applicazione può richiedere che la chiamata venga completata in uno dei diversi modi.
Sintassi
LONG lineCompleteCall(
HCALL hCall,
LPDWORD lpdwCompletionID,
DWORD dwCompletionMode,
DWORD dwMessageID
);
Parametri
hCall
Gestire per la chiamata il cui completamento è richiesto. L'applicazione deve essere un proprietario della chiamata. Lo stato della chiamata di hCall deve essere occupato o ringback.
lpdwCompletionID
Puntatore a una posizione di memoria con dimensioni DWORD. L'identificatore di completamento viene usato per identificare le singole richieste di completamento in corso. Un identificatore di completamento diventa non valido e può essere riutilizzato al termine della richiesta o dopo l'annullamento di una richiesta in sospeso.
dwCompletionMode
Modalità di completamento della chiamata. Questo parametro usa una e una sola delle costanti LINECALLCOMPLMODE_.
dwMessageID
Messaggio da inviare quando si completa la chiamata utilizzando LINECALLCOMPLMODE_MESSAGE. Questo identificatore seleziona il messaggio da un numero ridotto di messaggi predefiniti.
Valore restituito
Restituisce un identificatore di richiesta positivo se la funzione viene completata in modo asincrono o un numero di errore negativo se si verifica un errore. Il parametro dwParam2 del messaggio di LINE_REPLY corrispondente è zero se la funzione ha esito positivo o è un numero di errore negativo se si verifica un errore. I valori restituiti possibili sono:
LINEERR_COMPLETIONOVERRUN, LINEERR_NOMEM, LINEERR_INVALCALLCOMPLMODE, LINEERR_NOTOWNER, LINEERR_INVALCALLSTATE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLHANDLE, LINEERR_OPERATIONFAILED, LINEERR_INVALMESSAGEID, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_UNINITIALIZED.
Commenti
Questa funzione viene considerata completa quando la richiesta è stata accettata dal commutatore o dalla rete; non quando la richiesta viene completata completamente nel modo specificato. Al termine di questa funzione, la chiamata passa in genere all'inattività. Quando la stazione o la rete chiamata entra in uno stato in cui la chiamata può essere completata come richiesto, l'applicazione riceve una notifica da un messaggio di LINE_CALLSTATE con lo stato della chiamata uguale all'offerta. Il record LINECALLINFO della chiamata elenca il motivo della chiamata come CALLCOMPLETION e fornisce anche l'identificatore di completamento. È possibile avere più richieste di completamento delle chiamate in sospeso; il numero massimo dipende dal dispositivo. L'identificatore di completamento viene usato anche per fare riferimento a ogni singola richiesta in modo che le richieste possano essere annullate chiamando lineUncompleteCall.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | tapi.h |
Libreria | Tapi32.lib |
DLL | Tapi32.dll |
Vedi anche
Funzioni supplementari del servizio line