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