| /* |
| * Copyright (C) 2014 The Android Open Source Project |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| package android.telephony; |
| |
| /** |
| * Contains disconnect call causes generated by the framework and the RIL. |
| */ |
| public class DisconnectCause { |
| |
| /** The disconnect cause is not valid (Not received a disconnect cause) */ |
| public static final int NOT_VALID = -1; |
| /** Has not yet disconnected */ |
| public static final int NOT_DISCONNECTED = 0; |
| /** An incoming call that was missed and never answered */ |
| public static final int INCOMING_MISSED = 1; |
| /** Normal; Remote hangup*/ |
| public static final int NORMAL = 2; |
| /** Normal; Local hangup */ |
| public static final int LOCAL = 3; |
| /** Outgoing call to busy line */ |
| public static final int BUSY = 4; |
| /** Outgoing call to congested network */ |
| public static final int CONGESTION = 5; |
| /** Not presently used */ |
| public static final int MMI = 6; |
| /** Invalid dial string */ |
| public static final int INVALID_NUMBER = 7; |
| /** Cannot reach the peer */ |
| public static final int NUMBER_UNREACHABLE = 8; |
| /** Cannot reach the server */ |
| public static final int SERVER_UNREACHABLE = 9; |
| /** Invalid credentials */ |
| public static final int INVALID_CREDENTIALS = 10; |
| /** Calling from out of network is not allowed */ |
| public static final int OUT_OF_NETWORK = 11; |
| /** Server error */ |
| public static final int SERVER_ERROR = 12; |
| /** Client timed out */ |
| public static final int TIMED_OUT = 13; |
| /** Client went out of network range */ |
| public static final int LOST_SIGNAL = 14; |
| /** GSM or CDMA ACM limit exceeded */ |
| public static final int LIMIT_EXCEEDED = 15; |
| /** An incoming call that was rejected */ |
| public static final int INCOMING_REJECTED = 16; |
| /** Radio is turned off explicitly */ |
| public static final int POWER_OFF = 17; |
| /** Out of service */ |
| public static final int OUT_OF_SERVICE = 18; |
| /** No ICC, ICC locked, or other ICC error */ |
| public static final int ICC_ERROR = 19; |
| /** Call was blocked by call barring */ |
| public static final int CALL_BARRED = 20; |
| /** Call was blocked by fixed dial number */ |
| public static final int FDN_BLOCKED = 21; |
| /** Call was blocked by restricted all voice access */ |
| public static final int CS_RESTRICTED = 22; |
| /** Call was blocked by restricted normal voice access */ |
| public static final int CS_RESTRICTED_NORMAL = 23; |
| /** Call was blocked by restricted emergency voice access */ |
| public static final int CS_RESTRICTED_EMERGENCY = 24; |
| /** Unassigned number */ |
| public static final int UNOBTAINABLE_NUMBER = 25; |
| /** MS is locked until next power cycle */ |
| public static final int CDMA_LOCKED_UNTIL_POWER_CYCLE = 26; |
| /** Drop call*/ |
| public static final int CDMA_DROP = 27; |
| /** INTERCEPT order received, MS state idle entered */ |
| public static final int CDMA_INTERCEPT = 28; |
| /** MS has been redirected, call is cancelled */ |
| public static final int CDMA_REORDER = 29; |
| /** Service option rejection */ |
| public static final int CDMA_SO_REJECT = 30; |
| /** Requested service is rejected, retry delay is set */ |
| public static final int CDMA_RETRY_ORDER = 31; |
| /** Unable to obtain access to the CDMA system */ |
| public static final int CDMA_ACCESS_FAILURE = 32; |
| /** Not a preempted call */ |
| public static final int CDMA_PREEMPTED = 33; |
| /** Not an emergency call */ |
| public static final int CDMA_NOT_EMERGENCY = 34; |
| /** Access Blocked by CDMA network */ |
| public static final int CDMA_ACCESS_BLOCKED = 35; |
| /** Unknown error or not specified */ |
| public static final int ERROR_UNSPECIFIED = 36; |
| |
| /** Smallest valid value for call disconnect codes. */ |
| public static final int MINIMUM_VALID_VALUE = NOT_DISCONNECTED; |
| /** Largest valid value for call disconnect codes. */ |
| public static final int MAXIMUM_VALID_VALUE = ERROR_UNSPECIFIED; |
| |
| /** Private constructor to avoid class instantiation. */ |
| private DisconnectCause() { |
| // Do nothing. |
| } |
| |
| /** Returns descriptive string for the specified disconnect cause. */ |
| public static String toString(int cause) { |
| switch (cause) { |
| case NOT_DISCONNECTED: |
| return "NOT_DISCONNECTED"; |
| case INCOMING_MISSED: |
| return "INCOMING_MISSED"; |
| case NORMAL: |
| return "NORMAL"; |
| case LOCAL: |
| return "LOCAL"; |
| case BUSY: |
| return "BUSY"; |
| case CONGESTION: |
| return "CONGESTION"; |
| case INVALID_NUMBER: |
| return "INVALID_NUMBER"; |
| case NUMBER_UNREACHABLE: |
| return "NUMBER_UNREACHABLE"; |
| case SERVER_UNREACHABLE: |
| return "SERVER_UNREACHABLE"; |
| case INVALID_CREDENTIALS: |
| return "INVALID_CREDENTIALS"; |
| case OUT_OF_NETWORK: |
| return "OUT_OF_NETWORK"; |
| case SERVER_ERROR: |
| return "SERVER_ERROR"; |
| case TIMED_OUT: |
| return "TIMED_OUT"; |
| case LOST_SIGNAL: |
| return "LOST_SIGNAL"; |
| case LIMIT_EXCEEDED: |
| return "LIMIT_EXCEEDED"; |
| case INCOMING_REJECTED: |
| return "INCOMING_REJECTED"; |
| case POWER_OFF: |
| return "POWER_OFF"; |
| case OUT_OF_SERVICE: |
| return "OUT_OF_SERVICE"; |
| case ICC_ERROR: |
| return "ICC_ERROR"; |
| case CALL_BARRED: |
| return "CALL_BARRED"; |
| case FDN_BLOCKED: |
| return "FDN_BLOCKED"; |
| case CS_RESTRICTED: |
| return "CS_RESTRICTED"; |
| case CS_RESTRICTED_NORMAL: |
| return "CS_RESTRICTED_NORMAL"; |
| case CS_RESTRICTED_EMERGENCY: |
| return "CS_RESTRICTED_EMERGENCY"; |
| case UNOBTAINABLE_NUMBER: |
| return "UNOBTAINABLE_NUMBER"; |
| case CDMA_LOCKED_UNTIL_POWER_CYCLE: |
| return "CDMA_LOCKED_UNTIL_POWER_CYCLE"; |
| case CDMA_DROP: |
| return "CDMA_DROP"; |
| case CDMA_INTERCEPT: |
| return "CDMA_INTERCEPT"; |
| case CDMA_REORDER: |
| return "CDMA_REORDER"; |
| case CDMA_SO_REJECT: |
| return "CDMA_SO_REJECT"; |
| case CDMA_RETRY_ORDER: |
| return "CDMA_RETRY_ORDER"; |
| case CDMA_ACCESS_FAILURE: |
| return "CDMA_ACCESS_FAILURE"; |
| case CDMA_PREEMPTED: |
| return "CDMA_PREEMPTED"; |
| case CDMA_NOT_EMERGENCY: |
| return "CDMA_NOT_EMERGENCY"; |
| case CDMA_ACCESS_BLOCKED: |
| return "CDMA_ACCESS_BLOCKED"; |
| case ERROR_UNSPECIFIED: |
| return "ERROR_UNSPECIFIED"; |
| default: |
| return "INVALID"; |
| } |
| } |
| } |