Implementare Real-Time Text

Questa pagina descrive come implementare la funzionalità Real-Time Text (RTT) in Android 9. RTT è una funzionalità per utenti sordi o con problemi di udito che sostituisce la tecnologia telescrivente (TTY). Con questa funzionalità, i dispositivi possono utilizzare lo stesso numero di telefono per le chiamate vocali e RTT, trasmettere contemporaneamente il testo man mano che viene digitato carattere per carattere, supportare le comunicazioni con il 911 e fornire la compatibilità con TTY.

In una chiamata RTT, sia il chiamante sia il ricevente hanno indicazioni che si trovano in una chiamata RTT. Una volta connessi, entrambi gli interlocutori entrano nella chiamata RTT in cui vengono attivati l'inserimento di testo e la tastiera. Durante la digitazione, il testo viene visualizzato e inviato man mano che viene digitato, carattere per carattere.

Esempi e origine

I componenti del framework sono disponibili in AOSP all'indirizzo Call.RttCall e Connection.RttTextStream. I componenti IMS/modem sono proprietari e devono essere forniti dal fornitore IMS/modem. È disponibile anche l'implementazione di riferimento RTT del dialer.

Codice del dialer AOSP per RTT:

Implementazione

Per implementare RTT, devi collaborare con un fornitore di modem/SoC perché è necessario un modem che supporti RTT. Puoi eseguire l'upgrade ad Android 9 o eseguire il backport di un elenco di patch del framework di telefonia in Android 8.0. Le API aggiunte in Android 8.0 AOSP non funzioneranno.

Questa funzionalità utilizza le API pubbliche in AOSP in android.telecom e @SystemApis in android.telephony.ims. Tutta la UI si trova all'interno di com.android.phone e del dialer AOSP.

Per implementare RTT, importa il codice AOSP e fornisci uno stack IMS che implementi le @SystemApis lato IMS per RTT. Per questo devi:

  • Attivazione/disattivazione di RTT tramite ImsConfig#setProvisionedValue(RTT_SETTING_ENABLED)
  • Indicare lo stato RTT di una chiamata utilizzando ImsStreamMediaProfile#mRttMode
  • Supporto dei seguenti metodi in ImsCallSession:

    • sendRttMessage
    • sendRttModifyRequest
    • sendRttModifyResponse
  • Supporto per la chiamata dei seguenti metodi in ImsCallSessionListener:

    • callSessionRttModifyRequestReceived
    • callSessionRttModifyResponseReceived
    • callSessionRttMessageReceived

Personalizzazione

Puoi attivare o disattivare questa funzionalità utilizzando la configurazione del dispositivo, config_support_rtt, nell'overlay di configurazione del dispositivo per packages/services/Telephony e il flag di configurazione dell'operatore, CarrierConfigManager.RTT_SUPPORTED_BOOL, nei file di configurazione dell'operatore. A seconda della configurazione, la funzionalità è disponibile tramite le impostazioni di accessibilità o meno. Utilizza la configurazione del dispositivo per modificare le impostazioni predefinite. Per impostazione predefinita, la funzionalità è impostata su Off.

Convalida

Per convalidare l'implementazione di RTT, esegui i test CTS e il test RTT del dialer.

Test CTS

I test CTS (android.cts.telecom.RttOperationsTest) coprono la parte AOSP dell'implementazione. Devi fornire i tuoi test per la parte dello stack IMS dell'implementazione.

Test RTT del dialer

Descrizione dello scenario UI mock
Se RTT è disattivato sul dispositivo, viene visualizzata una finestra di dialogo relativa a RTT.

Banner RTT

Nelle impostazioni del dialer, è disponibile una schermata Real-Time Text in Impostazioni > Accessibilità che offre un'opzione per scegliere una modalità RTT diversa.

Accessibilità RTT

Quando RTT è attivo per impostazione predefinita:
  • Durante la chiamata, viene visualizzata l'interfaccia utente di composizione standard delle chiamate.
  • Una volta connessa la chiamata, viene visualizzata la modalità RTT. Se l'utente ricevente non passa automaticamente alla modalità RTT, viene visualizzato un banner che indica che è stata richiesta la modalità RTT durante l'attesa di una risposta.

UI di RTT durante la chiamata

Se RTT è disabilitato sul dispositivo:
  • La schermata della chiamata in arrivo mostra il puck di risposta standard e le etichette della chiamata standard.

Interfaccia utente standard per le chiamate RTT

Se RTT è attivato sul dispositivo e l'impostazione predefinita è impostata per rispondere a tutte le chiamate come RTT:
  • La schermata della chiamata in arrivo mostra il puck RTT e le etichette della chiamata associate.
  • Quando rispondi alla chiamata, viene caricata la visualizzazione della modalità RTT con la tastiera abilitata.

Visualizzazione della modalità RTT

Nell'interfaccia utente durante la chiamata per RTT, sono disponibili opzioni per consentire agli utenti di controllare lo stato della chiamata vocale e ricevere assistenza generale sull'utilizzo di RTT:
  • Attiva e disattiva il microfono.
  • Attiva e disattiva l'altoparlante.
  • Utilizzare il tastierino come input.
  • Aggiungi un'altra chiamata.
  • Passare a una chiamata vocale da una chiamata RTT.
  • Attiva e disattiva la funzione di attesa.

Opzioni dell'interfaccia utente durante la chiamata RTT

Nella schermata Dettagli chiamata, se selezioni il link Visualizza trascrizione, viene visualizzata una visualizzazione completa della conversazione con il testo completo della sessione RTT. Vengono visualizzati i timestamp. L'utente può tornare alla schermata Dettagli chiamata utilizzando il pulsante Indietro.

Dettagli della chiamata RTT