본문으로 건너뛰기
Version: 5.5

통화 종료 이유

LINE Planet에서는 1대1 통화와 그룹 통화에 대해 통화 종료의 이유를 제공하며, 이를 통화 종료 이유(disconnect reason)라고 합니다. 통화 종료 이유의 값은 클라이언트와 서버에 대해 공통으로 정의됩니다.

통화가 종료되면 통화 종료 이유가 통화 종료 소스와 함께 전달되므로 이 정보를 사용하여 통화 종료의 원인과 시작점을 확인할 수 있습니다.

Note

클라이언트와 서버에 공통으로 정의된 통화 종료 이유 값을 지원하는 SDK 버전은 다음과 같습니다.

  • Android, iOS/macOS, Windows: PlanetKit 5.1 이상
  • Web: WebPlanetKit 5.2 이상

관련 API

1대1 통화의 경우 OnDisconnected 콜백이 전달하는 SCallDisconnectedParam에서 정보를 얻을 수 있습니다. 그룹 통화의 경우 OnDisconnected 콜백이 전달하는 SConferenceDisconnectedParam에서 정보를 얻을 수 있습니다.

// For 1-to-1 calls
virtual void OnDisconnected(PlanetKitCallPtr pPlanetKitCall, const SCallDisconnectedParam* pParam) = 0;

// For group calls
virtual void OnDisconnected(PlanetKitConferencePtr pPlanetKitConference, const SConferenceDisconnectedParam* pParam) = 0;

SCallDisconnectedParam 구조체는 다음 멤버들로 구성됩니다.

typedef struct SCallDisconnectedParam
{
// Disconnect reason
EDisconnectReason eReason;
// Disconnect source
EDisconnectSource eDisconnectSource;
// Whether the disconnection was made by a remote user or not
bool bByRemote;
// User-defined release code
String strUserRelCode;
} SCallDisconnectedParam;

SConferenceDisconnectedParam 구조체는 다음 멤버들로 구성됩니다.

typedef struct SConferenceDisconnectedParam
{
// Disconnect reason
EDisconnectReason eEndReason;
// Disconnect source
EDisconnectSource eDisconnectSource;
// Whether the disconnection was made by a remote user or not
bool bByRemote;
// User-defined release code
String strUserRelCode;
} SConferenceDisconnectedParam;

통화 종료 소스

EDisconnectSource enum에는 다음과 같은 유형의 통화 종료 소스가 있습니다.

Enum 상수설명
PLNK_DISCONNECT_SOURCE_CALLEE11대1 통화 착신자
PLNK_DISCONNECT_SOURCE_CALLER21대1 통화 발신자
PLNK_DISCONNECT_SOURCE_PARTICIPANT3그룹 통화 참여자
PLNK_DISCONNECT_SOURCE_CLOUD_SERVER4LINE Planet Cloud 서버
PLNK_DISCONNECT_SOURCE_APP_SERVER5애플리케이션 서버

통화 종료 이유

EDisconnectReason enum에서 제공하는 통화 종료 이유는 다음과 같습니다. 통화 종료 이유별로 더 상세한 정보를 확인하려면 아래 링크를 참조하세요.

Enum 상수통화 종료 이유
PLNK_DISCONNECT_REASON_NORMALNORMAL
PLNK_DISCONNECT_REASON_DECLINEDECLINE
PLNK_DISCONNECT_REASON_CELL_CALLCELL_CALL
PLNK_DISCONNECT_REASON_INTERNAL_ERRORINTERNAL_ERROR
PLNK_DISCONNECT_REASON_USER_ERRORUSER_ERROR
PLNK_DISCONNECT_REASON_INTERNAL_KIT_ERRORINTERNAL_KIT_ERROR
PLNK_DISCONNECT_REASON_AUDIO_TX_NO_SRCAUDIO_TX_NO_SRC
PLNK_DISCONNECT_REASON_CANCELCANCEL
PLNK_DISCONNECT_REASON_BUSYBUSY
PLNK_DISCONNECT_REASON_NO_ANSWERNOANSWER
PLNK_DISCONNECT_REASON_ALREADY_GOT_A_CALLALREADY_GOT_A_CALL
PLNK_DISCONNECT_REASON_MULTIDEV_IN_USEMULTIDEV_IN_USE
PLNK_DISCONNECT_REASON_MULTIDEV_ANSWERMULTIDEV_ANSWER
PLNK_DISCONNECT_REASON_MULTIDEV_DECLINEMULTIDEV_DECLINE
PLNK_DISCONNECT_REASON_MAX_CALL_TIME_EXCEEDEDMAX_CALL_TIME_EXCEEDED
PLNK_DISCONNECT_REASON_NETWORK_UNSTABLENETWORK_UNSTABLE
PLNK_DISCONNECT_REASON_PUSH_ERRORPUSH_ERROR
PLNK_DISCONNECT_REASON_AUTH_ERRORAUTH_ERROR
PLNK_DISCONNECT_REASON_RELEASED_CALLRELEASED_CALL
PLNK_DISCONNECT_REASON_SERVER_INTERNAL_ERRORSERVER_INTERNAL_ERROR
PLNK_DISCONNECT_REASON_UNAVAILABLE_NETWORKUNAVAILABLE_NETWORK
PLNK_DISCONNECT_REASON_APP_DESTROYAPP_DESTROY
PLNK_DISCONNECT_REASON_SYSTEM_SLEEPSYSTEM_SLEEP
PLNK_DISCONNECT_REASON_SYSTEM_LOGOFFSYSTEM_LOGOFF
PLNK_DISCONNECT_REASON_MTU_EXCEEDEDMTU_EXCEEDED
PLNK_DISCONNECT_REASON_APP_SERVER_DATA_ERRORAPP_SERVER_DATA_ERROR
PLNK_DISCONNECT_REASON_DESKTOP_SCREEN_LOCKEDDESKTOP_SCREEN_LOCKED
PLNK_DISCONNECT_REASON_ROOM_IS_FULLROOM_IS_FULL
PLNK_DISCONNECT_REASON_ALONE_KICK_OUTALONE_KICK_OUT
PLNK_DISCONNECT_REASON_WRONG_ROOM_ATTRWRONG_ROOM_ATTR
PLNK_DISCONNECT_REASON_REASON_ROOM_NOT_FOUNDROOM_NOT_FOUND
PLNK_DISCONNECT_REASON_ANOTHER_INSTANCE_TRY_TO_JOINANOTHER_INSTANCE_TRY_TO_JOIN
PLNK_DISCONNECT_REASON_SERVICE_ACCESS_TOKEN_ERRORSERVICE_ACCESS_TOKEN_ERROR
PLNK_DISCONNECT_REASON_SERVICE_INVALID_IDSERVICE_INVALID_ID
PLNK_DISCONNECT_REASON_SERVICE_MAINTENANCESERVICE_MAINTENANCE
PLNK_DISCONNECT_REASON_SERVICE_BUSYSERVICE_BUSY
PLNK_DISCONNECT_REASON_SERVICE_INTERNAL_ERRORSERVICE_INTERNAL_ERROR
PLNK_DISCONNECT_REASON_SERVICE_HTTP_ERRORSERVICE_HTTP_ERROR
PLNK_DISCONNECT_REASON_SERVICE_HTTP_CONNECTION_TIME_OUTSERVICE_HTTP_CONNECTION_TIME_OUT
PLNK_DISCONNECT_REASON_SERVICE_HTTP_INVALID_PEER_CERTSERVICE_HTTP_INVALID_PEER_CERT
PLNK_DISCONNECT_REASON_SERVICE_HTTP_CONNECT_FAILSERVICE_HTTP_CONNECT_FAIL
PLNK_DISCONNECT_REASON_SERVICE_HTTP_INVALID_URLSERVICE_HTTP_INVALID_URL
PLNK_DISCONNECT_REASON_SERVICE_INCOMPATIBLE_PLANETKIT_VERSERVICE_INCOMPATIBLE_PLANETKIT_VER
PLNK_DISCONNECT_REASON_SERVICE_TOO_MANY_REQUESTSSERVICE_TOO_MANY_REQUESTS