通話切断の理由
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_CALLEE | 1 | 1対1通話の受信者 |
PLNK_DISCONNECT_SOURCE_CALLER | 2 | 1対1通話の発信者 |
PLNK_DISCONNECT_SOURCE_PARTICIPANT | 3 | グループ通話の参加者 |
PLNK_DISCONNECT_SOURCE_CLOUD_SERVER | 4 | LINE Planet Cloudサーバー |
PLNK_DISCONNECT_SOURCE_APP_SERVER | 5 | アプリケーションサーバー |
切断理由
EDisconnectReason
enumから提供する切断理由は、次のとおりです。それぞれの切断理由について詳細な情報を確認するには、以下のリンクを参照してください。
Enum定数 | 切断理由 |
---|---|
PLNK_DISCONNECT_REASON_NORMAL | NORMAL |
PLNK_DISCONNECT_REASON_DECLINE | DECLINE |
PLNK_DISCONNECT_REASON_CELL_CALL | CELL_CALL |
PLNK_DISCONNECT_REASON_INTERNAL_ERROR | INTERNAL_ERROR |
PLNK_DISCONNECT_REASON_USER_ERROR | USER_ERROR |
PLNK_DISCONNECT_REASON_INTERNAL_KIT_ERROR | INTERNAL_KIT_ERROR |
PLNK_DISCONNECT_REASON_AUDIO_TX_NO_SRC | AUDIO_TX_NO_SRC |
PLNK_DISCONNECT_REASON_CANCEL | CANCEL |
PLNK_DISCONNECT_REASON_BUSY | BUSY |
PLNK_DISCONNECT_REASON_NO_ANSWER | NOANSWER |
PLNK_DISCONNECT_REASON_ALREADY_GOT_A_CALL | ALREADY_GOT_A_CALL |
PLNK_DISCONNECT_REASON_MULTIDEV_IN_USE | MULTIDEV_IN_USE |
PLNK_DISCONNECT_REASON_MULTIDEV_ANSWER | MULTIDEV_ANSWER |
PLNK_DISCONNECT_REASON_MULTIDEV_DECLINE | MULTIDEV_DECLINE |
PLNK_DISCONNECT_REASON_MAX_CALL_TIME_EXCEEDED | MAX_CALL_TIME_EXCEEDED |
PLNK_DISCONNECT_REASON_NETWORK_UNSTABLE | NETWORK_UNSTABLE |
PLNK_DISCONNECT_REASON_PUSH_ERROR | PUSH_ERROR |
PLNK_DISCONNECT_REASON_AUTH_ERROR | AUTH_ERROR |
PLNK_DISCONNECT_REASON_RELEASED_CALL | RELEASED_CALL |
PLNK_DISCONNECT_REASON_SERVER_INTERNAL_ERROR | SERVER_INTERNAL_ERROR |
PLNK_DISCONNECT_REASON_UNAVAILABLE_NETWORK | UNAVAILABLE_NETWORK |
PLNK_DISCONNECT_REASON_APP_DESTROY | APP_DESTROY |
PLNK_DISCONNECT_REASON_SYSTEM_SLEEP | SYSTEM_SLEEP |
PLNK_DISCONNECT_REASON_SYSTEM_LOGOFF | SYSTEM_LOGOFF |
PLNK_DISCONNECT_REASON_MTU_EXCEEDED | MTU_EXCEEDED |
PLNK_DISCONNECT_REASON_APP_SERVER_DATA_ERROR | APP_SERVER_DATA_ERROR |
PLNK_DISCONNECT_REASON_DESKTOP_SCREEN_LOCKED | DESKTOP_SCREEN_LOCKED |
PLNK_DISCONNECT_REASON_ROOM_IS_FULL | ROOM_IS_FULL |
PLNK_DISCONNECT_REASON_ALONE_KICK_OUT | ALONE_KICK_OUT |
PLNK_DISCONNECT_REASON_WRONG_ROOM_ATTR | WRONG_ROOM_ATTR |
PLNK_DISCONNECT_REASON_REASON_ROOM_NOT_FOUND | ROOM_NOT_FOUND |
PLNK_DISCONNECT_REASON_ANOTHER_INSTANCE_TRY_TO_JOIN | ANOTHER_INSTANCE_TRY_TO_JOIN |
PLNK_DISCONNECT_REASON_SERVICE_ACCESS_TOKEN_ERROR | SERVICE_ACCESS_TOKEN_ERROR |
PLNK_DISCONNECT_REASON_SERVICE_INVALID_ID | SERVICE_INVALID_ID |
PLNK_DISCONNECT_REASON_SERVICE_MAINTENANCE | SERVICE_MAINTENANCE |
PLNK_DISCONNECT_REASON_SERVICE_BUSY | SERVICE_BUSY |
PLNK_DISCONNECT_REASON_SERVICE_INTERNAL_ERROR | SERVICE_INTERNAL_ERROR |
PLNK_DISCONNECT_REASON_SERVICE_HTTP_ERROR | SERVICE_HTTP_ERROR |
PLNK_DISCONNECT_REASON_SERVICE_HTTP_CONNECTION_TIME_OUT | SERVICE_HTTP_CONNECTION_TIME_OUT |
PLNK_DISCONNECT_REASON_SERVICE_HTTP_INVALID_PEER_CERT | SERVICE_HTTP_INVALID_PEER_CERT |
PLNK_DISCONNECT_REASON_SERVICE_HTTP_CONNECT_FAIL | SERVICE_HTTP_CONNECT_FAIL |
PLNK_DISCONNECT_REASON_SERVICE_HTTP_INVALID_URL | SERVICE_HTTP_INVALID_URL |
PLNK_DISCONNECT_REASON_SERVICE_INCOMPATIBLE_PLANETKIT_VER | SERVICE_INCOMPATIBLE_PLANETKIT_VER |
PLNK_DISCONNECT_REASON_SERVICE_TOO_MANY_REQUESTS | SERVICE_TOO_MANY_REQUESTS |