Trang này mô tả cách triển khai tin nhắn theo thời gian thực (RTT) trong Android 9. RTT là một tính năng dành cho người dùng khiếm thính hoặc người có thính giác kém, thay thế công nghệ máy điện báo đánh chữ (TTY). Với tính năng này, thiết bị có thể dùng cùng một số điện thoại cho cuộc gọi thoại và cuộc gọi RTT, đồng thời truyền văn bản khi đang nhập từng ký tự, hỗ trợ giao tiếp qua số điện thoại khẩn cấp 911 và cung cấp khả năng tương thích ngược với TTY.
Trong cuộc gọi RTT, cả người gọi và người nhận đều có dấu hiệu cho biết họ đang trong cuộc gọi RTT. Khi kết nối, cả hai bên đều tham gia cuộc gọi RTT, trong đó tính năng nhập văn bản và bàn phím được kích hoạt. Khi nhập, văn bản sẽ xuất hiện và được gửi khi bạn nhập từng ký tự.
Ví dụ và nguồn
Các thành phần khung có trong AOSP tại Call.RttCall và Connection.RttTextStream. Các thành phần IMS/modem là độc quyền và phải do nhà cung cấp IMS/modem cung cấp. Bạn cũng có thể tham khảo cách triển khai RTT trong Trình quay số.
Mã Trình quay số AOSP cho RTT:
- Trong cuộc gọi: /java/com/android/incallui/rtt
- Nhật ký cuộc gọi: /java/com/android/dialer/rtt
Triển khai
Để triển khai RTT, bạn nên làm việc với nhà cung cấp modem/SoC vì cần có modem hỗ trợ RTT. Bạn có thể nâng cấp lên Android 9 hoặc chuyển ngược một danh sách các bản vá khung viễn thông vào Android 8.0. Các API được thêm vào AOSP Android 8.0 sẽ không hoạt động.
Tính năng này sử dụng các API công khai trong AOSP trong android.telecom và @SystemApis trong android.telephony.ims. Tất cả giao diện người dùng đều nằm trong com.android.phone và trình quay số AOSP.
Để triển khai RTT, hãy nhập mã AOSP và cung cấp một ngăn xếp IMS triển khai @SystemApis phía IMS cho RTT. Điều này yêu cầu:
- Bật/tắt RTT bằng
ImsConfig#setProvisionedValue(RTT_SETTING_ENABLED) - Cho biết trạng thái RTT của cuộc gọi bằng
ImsStreamMediaProfile#mRttMode Hỗ trợ các phương thức sau trong
ImsCallSession:sendRttMessagesendRttModifyRequestsendRttModifyResponse
Hỗ trợ gọi các phương thức sau trong
ImsCallSessionListener:callSessionRttModifyRequestReceivedcallSessionRttModifyResponseReceivedcallSessionRttMessageReceived
Tuỳ chỉnh
Bạn có thể bật hoặc tắt tính năng này bằng cách sử dụng cấu hình thiết bị, config_support_rtt, trong lớp phủ cấu hình thiết bị cho packages/services/Telephony và cờ cấu hình nhà mạng, CarrierConfigManager.RTT_SUPPORTED_BOOL, trong các tệp cấu hình nhà mạng.
Tuỳ thuộc vào cấu hình, tính năng này có thể có trong phần Cài đặt trợ năng hoặc không. Hãy sử dụng cấu hình thiết bị để thay đổi chế độ cài đặt mặc định. Theo mặc định, tính năng này được đặt thành Tắt.
Xác nhận kết quả
Để xác thực việc triển khai RTT, hãy chạy các bài kiểm thử CTS và kiểm thử RTT trong trình quay số.
Kiểm thử CTS
Các bài kiểm thử CTS (android.cts.telecom.RttOperationsTest) bao gồm phần triển khai AOSP. Bạn phải tự cung cấp các bài kiểm thử cho phần triển khai ngăn xếp IMS.
Kiểm thử RTT trong trình quay số
| Mô tả tình huống | Mô phỏng giao diện người dùng |
|---|---|
| Nếu RTT bị tắt trên thiết bị, một hộp thoại về RTT sẽ xuất hiện. |
|
| Trong phần cài đặt Trình quay số, màn hình Tin nhắn theo thời gian thực có trong phần Cài đặt > Trợ năng cung cấp một lựa chọn để chọn chế độ RTT khác. |
|
Khi RTT được bật theo mặc định:
|
|
Nếu RTT bị tắt trên thiết bị:
|
|
Nếu RTT được bật trên thiết bị và được đặt mặc định để trả lời tất cả cuộc gọi dưới dạng RTT:
|
|
Trong giao diện người dùng trong cuộc gọi cho RTT, các lựa chọn được cung cấp để cho phép người dùng kiểm soát trạng thái của cuộc gọi thoại và nhận trợ giúp chung về cách sử dụng RTT:
|
|
| Trong màn hình Chi tiết cuộc gọi, việc chọn đường liên kết Xem bản ghi sẽ hiển thị chế độ xem toàn bộ cuộc trò chuyện với toàn bộ văn bản của phiên RTT. Dấu thời gian sẽ xuất hiện. Người dùng có thể quay lại màn hình Chi tiết cuộc gọi bằng nút quay lại. |
|






