Funzione lineDial (tapi.h)
La funzione lineDial compone il numero di composizione specificato nella chiamata specificata.
Sintassi
LONG lineDial(
HCALL hCall,
LPCSTR lpszDestAddress,
DWORD dwCountryCode
);
Parametri
hCall
Gestire la chiamata su cui deve essere composto un numero. L'applicazione deve essere un proprietario della chiamata. Lo stato della chiamata di hCall può essere qualsiasi stato, ad eccezione dell'inattività e della disconnessione.
lpszDestAddress
Destinazione da comporre utilizzando il formato di numeri chiamabili standard.
dwCountryCode
Codice paese o area geografica della destinazione. Viene usato dall'implementazione per selezionare i protocolli di stato della chiamata per l'indirizzo di destinazione. Se viene specificato un valore pari a 0, viene utilizzato un protocollo di stato di chiamata predefinito definito dal provider di servizi.
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_ADDRESSBLOCKED, LINEERR_INVALPOINTER, LINEERR_DIALBILLING, LINEERR_NOMEM, LINEERR_DIALDIALTONE, LINEERR_NOTOWNER, LINEERR_DIALPROMPT, LINEERR_OPERATIONFAILED, LINEERR_DIALQUIET, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLHANDLE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALCALLSTATE, LINEERR_UNINITIALIZED LINEERR_INVALCOUNTRYCODE.
Commenti
Se viene restituito LINEERR_INVALADDRESS, non è stata eseguita alcuna composizione. Se viene restituito LINEERR_DIALBILLING, LINEERR_DIALQUIET, LINEERR_DIALDIALTONE o LINEERR_DIALPROMPT, nessuna delle azioni eseguite da lineDial è stata eseguita. Ad esempio, nessuno degli indirizzi chiamabili prima della composizione del carattere offensivo è stato composto, non è stato modificato alcuno stato hookswitch e così via.
La funzione lineDial viene usata per comporre un aspetto di chiamata esistente. Ad esempio, dopo la configurazione di una chiamata per il trasferimento o la conferenza, viene assegnata automaticamente una chiamata di consultazione e la funzione lineDial viene utilizzata per eseguire la composizione di questa chiamata di consultazione. La funzione lineDial può essere richiamata più volte nel corso della composizione a più fasi, se le funzionalità del dispositivo della riga lo consentono. Inoltre, è possibile specificare più indirizzi in una singola stringa di composizione separata da CRLF. I provider di servizi che forniscono multiplexing inversa possono stabilire singole chiamate fisiche con ognuno degli indirizzi e possono restituire un singolo handle di chiamata all'aggregazione di tutte le chiamate all'applicazione. Tutti gli indirizzi usano lo stesso codice paese o area geografica.
La composizione viene considerata completa dopo che l'indirizzo è stato passato al provider di servizi; non dopo che la chiamata è stata infine connessa. I provider di servizi che forniscono multiplexing inversa possono consentire l'inserimento di più indirizzi contemporaneamente. Il provider di servizi invia LINE_CALLSTATE messaggi all'applicazione per informarlo sullo stato di avanzamento della chiamata. Per interrompere un tentativo di chiamata mentre viene stabilita una chiamata, l'applicazione chiamante deve usare lineDrop.
Un'applicazione può impostare il parametro lpszDestAddress della funzione lineDial sull'indirizzo di una stringa vuota per indicare che la composizione è completa, ma solo se le chiamate precedenti alle funzioni lineMakeCall e lineDial hanno avuto le stringhe specificate da lpszDestAddress terminate con punti e virgola.
La funzione lineDial può essere usata anche nella composizione parziale. Per avviare una chiamata tramite composizione parziale, l'applicazione chiama lineMakeCall e specifica una stringa di composizione parziale. Una stringa di composizione parziale è qualsiasi stringa di composizione terminata da un punto e virgola. La chiamata in genere passerà a LINECALLSTATE_DIALING dopo la quale è possibile chiamare lineDial per specificare più stringhe di composizione, ognuna terminata da un punto e virgola. La composizione viene completata chiamando lineDial con una stringa di composizione non terminata con un punto e virgola ,ad esempio una stringa vuota. Questa tecnica consente alle applicazioni di eseguire la composizione parziale interattiva con l'utente o di abilitare una composizione più sofisticata rispetto a un TSP.
Se una stringa di destinazione Null o una stringa vuota terminata con un punto e virgola (";") viene immessa in lineMakeCall , l'applicazione passa a LINE_CALLSTATE_DIALTONE. La funzione lineDial può essere chiamata in questo stato per immettere una singola stringa di composizione o più stringhe di composizione parziale, ognuna separata da un punto e virgola. L'applicazione passa allo stato LINECALLSTATE_DIALING dopo l'immissione della prima cifra.
Requisiti
Piattaforma di destinazione | Windows |
Intestazione | tapi.h |
Libreria | Tapi32.lib |
DLL | Tapi32.dll |
Vedi anche
Informazioni di riferimento sui servizi di telefonia di base