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

LINECALLINFO

LINE_CALLSTATE

LINE_REPLY

Funzioni supplementari del servizio line

Panoramica dei riferimenti a TAPI 2.2

lineUncompleteCall