funzione lineAddToConference (tapi.h)
La funzione lineAddToConference aggiunge la chiamata specificata da hConsultCall alla chiamata di conferenza specificata da hConfCall.
Sintassi
LONG lineAddToConference(
HCALL hConfCall,
HCALL hConsultCall
);
Parametri
hConfCall
Gestire la conferenza telefonica. L'applicazione deve essere un proprietario di questa chiamata. Qualsiasi monitoraggio (supporti, toni, cifre) in una chiamata di conferenza si applica solo all'hConfCall, non alle singole chiamate partecipanti. Lo stato della chiamata di hConfCall deve essere onHoldPendingConference o onHold.
hConsultCall
Gestire la chiamata da aggiungere alla chiamata. L'applicazione deve essere un proprietario di questa chiamata. Questa chiamata non può essere un padre di un'altra conferenza o di un partecipante a qualsiasi conferenza. A seconda delle funzionalità del dispositivo indicate in LINEADDRESSCAPS, l'hConsultCall potrebbe non essere necessariamente stato stabilito usando lineSetupConference o linePrepareAddToConference. Lo stato della chiamata di hConsultCall deve essere connesso, onHold, procedendo o ringback. Molti PBX consentono l'aggiunta di chiamate alle conferenze prima che vengano effettivamente risposte.
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 oppure è un numero di errore negativo se si verifica un errore. I valori restituiti possibili sono:
LINEERR_CONFERENCEFULL, LINEERR_NOTOWNER, LINEERR_INVALCONFCALLHANDLE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLHANDLE, LINEERR_OPERATIONFAILED, LINEERR_INVALCALLSTATE, LINEERR_RESOURCEUNAVAIL, LINEERR_NOMEM, LINEERR_UNINITIALIZED.
Commenti
Se LINEERR_INVALCALLHANDLE viene restituito, l'handle di chiamata specificato per la chiamata aggiunta non è valido; hConsultCall è un padre di un'altra conferenza o già un partecipante a una conferenza; hConsultCall non può essere aggiunto per altri motivi(ad esempio, deve essere stato stabilito usando lineSetupConference o linePrepareAddToConference); o hConsultCall e hConfCall sono chiamate su righe aperte diverse.
L'handle di chiamata della parte aggiunta rimane valido dopo l'aggiunta della chiamata a una conferenza. Lo stato viene in genere modificato in conferenza mentre lo stato della chiamata alla conferenza diventa in genere connesso. Usando lineGetConfRelatedCalls, è possibile ottenere un elenco di handle di chiamate che fanno parte della stessa chiamata alla chiamata specificata. La chiamata specificata è una conferenza telefonica o una chiamata partecipante in una conferenza telefonica. I nuovi handle vengono generati per le chiamate per cui l'applicazione non dispone già di handle e l'applicazione ha concesso privilegi di monitoraggio a tali chiamate. L'handle di una singola chiamata partecipante può essere usato in un secondo momento per rimuovere tale parte dalla chiamata di conferenza usando lineRemoveFromConference.
Se lineGetConfRelatedCalls viene chiamato immediatamente dopo la rigaAddToConference, potrebbe non restituire un elenco completo di chiamate correlate perché TAPI attende di ricevere un messaggio di LINE_CALLSTATE che indica che la chiamata è stata immessa LINECALLSTATE_CONFERENCED prima di considerare la chiamata effettivamente parte della conferenza , ovvero lo stato conferenza viene confermato dal provider di servizi. Dopo che l'applicazione ha ricevuto il messaggio LINE_CALLSTATE, lineGetConfRelatedCalls restituisce informazioni complete.
La chiamata alla conferenza viene stabilita da lineSetupConference o lineCompleteTransfer. La chiamata aggiunta a una conferenza viene in genere stabilita usando lineSetupConference o linePrepareAddToConference. Alcune opzioni possono consentire l'aggiunta di chiamate arbitrarie alla conferenza e tale chiamata può essere stata configurata usando lineMakeCall e essere in attesa (hard). L'applicazione può esaminare il membro dwAddrCapFlags della struttura LINEADDRESSCAPS per determinare le operazioni consentite.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | tapi.h |
Libreria | Tapi32.lib |
DLL | Tapi32.dll |