funzione lineGetRequest (tapi.h)

La funzione lineGetRequest recupera la richiesta successiva per proxy per la modalità richiesta specificata.

Sintassi

LONG lineGetRequest(
  HLINEAPP hLineApp,
  DWORD    dwRequestMode,
  LPVOID   lpRequestBuffer
);

Parametri

hLineApp

Handle di utilizzo dell'applicazione per la parte riga di TAPI.

dwRequestMode

Tipo di richiesta da ottenere. Tenere presente che dwRequestMode può avere solo un set di bit. Questo parametro usa uno e solo uno dei costanti LINEREQUESTMODE_.

lpRequestBuffer

Puntatore a un buffer di memoria in cui devono essere inseriti i parametri della richiesta. Le dimensioni del buffer e l'interpretazione dei dati inseriti nel buffer dipendono dalla modalità richiesta. Si presuppone che il buffer allocato dall'applicazione sia di dimensioni sufficienti per contenere la richiesta.

Se dwRequestMode è LINEREQUESTMODE_MAKECALL, interpretare il contenuto del buffer della richiesta usando la struttura LINEREQMAKECALL .

LINEREQUESTMODE_MEDIACALL è obsoleto. Per altre informazioni, vedere tapiRequestMediaCall.

Valore restituito

Restituisce zero se la richiesta ha esito positivo o un numero di errore negativo se si verifica un errore. I valori restituiti possibili sono:

LINEERR_INVALAPPHANDLE, LINEERR_NOTREGISTERED, LINEERR_INVALPOINTER, LINEERR_OPERATIONFAILED, LINEERR_INVALREQUESTMODE, LINEERR_RESOURCEUNAVAIL, LINEERR_NOMEM, LINEERR_UNINITIALIZED, LINEERR_NOREQUEST.

Commenti

Un'applicazione abilitata per la telefonia può richiedere che una chiamata venga inserita per conto dell'utente richiamando tapiRequestMakeCall. Queste richieste vengono accodate da TAPI e dall'applicazione con priorità più alta registrata per gestire la richiesta viene inviato un messaggio LINE_REQUEST con indicazione della modalità della richiesta in sospeso. In genere, questa applicazione è l'applicazione call-control dell'utente. Il messaggio LINE_REQUEST indica che zero o più richieste potrebbero essere in sospeso per l'elaborazione dell'applicazione registrata; dopo aver ricevuto LINE_REQUEST, è responsabilità dell'applicazione destinatario chiamare lineGetRequest fino a quando non viene restituito LINEERR_NOREQUEST, indicando che non sono in sospeso più richieste.

Successivamente, l'applicazione call-control che riceve questo messaggio richiama lineGetRequest, specificando la modalità richiesta e un buffer sufficientemente grande per contenere la richiesta. L'applicazione di controllo chiamate interpreta quindi ed esegue la richiesta.

Dopo l'esecuzione di lineGetRequest, TAPI elimina la richiesta dalla coda interna, rendendo disponibile la stanza per una richiesta successiva. È quindi possibile ricevere immediatamente un nuovo messaggio di LINE_REQUEST all'esecuzione di lineGetRequest, se si tratta dello stesso o di un'altra richiesta dell'applicazione. È responsabilità dell'applicazione destinatario della richiesta gestire questo scenario da parte di alcuni meccanismi; ad esempio, notando il LINE_REQUEST aggiuntivo e rinviando una rigaGetRequest successiva fino al completamento dell'elaborazione della richiesta precedente, recuperando la richiesta e il buffer successivi in base alle esigenze o con un altro mezzo appropriato.

Il LINE_REQUEST successivo non deve essere ignorato perché non viene ripetuto da TAPI.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione tapi.h
Libreria Tapi32.lib
DLL Tapi32.dll

Vedi anche

Informazioni di riferimento sui servizi di telefonia di base

LINEREQMAKECALL

LINE_REQUEST

Panoramica di riferimento su TAPI 2.2

tapiRequestMakeCall