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:
- InCall: /java/com/android/incallui/rtt
- Log panggilan: /java/com/android/dialer/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. | |
| Di setelan Aplikasi Telepon, layar Pesan Real-Time tersedia di bagian Setelan > Aksesibilitas yang menyediakan opsi untuk memilih mode RTT yang berbeda. | |
| Jika RTT diaktifkan secara default: 
 | |
| Jika RTT dinonaktifkan di perangkat: 
 | |
| Jika RTT diaktifkan di perangkat dan telah disetel secara default untuk menjawab semua panggilan sebagai RTT: 
 | |
| Di UI dalam panggilan untuk RTT, opsi disediakan untuk
memungkinkan pengguna mengontrol status panggilan suara dan mendapatkan bantuan umum tentang
penggunaan 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. |