Echtzeittext implementieren

Auf dieser Seite wird beschrieben, wie Sie RTT (Real-Time Text, Echtzeittext) in Android 9 implementieren. RTT ist eine Funktion für gehörlose oder schwerhörige Nutzer, die die Fernschreibertechnologie (TTY) ersetzt. Mit dieser Funktion können Geräte dieselbe Telefonnummer für Sprach- und RTT-Anrufe verwenden, Text gleichzeitig übertragen, während er eingegeben wird, die Kommunikation über die Notrufnummer unterstützen und eine Abwärtskompatibilität mit TTY bieten.

Bei einem RTT-Anruf sehen sowohl der Anrufer als auch der Empfänger Hinweise darauf, dass sie sich in einem RTT-Anruf befinden. Wenn die Verbindung hergestellt ist, werden beide Seiten in den RTT-Anruf aufgenommen, in dem die Texteingabe und die Tastatur aktiviert sind. Beim Tippen wird der Text Zeichen für Zeichen angezeigt und gesendet.

Beispiele und Quelle

Framework-Komponenten sind in AOSP unter Call.RttCall und Connection.RttTextStream verfügbar. IMS-/Modemkomponenten sind proprietär und sollten vom IMS-/Modemanbieter bereitgestellt werden. Eine Referenzimplementierung für RTT im Dialer ist ebenfalls verfügbar.

AOSP-Wählcode für RTT:

Implementierung

Wenn Sie RTT implementieren möchten, sollten Sie mit einem Modem-/SoC-Anbieter zusammenarbeiten, da ein Modem erforderlich ist, das RTT unterstützt. Sie können ein Upgrade auf Android 9 durchführen oder eine Liste von Patches für das Telefonie-Framework in Android 8.0 einfügen. APIs, die in Android 8.0 AOSP hinzugefügt wurden, funktionieren nicht.

Für diese Funktion werden öffentliche APIs in AOSP in android.telecom und @SystemApis in android.telephony.ims verwendet. Die gesamte Benutzeroberfläche befindet sich in com.android.phone und im AOSP-Dialer.

Um RTT zu implementieren, importieren Sie den AOSP-Code und stellen Sie einen IMS-Stack bereit, der die IMS-seitigen @SystemApis für RTT implementiert. Dazu ist Folgendes erforderlich:

  • RTT über ImsConfig#setProvisionedValue(RTT_SETTING_ENABLED) aktivieren/deaktivieren
  • RTT-Status eines Anrufs mit ImsStreamMediaProfile#mRttMode angeben
  • Unterstützung für die folgenden Methoden in ImsCallSession:

    • sendRttMessage
    • sendRttModifyRequest
    • sendRttModifyResponse
  • Unterstützung für den Aufruf der folgenden Methoden in ImsCallSessionListener:

    • callSessionRttModifyRequestReceived
    • callSessionRttModifyResponseReceived
    • callSessionRttMessageReceived

Personalisierung

Sie können diese Funktion mit der Gerätekonfiguration config_support_rtt im Gerätekonfigurations-Overlay für packages/services/Telephony und mit dem Flag für die Carrier-Konfiguration CarrierConfigManager.RTT_SUPPORTED_BOOL in den Dateien für die Carrier-Konfiguration aktivieren oder deaktivieren. Je nach Konfiguration ist die Funktion über die Einstellungen für Bedienungshilfen verfügbar oder nicht. Mit der Gerätekonfiguration können Sie die Standardeinstellungen ändern. Standardmäßig ist die Funktion deaktiviert.

Zertifizierungsstufe

Um Ihre RTT-Implementierung zu validieren, führen Sie CTS-Tests und Dialer-RTT-Tests durch.

CTS-Tests

Die CTS-Tests (android.cts.telecom.RttOperationsTest) decken den AOSP-Teil der Implementierung ab. Sie müssen Ihre eigenen Tests für den IMS-Stack-Teil der Implementierung bereitstellen.

RTT-Tests in der Dialer App

Szenariobeschreibung UI-Mockup
Wenn RTT auf dem Gerät deaktiviert ist, wird ein Dialogfeld zu RTT angezeigt.

RTT-Banner

In den Dialer-Einstellungen ist unter Einstellungen > Bedienungshilfen ein Bildschirm für Echtzeittext verfügbar, auf dem Sie einen anderen RTT-Modus auswählen können.

Barrierefreiheit von RTT

Wenn RTT standardmäßig aktiviert ist:
  • Während des Anrufs wird die Standard-Wähloberfläche für Anrufe angezeigt.
  • Nachdem die Verbindung hergestellt wurde, wird die RTT-Modusansicht angezeigt. Wenn der empfangende Nutzer nicht standardmäßig im RTT-Modus ist, wird während des Wartens auf eine Antwort ein Banner angezeigt, das darauf hinweist, dass der RTT-Modus angefordert wurde.

RTT-Benutzeroberfläche während des Anrufs

Wenn RTT auf dem Gerät deaktiviert ist:
  • Auf dem Bildschirm für eingehende Anrufe werden der Standard-Anruf-Puck und die Standard-Anruflabels angezeigt.

Standard-Benutzeroberfläche für RTT-Anrufe

Wenn RTT auf dem Gerät aktiviert ist und standardmäßig alle Anrufe als RTT-Anrufe beantwortet werden:
  • Auf dem Bildschirm für eingehende Anrufe werden der RTT-Puck und die zugehörigen Anruflabels angezeigt.
  • Wenn Sie den Anruf annehmen, wird der RTT-Modus mit aktivierter Tastatur geladen.

RTT-Modusansicht

In der Anrufoberfläche für RTT gibt es Optionen, mit denen Nutzer den Status des Sprachanrufs steuern und allgemeine Hilfe zur Verwendung von RTT erhalten können:
  • Schalte das Mikrofon aus und wieder ein.
  • Schalte den Lautsprecher ein und aus.
  • Tastenfeld als Eingabe verwenden.
  • Fügen Sie einen weiteren Anruf hinzu.
  • Von einem RTT-Anruf zu einem Sprachanruf wechseln
  • Aktiviere oder deaktiviere die Funktion „Hold“.

Optionen für die RTT-Benutzeroberfläche während eines Anrufs

Wenn Sie auf dem Bildschirm „Anrufdetails“ den Link „Transkript ansehen“ auswählen, wird eine vollständige Konversationsansicht mit dem vollständigen Text der RTT-Sitzung angezeigt. Zeitstempel werden angezeigt. Der Nutzer kann über die Schaltfläche „Zurück“ zum Bildschirm „Anrufdetails“ zurückkehren.

Details zum RTT‑Anruf