이 페이지에서는 Android 9에서 실시간 문자 메시지(RTT)를 구현하는 방법을 설명합니다. RTT는 청각장애인이나 난청 사용자를 위한 기능으로 텍스트 전화(TTY) 기술을 대체합니다. 이 기능을 사용하면 기기에서 음성 및 RTT 통화에 동일한 전화번호를 사용하고 텍스트를 문자 단위로 입력하는 동시에 전송하며 911 통신을 지원하고 TTY의 뒤로 기능을 제공할 수 있습니다.
RTT 통화에서는 발신자와 수신자에게 모두 RTT 통화라고 표시됩니다. 연결되면 양쪽이 텍스트 입력과 키보드가 활성화된 RTT 통화를 시작합니다. 입력할 때 텍스트는 문자 단위로 표시되고 입력한 대로 전송됩니다.
예시 및 소스
프레임워크 구성요소는 Call.RttCall 및 Connection.RttTextStream의 AOSP에서 사용할 수 있습니다. IMS/모뎀 구성요소는 독점적이며 IMS/모뎀 공급업체가 제공해야 합니다. 다이얼러 RTT 참조 구현도 사용 가능합니다.
RTT용 AOSP 다이얼러 코드:
- InCall: /java/com/android/incallui/rtt
- 통화 기록: /java/com/android/dialer/rtt
구현
RTT를 구현하려면 RTT를 지원하는 모뎀이 필요하므로 모뎀/SoC 제공업체와 협력해야 합니다. Android 9로 업그레이드하거나 텔레포니 프레임워크 패치 목록을 Android 8.0으로 백포트할 수 있습니다. Android 8.0 AOSP에 추가된 API는 작동하지 않습니다.
이 기능은 android.telecom
에서 AOSP의 공개 API를 사용하고 android.telephony.ims
에서 @SystemApis를 사용합니다. 모든 UI는 com.android.phone
및 AOSP 다이얼러 내에 있습니다.
RTT를 구현하려면 AOSP 코드를 가져와서 RTT용 IMS 측 @SystemApis를 구현하는 IMS 스택을 제공합니다. 이를 위해서는 다음이 필요합니다.
ImsConfig#setProvisionedValue(RTT_SETTING_ENABLED)
를 통해 RTT 사용 설정 또는 사용 중지ImsStreamMediaProfile#mRttMode
를 통해 통화의 RTT 상태 표시ImsCallSession
에서 다음 메서드를 지원합니다.sendRttMessage
sendRttModifyRequest
sendRttModifyResponse
ImsCallSessionListener
에서 다음 메서드 호출을 지원합니다.callSessionRttModifyRequestReceived
callSessionRttModifyResponseReceived
callSessionRttMessageReceived
맞춤설정
packages/services/Telephony
의 기기 설정 오버레이에서 기기 설정 config_support_rtt
및 이동통신사 구성 파일에서 이동통신사 구성 플래그 CarrierConfigManager.RTT_SUPPORTED_BOOL
을 사용하여 이 기능을 사용 설정 또는 사용 중지할 수 있습니다.
구성에 따라 이 기능은 접근성 설정을 통해 사용 가능 여부가 결정됩니다. 기기 설정을 사용하여 기본 설정을 변경합니다. 기본적으로 이 기능은 사용 안함으로 설정되어 있습니다.
유효성 검사
RTT 구현을 확인하려면 CTS 테스트를 실행하고 다이얼러 RTT 테스트를 실행합니다.
CTS 테스트
CTS 테스트(android.cts.telecom.RttOperationsTest
)는 구현의 AOSP 부분을 다룹니다. 구현의 IMS 스택 부분에 자체 테스트를 제공해야 합니다.
다이얼러 RTT 테스트
시나리오 설명 | UI 모형 |
---|---|
RTT가 기기에서 사용 중지되면 RTT에 관한 배너가 표시됩니다. RTT에 관한 자세한 내용이 있는 Google 고객센터의 도움말 페이지로 안내하는 '자세히 알아보기' 옵션이 표시됩니다. 배너 통화가 표시됩니다. |
|
다이얼러 설정에서 '실시간 문자 메시지' 화면은 'RTT 모드'를 사용 설정하는 옵션을 제공하는 설정 > 접근성에서 사용할 수 있습니다. 설명 텍스트가 표시되어 모드를 설명합니다. '통화 중에 말하고 듣는 대신 SMS를 보내고 받습니다.' | |
RTT가 기본적으로 사용 설정된 경우
|
|
RTT가 기기에서 사용 중지된 경우
|
|
RTT가 기기에서 사용 설정되어 있고 모든 전화에 RTT로 응답하도록 기본 설정된 경우
|
|
RTT용 통화 중 UI에는 사용자가 음성 통화 상태를 제어하고 RTT 사용에 관한 일반적인 도움을 받을 수 있는 옵션이 제공됩니다.
|
|
'통화 세부정보' 화면에 RTT 대화 기록의 스니펫이 표시됩니다.
|