통화 해제 이유
통화가 끝나면 통화 유형에 따라 1대1 통화 이벤트 콜백 또는 그룹 통화 이벤트 콜백이 호출됩니다. 이때 콜백으로 받은 쿼리 파라미터를 확인해서 통화가 종료된 이유를 파악할 수 있습니다.
통화가 해제된 이유는 다음과 같은 유형으로 나뉩니다.
| 유형 | 설명 | 관련 파라미터 키 | 비고 |
|---|---|---|---|
| Simple | Q.850 코드. 그중 6가지만 지원합니다. | terminate | 1대1 통화만 해당 |
| LINE Planet 정의 | LINE Planet이 정의한 통화 해제 이유로, 클라이언트와 서버에서 공통의 값을 사용합니다. | disconnect_reason, releaser_type | |
| 애플리케이션 정의 | 애플리케이션이 정의한 통화 해제 이유입니다. | user_rel_code | |
| 디버그 | 통화 해제와 관련한 저수준 데이터입니다. | rel_code, rel_code_str |
Simple 코드
terminate 파라미터는 Q.850 코드 중 간단하게 6가지만 사용합니다.
| 정의 | Q.850 원인 코드 |
|---|---|
| NORMAL_RELEASED | 16. 콜백 파라미터 duration이 0보다 크면 콜백 파라미터 terminate는 16입니다. |
| CANCELED | 77 |
| REJECTED | 21 |
| BUSY | 17 |
| NO_ANSWER | 18 |
| else | 127 |
LINE Planet 정의 코드(Disconnect reason)
LINE Planet은 클라이언트와 서버에 공통적으로 정의된 통화 종료의 이유와 소스에 대한 정보를 제공합니다. 이 값은 1대1 통화 이벤트 콜백 또는 그룹 통화 이벤트 콜백의 disconnect_reason과 releaser_type 파라미터로 전달됩니다.
disconnect_reason과 releaser_type에 대한 자세한 내용은 통화 종료 이유를 참고하세요.
애플리케이션 정의 코드
애플리케이션 자체적으로 통화 해제 이유를 정의하고 싶으면 user_rel_code를 사용할 수 있습니다. 통화가 해제됐을 때, 애플리케이션은 PlanetKit을 이용해 문자열 형식으로 자신만의 이유를 정의합니다. 이 문자열은 user_rel_code에 담겨 LINE Planet 서버에서 앱 서버로 전달됩니다.
디버그용 코드
LINE Planet은 통화가 끊어졌을 때 rel_code, rel_code_str를 이용해 무슨 일이 있었는지 추적할 수 있습니다.