通話切断の理由
LINE Planetでは、1対1通話とグループ通話に対して通話が切断された理由を示す切断理由(disconnect reason)を提供しています。切断理由の値は、クライアントとサーバー共通で定義されます。
通話が終了すると切断理由が切断元と共に渡されます。この情報から切断の原因と切断側がわかります。
Note
クライアントとサーバー共通で定義された切断理由の値をサポートするSDKバージョンは、次のとおりです。
- Android、iOS/macOS、Windows:PlanetKit 5.1以上
- Web:WebPlanetKit 5.2以上
関連API
1対1通話またはグループ通話のonDisconnected
コールバックが渡すPlanetKitDisconnectedParam
から上記情報を取得できます。
// For 1-to-1 calls
fun onDisconnected(call: PlanetKitCall, param: PlanetKitDisconnectedParam)
// For group calls
fun onDisconnected(conference: PlanetKitConference, param: PlanetKitDisconnectedParam)
PlanetKitDisconnectedParam
クラスは、次のプロパティで構成されます。
data class PlanetKitDisconnectedParam(
// Disconnect reason
val reason: PlanetKitDisconnectReason,
// Disconnect source
val source: PlanetKitDisconnectSource,
// Whether the disconnection was made by a remote user or not
val byRemote: Boolean,
// User-defined release code
val userCode: String?
)
切断元
PlanetKitDisconnectSource
enumクラスには、次のタイプの切断元があります。
Enum定数 | 値 | 説明 |
---|---|---|
CALLEE | 1 | 1対1通話の受信者 |
CALLER | 2 | 1対1通話の発信者 |
PARTICIPANT | 3 | グループ通話の参加者 |
CLOUD_SERVER | 4 | LINE Planet Cloudサーバー |
APP_SERVER | 5 | アプリケーションサーバー |
切断理由
PlanetKitDisconnectReason
enumクラスから提供する切断理由は、次のとおりです。それぞれの切断理由について詳細な情報を確認するには、以下のリンクを参照してください。
Enum定数 | 切断理由 |
---|---|
NORMAL | NORMAL |
DECLINE | DECLINE |
CELL_CALL | CELL_CALL |
INTERNAL_ERROR | INTERNAL_ERROR |
USER_ERROR | USER_ERROR |
INTERNAL_KIT_ERROR | INTERNAL_KIT_ERROR |
AUDIO_TX_NO_SRC | AUDIO_TX_NO_SRC |
CANCEL | CANCEL |
BUSY | BUSY |
NO_ANSWER | NOANSWER |
ALREADY_GOT_A_CALL | ALREADY_GOT_A_CALL |
MULTIDEV_IN_USE | MULTIDEV_IN_USE |
MULTIDEV_ANSWER | MULTIDEV_ANSWER |
MULTIDEV_DECLINE | MULTIDEV_DECLINE |
MAX_CALL_TIME_EXCEEDED | MAX_CALL_TIME_EXCEEDED |
NETWORK_UNSTABLE | NETWORK_UNSTABLE |
PUSH_ERROR | PUSH_ERROR |
AUTH_ERROR | AUTH_ERROR |
RELEASED_CALL | RELEASED_CALL |
SERVER_INTERNAL_ERROR | SERVER_INTERNAL_ERROR |
UNAVAILABLE_NETWORK | UNAVAILABLE_NETWORK |
APP_DESTROY | APP_DESTROY |
SYSTEM_SLEEP | SYSTEM_SLEEP |
SYSTEM_LOGOFF | SYSTEM_LOGOFF |
MTU_EXCEEDED | MTU_EXCEEDED |
APP_SERVER_DATA_ERROR | APP_SERVER_DATA_ERROR |
DESKTOP_SCREEN_LOCKED | DESKTOP_SCREEN_LOCKED |
ROOM_IS_FULL | ROOM_IS_FULL |
ALONE_KICK_OUT | ALONE_KICK_OUT |
WRONG_ROOM_ATTRIBUTE | WRONG_ROOM_ATTR |
REASON_ROOM_NOT_FOUND | ROOM_NOT_FOUND |
ANOTHER_INSTANCE_TRY_TO_JOIN | ANOTHER_INSTANCE_TRY_TO_JOIN |
SERVICE_ACCESS_TOKEN_ERROR | SERVICE_ACCESS_TOKEN_ERROR |
SERVICE_INVALID_ID | SERVICE_INVALID_ID |
SERVICE_MAINTENANCE | SERVICE_MAINTENANCE |
SERVICE_BUSY | SERVICE_BUSY |
SERVICE_INTERNAL_ERROR | SERVICE_INTERNAL_ERROR |
SERVICE_HTTP_ERROR | SERVICE_HTTP_ERROR |
SERVICE_HTTP_CONNECTION_TIME_OUT | SERVICE_HTTP_CONNECTION_TIME_OUT |
SERVICE_HTTP_INVALID_PEER_CERT | SERVICE_HTTP_INVALID_PEER_CERT |
SERVICE_HTTP_CONNECT_FAIL | SERVICE_HTTP_CONNECT_FAIL |
SERVICE_HTTP_INVALID_URL | SERVICE_HTTP_INVALID_URL |
SERVICE_INCOMPATIBLE_PLANETKIT_VER | SERVICE_INCOMPATIBLE_PLANETKIT_VER |
SERVICE_TOO_MANY_REQUESTS | SERVICE_TOO_MANY_REQUESTS |