Implémenter du texte en temps réel

Cette page explique comment implémenter du texte en temps réel (DAR) sous Android 9. Le RTT est une fonctionnalité destinée aux utilisateurs sourds ou malentendants qui remplace la technologie de téléscripteur (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 à mesure qu'il est saisi caractère par caractère, prendre en charge les communications d'urgence et assurer la rétrocompatibilité avec le TTY.

Dans un appel texte en temps réel, l'appelant et le destinataire voient qu'ils sont dans un appel texte en temps réel. Une fois connectés, les deux parties entrent dans l'appel texte en temps réel où la saisie de texte et le clavier sont activés. Lorsque vous saisissez du texte, il s'affiche et est envoyé à mesure que vous le saisissez, caractère par caractère.

Exemples et source

Les composants de 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 du RTT du clavier est également disponible.

Code du clavier AOSP pour RTT:

Implémentation

Pour implémenter le RTT, vous devez faire appel à un fournisseur de modem/SoC, car un modem compatible avec le RTT est nécessaire. Vous pouvez passer à Android 9 ou rétroporter une liste de correctifs du framework de téléphonie dans Android 8.0. Les API ajoutées dans Android 8.0 AOSP ne fonctionneront pas.

Cette fonctionnalité utilise des API publiques dans AOSP dans android.telecom et @SystemApis dans android.telephony.ims. L'ensemble de l'interface utilisateur se trouve dans com.android.phone et le clavier AOSP.

Pour implémenter le RTT, importez le code AOSP et fournissez une pile IMS qui implémente les @SystemApis côté IMS pour le RTT. Pour ce faire, vous devez disposer des éléments suivants:

  • Activer/Désactiver le texte en temps réel avec ImsConfig#setProvisionedValue(RTT_SETTING_ENABLED)
  • Indique l'état du texte en temps réel d'un appel à l'aide de ImsStreamMediaProfile#mRttMode
  • Compatibilité avec les 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, cette fonctionnalité est désactivée.

Validation

Pour valider votre implémentation du RTT, exécutez des tests CTS et des tests RTT du clavier.

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 de la pile IMS de l'implémentation.

Test du RTT du clavier

Description du scénario Modèle d'UI
Si le texte en temps réel est désactivé sur l'appareil, une boîte de dialogue à ce sujet s'affiche.

Bannière RTT

Dans les paramètres du clavier, un écran de texte en temps réel est disponible sous Paramètres > Accessibilité, qui permet de choisir un autre mode de texte en temps réel.

Accessibilité du RTT

Lorsque le RTT est activé par défaut:
  • Pendant l'appel, l'UI standard de numérotation en cours d'appel s'affiche.
  • Une fois l'appel établi, la vue du mode RTT s'affiche. Si l'utilisateur destinataire n'est pas défini par défaut sur le mode RTT, une bannière indiquant que le mode RTT a été demandé s'affiche en attendant une réponse.

UI pendant les appels RTT

Si le texte en temps réel est désactivé sur l'appareil:
  • L'écran d'un appel entrant affiche la boule de réponse standard et les libellés d'appel standards.

UI standard des appels texte en temps réel

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

Vue du mode RTT

Dans l'UI de l'appel pour le mode RTT, des options sont fournies pour permettre aux utilisateurs de contrôler l'état de l'appel vocal et d'obtenir de l'aide générale sur l'utilisation du mode RTT:
  • Activez et désactivez le micro.
  • Activez et désactivez le haut-parleur.
  • Utiliser le clavier comme entrée
  • Ajoutez un autre appel.
  • Passer d'un appel texte en temps réel à un appel vocal
  • Activez/Désactivez la pression prolongée.

Options de l'UI en cours d'appel pour le texte en temps réel

Sur l'écran "Détails de l'appel", sélectionnez le lien "Voir la transcription" pour afficher une vue complète de la conversation avec le texte complet de la session RTT. Les codes temporels s'affichent. L'utilisateur peut revenir à l'écran "Détails de l'appel" à l'aide du bouton Retour.

Détails de l'appel RTT