funzione TSPI_lineConditionalMediaDetection (tspi.h)
La funzione TSPI_lineConditionalMediaDetection viene richiamata da TAPI ogni volta che un'applicazione client usa LINEMAPPER come dwDeviceID in una chiamata di funzione lineOpen per richiedere che le righe vengano analizzate per trovare uno che supporti i tipi di supporti desiderati e i parametri di chiamata. TAPI analizza in base all'unione del tipo di supporto desiderato e agli altri tipi di supporti attualmente monitorati sulla linea, per fornire al provider di servizi l'opportunità di indicare se non è in grado di monitorare simultaneamente tutti i tipi di supporti richiesti. Se il provider di servizi può monitorare per il set indicato di tipi di supporti e supportare le funzionalità indicate in lpCallParams, risponde con un'indicazione di esito positivo. Lascia invariate le modalità di monitoraggio multimediale attive per la riga.
Sintassi
LONG TSPIAPI TSPI_lineConditionalMediaDetection(
HDRVLINE hdLine,
DWORD dwMediaModes,
LPLINECALLPARAMS const lpCallParams
);
Parametri
hdLine
L'handle del provider di servizi alla riga in cui devono essere impostate funzionalità di monitoraggio e parametri multimediali.
dwMediaModes
I tipi di supporti attualmente interessati all'applicazione chiamante. Questo parametro usa una delle costanti LINEMEDIAMODE_.
lpCallParams
Puntatore a una struttura di tipo LINECALLPARAMS. Descrive i parametri di chiamata che il dispositivo della riga deve essere in grado di fornire. Gli unici campi pertinenti di lpCallParams ai fini di questo test sono i seguenti:
dwBearerMode
dwMinRate
dwMaxRate
dwMediaMode
dwCallParamFlags
dwAddressMode
Se dwAddressMode è LINEADDRESSMODE_ADDRESSID, qualsiasi indirizzo nella riga è accettabile. Se dwAddressMode è LINEADDRESSMODE_DIALABLEADDR, indicante che viene cercato un indirizzo di origine specifico (numero di telefono) o se si tratta di un'estensione specifica del provider, dwOrigAddressSize/Offset e la parte della parte della variabile a cui fanno riferimento sono rilevanti anche. Se dwAddressMode è un'estensione specifica del provider, le informazioni aggiuntive possono essere contenute nel campo dwDeviceSpecifico variabilmente ridimensionato. Tutti gli altri campi sono irrilevanti per la funzione.
Valore restituito
Restituisce zero se la funzione ha esito positivo o un numero di errore se si verifica un errore. I valori restituiti possibili sono i seguenti:
LINEERR_INVALLINEHANDLE, LINEERR_OPERATIONFAILED, LINEERR_NODRIVER, LINEERR_RESOURCEUNAVAIL, LINEERR_NOMEM, LINEERR_INVALMEDIAMODE, LINEERR_OPERATIONUNAVAIL.
Commenti
Una funzione lineOpen TAPI che specifica un identificatore di dispositivo di LINEMAPPER comporta in genere la chiamata a questa procedura per più dispositivi di riga per cercare una riga appropriata, possibilmente aprendo anche linee non eppure non aprono. Un risultato positivo indica che la riga è adatta ai requisiti dell'applicazione chiamante.
La funzione TSPI_lineConditionalMediaDetection restituisce l'esito positivo se si passano gli stessi valori bit alla funzione TSPI_lineMakeCall restituisce anche esito positivo.
Se i bit SECURE, ORIGOFFHOOK e DESTOFFHOOK sono impostati e il parametro dwAddressMode è LINEADDRESSMODE_ADDRESSID, la funzione restituisce esito positivo se può avere esito positivo su uno o più indirizzi nella riga.
Se i bit SECURE, ORIGOFFHOOK e DESTOFFHOOK sono impostati e il parametro dwAddressMode è LINEADDRESSMODE_DIALABLEADDR, la funzione restituisce esito positivo se può avere esito positivo sull'indirizzo identificato dal parametro dwOrigAddress .
Il provider di servizi restituisce un errore (ad esempio, LINEERR_RESOURCEUNAVAIL) se, al momento in cui questa funzione viene chiamata, non è possibile inserire una nuova chiamata sul dispositivo della riga specificato (se restituisce LINEERR_CALLUNAVAIL o LINEERR_RESOURCEUNAVAIL TSPI_lineMakeCall deve essere richiamata immediatamente dopo l'apertura della riga).
Non esiste alcuna funzione corrispondente direttamente a livello TAPI. Questa procedura corrisponde al test implicito per ogni singola riga dalla procedura lineOpen quando viene chiamata con l'identificatore del dispositivo LINEMAPPER.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | tspi.h |