Implémentation de texte en temps réel

Cette page décrit comment implémenter le texte en temps réel (RTT) dans Android 9. RTT est une fonctionnalité destinée aux utilisateurs sourds ou malentendants qui remplace la technologie Text Telephone (TTY). Grâce à cette fonctionnalité, les appareils peuvent utiliser le même numéro de téléphone pour les appels vocaux et RTT, transmettre simultanément du texte au fur et à mesure de sa saisie caractère par caractère, prendre en charge les communications 911 et fournir une capacité arrière avec TTY.

Lors d'un appel RTT, l'appelant et le destinataire ont des indications indiquant qu'ils participent à un appel RTT. Une fois connectés, les deux côtés entrent dans l'appel RTT où la saisie de texte et le clavier sont activés. Lors de la saisie, le texte apparaît et est envoyé au fur et à mesure de sa saisie, caractère par caractère.

Exemples et source

Les composants du framework sont disponibles dans AOSP sur Call.RttCall et Connection.RttTextStream . Les composants IMS/modem sont propriétaires et doivent être fournis par le fournisseur IMS/modem. L’implémentation de référence Dialer RTT est également disponible.

Code de numérotation AOSP pour RTT :

Mise en œuvre

Pour implémenter RTT, vous devez travailler avec un fournisseur de modem/SoC car un modem prenant en charge RTT est requis. Vous pouvez effectuer une mise à niveau vers Android 9 ou rétroporter une liste de correctifs de structure de téléphonie vers Android 8.0. Les API ajoutées dans Android 8.0 AOSP ne fonctionneront pas.

Cette fonctionnalité utilise les API publiques dans AOSP dans android.telecom et @SystemApis dans android.telephony.ims . Toute l’interface utilisateur se trouve dans com.android.phone et dans le numéroteur AOSP.

Pour implémenter RTT, importez le code AOSP et fournissez une pile IMS qui implémente le @SystemApis côté IMS pour RTT. Cela nécessite:

  • Activer/désactiver RTT à l'aide de ImsConfig#setProvisionedValue(RTT_SETTING_ENABLED)
  • Indiquer l'état RTT d'un appel à l'aide de ImsStreamMediaProfile#mRttMode
  • Prise en charge des méthodes suivantes dans ImsCallSession :

    • sendRttMessage
    • sendRttModifyRequest
    • sendRttModifyResponse
  • Prise en charge de l'appel des méthodes suivantes dans ImsCallSessionListener :

    • callSessionRttModifyRequestReceived
    • callSessionRttModifyResponseReceived
    • callSessionRttMessageReceived

Personnalisation

Vous pouvez activer ou désactiver cette fonctionnalité à l'aide de la configuration de l'appareil, config_support_rtt , dans la superposition de configuration de l'appareil pour packages/services/Telephony , et de l'indicateur de configuration de l'opérateur, CarrierConfigManager.RTT_SUPPORTED_BOOL , dans les fichiers de configuration de l'opérateur. Selon la configuration, la fonctionnalité est disponible ou non via les paramètres d'accessibilité. Utilisez la configuration de l'appareil pour modifier les paramètres par défaut. Par défaut, la fonctionnalité est désactivée.

Validation

Pour valider votre implémentation de RTT, exécutez des tests CTS et effectuez des tests RTT du numéroteur.

Tests CTS

Les tests CTS ( android.cts.telecom.RttOperationsTest ) couvrent la partie AOSP de l'implémentation. Vous devez fournir vos propres tests pour la partie pile IMS de l'implémentation.

Test RTT du numéroteur

Description du scénario Maquette d'interface utilisateur
Si RTT est désactivé sur l'appareil, une boîte de dialogue sur RTT s'affiche.

Bannière RTT

Dans les paramètres du numéroteur, un écran de texte en temps réel est disponible sous Paramètres > Accessibilité qui offre la possibilité de choisir un mode RTT différent.

Accessibilité RTT

Lorsque RTT est activé par défaut :
  • Pendant que l'appel est passé, l'interface utilisateur standard de numérotation pendant un appel s'affiche.
  • Lors de la connexion de l'appel, la vue du mode RTT s'affiche. Si l'utilisateur destinataire ne passe pas par défaut en mode RTT, une bannière indiquant que le mode RTT a été demandé s'affiche en attendant une réponse.

Interface utilisateur d'appel RTT

Si RTT est désactivé sur l'appareil :
  • L'écran des appels entrants affiche une rondelle de réponse standard et des étiquettes d'appel standard.

Interface utilisateur d'appel standard RTT

Si RTT est activé sur l'appareil et que sa valeur par défaut est définie pour répondre à tous les appels en tant que RTT :
  • L'écran des appels entrants affiche la rondelle RTT et les étiquettes d'appel associées.
  • Répondre à l'appel charge la vue du mode RTT avec le clavier activé.

Vue en mode RTT

Dans l'interface utilisateur d'appel pour RTT, des options sont fournies pour permettre aux utilisateurs de contrôler l'état de l'appel vocal et d'obtenir une aide générale sur l'utilisation de RTT :
  • Activer et désactiver le microphone.
  • Activer et désactiver le haut-parleur.
  • Utilisez le clavier comme entrée.
  • Ajoutez un autre appel.
  • Passez à un appel vocal à partir d'un appel RTT.
  • Activer et désactiver la mise en attente.

Options d'interface utilisateur RTT lors des appels

Dans l'écran Détails de l'appel, la sélection du lien Voir la transcription affiche une vue complète de la conversation avec le texte intégral de la session RTT. Les horodatages sont affichés. L'utilisateur peut revenir à l'écran Détails de l'appel à l'aide du bouton Retour.

Détails de l'appel RTT