Esta página descreve como implementar texto em tempo real (RTT) no Android 9. RTT é um recurso para usuários surdos ou com deficiência auditiva que substitui a tecnologia de telefone de texto (TTY). Com esse recurso, os dispositivos podem usar o mesmo número de telefone para chamadas de voz e RTT, transmitir simultaneamente texto conforme ele é digitado caractere por caractere, suportar comunicações 911 e fornecer capacidade de retrocesso com TTY.
Em uma chamada RTT, tanto o chamador quanto o receptor têm indicações de que estão em uma chamada RTT. Quando conectados, ambos os lados entram na chamada RTT onde a entrada de texto e o teclado são ativados. Ao digitar, o texto aparece e é enviado conforme digitado, caractere por caractere.
Exemplos e fonte
Os componentes do framework estão disponíveis no AOSP em Call.RttCall e Connection.RttTextStream . Os componentes do IMS/modem são proprietários e devem ser fornecidos pelo fornecedor do IMS/modem. A implementação de referência do discador RTT também está disponível.
Código do discador AOSP para RTT:
- InCall: /java/com/android/incallui/rtt
- Registro de chamadas: /java/com/android/dialer/rtt
Implementação
Para implementar o RTT, você deve trabalhar com um provedor de modem/SoC porque é necessário um modem que suporte RTT. Você pode atualizar para o Android 9 ou fazer backport de uma lista de patches da estrutura de telefonia para o Android 8.0. As APIs adicionadas no Android 8.0 AOSP não funcionarão.
Esse recurso usa APIs públicas em AOSP em android.telecom
e @SystemApis em android.telephony.ims
. Toda a interface do usuário está em com.android.phone
e no discador AOSP.
Para implementar o RTT, importe o código AOSP e forneça uma pilha IMS que implemente o @SystemApis do lado do IMS para RTT. Isto exige:
- Ativando/desativando o RTT via
ImsConfig#setProvisionedValue(RTT_SETTING_ENABLED)
- Indicando o status RTT de uma chamada via
ImsStreamMediaProfile#mRttMode
Suporte para os seguintes métodos em
ImsCallSession
:-
sendRttMessage
-
sendRttModifyRequest
-
sendRttModifyResponse
-
Suporte para chamar os seguintes métodos em
ImsCallSessionListener
:-
callSessionRttModifyRequestReceived
-
callSessionRttModifyResponseReceived
-
callSessionRttMessageReceived
-
Costumização
Você pode habilitar ou desabilitar esse recurso usando a configuração do dispositivo, config_support_rtt
, na sobreposição de configuração do dispositivo para packages/services/Telephony
, e o sinalizador de configuração da operadora, CarrierConfigManager.RTT_SUPPORTED_BOOL
, nos arquivos de configuração da operadora. Dependendo da configuração, o recurso está disponível por meio das configurações de Acessibilidade ou não. Use a configuração do dispositivo para alterar as configurações padrão. Por padrão, o recurso está definido como Desligado.
Validação
Para validar sua implementação de RTT, execute testes de CTS e teste de RTT de discador.
Teste CTS
Os testes CTS ( android.cts.telecom.RttOperationsTest
) cobrem a parte AOSP da implementação. Você deve fornecer seus próprios testes para a parte da pilha IMS da implementação.
Teste de discador RTT
Descrição do cenário | simulação de interface do usuário |
---|---|
Se o RTT estiver desabilitado no dispositivo, um banner sobre o RTT será exibido. Uma opção "Saiba mais" que direciona para a página do artigo da Central de Ajuda do Google com mais informações sobre RTT é exibida. A chamada de banner é exibida. | |
Nas configurações do Discador, uma tela "Texto em tempo real" está disponível em Configurações > Acessibilidade que oferece uma opção para ativar o "modo RTT". O texto descritivo é exibido para explicar o modo: "Enviar e receber mensagens de texto em vez de falar e ouvir durante uma chamada". | |
Quando o RTT está habilitado por padrão,
| |
Se o RTT estiver desabilitado no dispositivo:
| |
Se o RTT estiver habilitado no dispositivo e tiver o padrão definido para atender todas as chamadas como RTT:
| |
Na interface do usuário durante a chamada para RTT, são fornecidas opções para permitir que os usuários controlem o estado da chamada de voz e obtenham ajuda geral sobre o uso do RTT.
| |
Na tela "Detalhes da chamada", é exibido um trecho do histórico da conversa RTT.
|