Elementi del dispositivo telefonico
Un dispositivo telefonico è un dispositivo che supporta la classe del dispositivo telefonico e che include alcuni o tutti gli elementi seguenti:
Hookswitch/trasducente: questo è un mezzo per l'input e l'output audio. Un dispositivo telefonico può avere diversi trasduttori, che possono essere attivati e disattivati (offhook o posizionati sulhook) nell'applicazione o nel controllo utente manuale.
La telefonia identifica tre tipi di dispositivi hookswitch comuni a molti set di telefono:
Handset: la tradizionale combinazione di bocca e orecchio che deve essere sollevato manualmente da una culla e tenuto contro l'orecchio dell'utente.
Altoparlante: consente all'utente di condurre chiamate senza mani. L'altoparlante può essere interno o esterno al dispositivo telefonico. La parte dell'altoparlante di un altoparlante consente più listener.
Visore VR: consente all'utente di condurre chiamate senza mani.Un hookswitch deve essere offhook per consentire l'invio di dati audio a e/o ricevuti dal trasducente corrispondente.
Controllo volume/Controllo del guadagno/Disattivazione: ogni dispositivo hookswitch è l'associazione di un altoparlante e di un componente microfono. L'API fornisce il controllo del volume e l'disattivazione dei componenti altoparlanti e per ottenere il controllo o l'disattivazione dei componenti del microfono.
Ringer: un mezzo per avvisare gli utenti, in genere tramite una campana. Un dispositivo telefonico può essere in grado di squillare in diverse modalità o modelli.
Display: meccanismo per la presentazione visiva dei messaggi all'utente. Uno schermo del telefono è caratterizzato dal numero di righe e colonne.
Pulsanti telefono: matrice di pulsanti. Ogni volta che l'utente preme un pulsante sul set di telefono, l'API segnala che è stato premuto il pulsante corrispondente. Gli identificatori della lampada a pulsante identificano una coppia di pulsanti e lampo. Naturalmente, è possibile avere coppie pulsante-lampada con nessun pulsante o nessuna lampada. Gli identificatori di lampada pulsante sono valori interi compresi tra 0 e il numero massimo di lampade a pulsante disponibili nel dispositivo telefonico, meno uno. Ogni pulsante appartiene a una classe button. Le classi includono pulsanti di aspetto delle chiamate, pulsanti di funzionalità, pulsanti del tastierino e pulsanti locali.
Lampade: matrice di lampade (ad esempio LED) controllabili singolarmente dall'API. Le lampade possono essere accese in modalità diverse variando la frequenza di alimentazione e disattivazione. L'identificatore della lampada pulsante identifica la lampada.
Aree dati: aree di memoria nel dispositivo telefonico in cui è possibile scaricare il codice di istruzione o i dati da e/o caricarlo. Le informazioni scaricate influiscono sul comportamento (o in altre parole, programma) sul dispositivo telefonico.
TAPI consente a un'applicazione di monitorare e controllare gli elementi del dispositivo telefonico. Gli elementi più utili per un'applicazione sono i dispositivi hookswitch. Il set di telefono può fungere da dispositivo di I/O audio (per il computer) con controllo del volume, ottenere controllo e disattivazione, un ringer (per avvisare l'utente), aree dati (per la programmazione del telefono) e forse uno schermo, anche se lo schermo del computer è più in grado di. Lo scrittore di applicazioni è sconsigliato dal controllo diretto o dall'uso di lampade telefoniche o pulsanti del telefono, perché le funzionalità della lampada e del pulsante possono variare notevolmente tra i set di telefoni e le applicazioni possono diventare rapidamente personalizzate per set di telefono specifici.
Non esiste un set di base garantito di servizi supportati da tutti i dispositivi telefonici, perché è disponibile per i dispositivi line (i servizi di telefonia di base). Pertanto, prima che un'applicazione possa usare un dispositivo telefonico, l'applicazione deve prima determinare le funzionalità esatte del dispositivo telefonico. La funzionalità di telefonia varia in base alla configurazione (client e client/server), all'hardware telefonico e al software del provider di servizi. Le applicazioni non devono fare ipotesi su quali funzionalità di telefonia sono disponibili. Un'applicazione determina le funzionalità del dispositivo di un dispositivo telefonico chiamando la funzione phoneGetDevCaps . Le funzionalità del dispositivo di un telefono indicano quali di questi elementi esistono per ogni dispositivo telefonico presente nel sistema e quali sono le relative funzionalità. Anche se fortemente orientato verso set di telefono reali, questa astrazione può fornire un'implementazione significativa (o subset) anche per altri dispositivi. Ad esempio, un visore VR separato direttamente connesso e controllabile dal computer e gestito come dispositivo telefonico. Le modifiche hookswitch possono essere attivate dal rilevamento dell'energia vocale (offhook) o da un periodo di silenzio (onhook); l'anello può essere emulato dalla generazione di un segnale acustico nel visore VR; una visualizzazione può essere emulata tramite la conversione da testo a voce.
Un dispositivo telefonico non deve essere realizzato nell'hardware, ma può invece essere emulato nel software usando un'interfaccia grafica basata su mouse o tastiera e l'altoparlante o il sistema audio del computer. Un "soft phone" di questo tipo può essere un'applicazione che usa TAPI. Può anche essere un provider di servizi, che può essere elencato come dispositivo telefonico disponibile per altre applicazioni tramite l'API e, di conseguenza, viene assegnato un identificatore del dispositivo telefonico.
A seconda dell'ambiente e della configurazione, i set di telefono possono essere condivisi tra l'applicazione e il commutatore. Nell'API viene eseguito un provisioning secondario in cui il commutatore può sospendere temporaneamente il controllo dell'API di un dispositivo telefonico.