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.

Nota Tutte le chiamate che fanno parte di una conferenza devono esistere nella stessa linea aperta.
 
Gli stati di chiamata delle chiamate che partecipano a una conferenza non sono indipendenti. Ad esempio, quando si elimina una conferenza telefonica, tutte le chiamate partecipanti possono diventare automaticamente inattive. Un'applicazione deve consultare le funzionalità del dispositivo della riga per determinare quale forma di rimozione della conferenza è disponibile. L'applicazione deve tenere traccia dei messaggi LINE_CALLSTATE per determinare cosa è successo alle chiamate coinvolte.

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

Vedi anche

Panoramica della conferenza

LINEADDRESSCAPS

LINE_CALLSTATE

Funzioni di servizio linea supplementari

lineCompleteTransfer

lineGetConfRelatedCalls

lineMakeCall

linePrepareAddToConference

lineRemoveFromConference

lineSetupConference