Mengimplementasikan teks real-time

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

Dalam panggilan RTT, penelepon dan penerima memiliki indikasi bahwa mereka sedang melakukan panggilan RTT. Saat terhubung, kedua sisi akan memasuki panggilan RTT tempat input teks dan keyboard diaktifkan. Saat mengetik, teks akan muncul dan dikirim saat diketik, karakter demi karakter.

Contoh dan sumber

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

Kode Telepon AOSP untuk RTT:

Implementasi

Untuk menerapkan RTT, Anda harus bekerja sama dengan penyedia modem/SoC karena modem yang mendukung RTT diperlukan. Anda dapat mengupgrade ke Android 9 atau melakukan backport daftar patch framework telefoni 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 dialer AOSP.

Untuk menerapkan RTT, impor kode AOSP dan sediakan stack IMS yang mengimplementasikan @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, dalam 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 implementasi RTT, jalankan uji CTS, dan lakukan pengujian RTT pemanggil.

Pengujian CTS

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

Pengujian RTT di aplikasi Telepon

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

Banner RTT

Di setelan Telepon, layar Teks 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 dalam panggilan standar akan ditampilkan.
  • Setelah koneksi panggilan, tampilan mode RTT akan ditampilkan. Jika pengguna penerima tidak secara default menggunakan mode RTT, 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 puck penjawab standar dan label panggilan standar.

UI panggilan standar RTT

Jika RTT diaktifkan di perangkat dan memiliki setelan 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:
  • Aktifkan dan nonaktifkan mikrofon.
  • Aktifkan dan nonaktifkan speaker.
  • Gunakan keypad sebagai input.
  • Tambahkan panggilan lain.
  • Beralih ke panggilan suara dari panggilan RTT.
  • Aktifkan dan nonaktifkan mode tahan.

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