Mengimplementasikan teks real-time

Halaman ini menjelaskan cara menerapkan pesan real-time (RTT) di Android 9. RTT adalah fitur untuk pengguna tunarungu atau yang kesulitan mendengar yang menggantikan teknologi teletypewriter (TTY). Dengan fitur ini, perangkat dapat menggunakan nomor telepon yang sama untuk panggilan suara dan RTT, mengirimkan teks secara bersamaan saat diketik berdasarkan karakter, mendukung komunikasi 911, dan menyediakan kemampuan mundur dengan TTY.

Dalam panggilan RTT, penelepon dan penerima memiliki indikasi bahwa mereka sedang melakukan panggilan RTT. Setelah terhubung, kedua pihak akan masuk ke panggilan RTT dengan input teks dan keyboard diaktifkan. Saat mengetik, teks akan muncul dan dikirimkan saat diketik, karakter demi karakter.

Contoh dan sumber

Komponen framework tersedia di AOSP di Call.RttCall dan Connection.RttTextStream. Komponen IMS/modem bersifat eksklusif dan harus disediakan oleh vendor IMS/modem. Implementasi referensi RTT Dialer juga tersedia.

Kode AOSP Dialer untuk RTT:

Implementasi

Untuk menerapkan RTT, Anda harus bekerja sama dengan penyedia modem/SoC karena diperlukan modem yang mendukung RTT. Anda dapat mengupgrade ke Android 9 atau mem-backport daftar patch framework telepon ke Android 8.0. API yang ditambahkan di AOSP Android 8.0 tidak akan berfungsi.

Fitur ini menggunakan API publik di AOSP di android.telecom dan @SystemApis di android.telephony.ims. Semua UI berada dalam com.android.phone dan aplikasi telepon AOSP.

Untuk menerapkan RTT, impor kode AOSP dan berikan stack IMS yang menerapkan @SystemApis sisi IMS untuk RTT. Hal ini memerlukan:

  • Mengaktifkan/menonaktifkan RTT menggunakan ImsConfig#setProvisionedValue(RTT_SETTING_ENABLED)
  • Menunjukkan status RTT panggilan menggunakan ImsStreamMediaProfile#mRttMode
  • Dukungan untuk metode berikut di ImsCallSession:

    • sendRttMessage
    • sendRttModifyRequest
    • sendRttModifyResponse
  • Dukungan untuk memanggil metode berikut di ImsCallSessionListener:

    • callSessionRttModifyRequestReceived
    • callSessionRttModifyResponseReceived
    • callSessionRttMessageReceived

Penyesuaian

Anda dapat mengaktifkan atau menonaktifkan fitur ini menggunakan konfigurasi perangkat, config_support_rtt, di overlay konfigurasi perangkat untuk packages/services/Telephony, dan flag konfigurasi operator, CarrierConfigManager.RTT_SUPPORTED_BOOL, di file konfigurasi operator. Bergantung pada konfigurasi, fitur ini tersedia melalui setelan Aksesibilitas atau tidak. Gunakan konfigurasi perangkat untuk mengubah setelan default. Secara default, fitur ini disetel ke Nonaktif.

Validasi

Untuk memvalidasi penerapan RTT, jalankan pengujian CTS, dan lakukan pengujian RTT dialer.

Pengujian CTS

Pengujian CTS (android.cts.telecom.RttOperationsTest) mencakup bagian AOSP dari penerapan. Anda harus menyediakan pengujian Anda sendiri untuk bagian stack IMS dari penerapan.

Pengujian RTT Dialer

Deskripsi skenario Mock UI
Jika RTT dinonaktifkan di perangkat, dialog tentang RTT akan ditampilkan.

Banner RTT

Di setelan Aplikasi Telepon, layar Pesan Real-Time tersedia di bagian Setelan > Aksesibilitas yang menyediakan opsi untuk memilih mode RTT yang berbeda.

Aksesibilitas RTT

Jika RTT diaktifkan secara default:
  • Saat panggilan dilakukan, UI panggilan standar dalam panggilan akan ditampilkan.
  • Setelah panggilan tersambung, tampilan mode RTT akan ditampilkan. Jika pengguna penerima tidak menggunakan mode RTT secara default, banner yang menunjukkan bahwa mode RTT telah diminta akan ditampilkan saat menunggu respons.

UI dalam panggilan RTT

Jika RTT dinonaktifkan di perangkat:
  • Layar panggilan masuk menampilkan tombol jawab standar dan label panggilan standar.

UI panggilan standar RTT

Jika RTT diaktifkan di perangkat dan telah disetel secara default untuk menjawab semua panggilan sebagai RTT:
  • Layar panggilan masuk menampilkan puck RTT dan label panggilan terkait.
  • Menjawab panggilan akan memuat tampilan mode RTT dengan keyboard yang diaktifkan.

Tampilan mode RTT

Di UI dalam panggilan untuk RTT, opsi disediakan untuk memungkinkan pengguna mengontrol status panggilan suara dan mendapatkan bantuan umum tentang penggunaan RTT:
  • Mengaktifkan dan menonaktifkan mikrofon.
  • Aktifkan dan nonaktifkan speaker.
  • Gunakan keypad sebagai input.
  • Tambahkan panggilan lain.
  • Beralih ke panggilan suara dari panggilan RTT.
  • Aktifkan atau nonaktifkan penahanan.

Opsi UI dalam panggilan RTT

Di layar Detail panggilan, memilih link Lihat transkrip akan menampilkan tampilan percakapan lengkap dengan teks lengkap sesi RTT. Stempel waktu ditampilkan. Pengguna dapat kembali ke layar Detail panggilan menggunakan tombol kembali.

Detail panggilan RTT