Home | History | Annotate | Download | only in telephony
      1 /*
      2  * Copyright (C) 2014 The Android Open Source Project
      3  *
      4  * Licensed under the Apache License, Version 2.0 (the "License");
      5  * you may not use this file except in compliance with the License.
      6  * You may obtain a copy of the License at
      7  *
      8  *      http://www.apache.org/licenses/LICENSE-2.0
      9  *
     10  * Unless required by applicable law or agreed to in writing, software
     11  * distributed under the License is distributed on an "AS IS" BASIS,
     12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13  * See the License for the specific language governing permissions and
     14  * limitations under the License.
     15  */
     16 
     17 package android.telephony;
     18 
     19 /**
     20  * Contains precise disconnect call causes generated by the
     21  * framework and the RIL.
     22  *
     23  * @hide
     24  */
     25 public class PreciseDisconnectCause {
     26 
     27     /** The disconnect cause is not valid (Not received a disconnect cause)*/
     28     public static final int NOT_VALID                      = -1;
     29     /** No disconnect cause provided. Generally a local disconnect or an incoming missed call */
     30     public static final int NO_DISCONNECT_CAUSE_AVAILABLE  = 0;
     31     /**
     32      * The destination cannot be reached because the number, although valid,
     33      * is not currently assigned
     34      */
     35     public static final int UNOBTAINABLE_NUMBER            = 1;
     36     /** One of the users involved in the call has requested that the call is cleared */
     37     public static final int NORMAL                         = 16;
     38     /** The called user is unable to accept another call */
     39     public static final int BUSY                           = 17;
     40     /** The called number is no longer assigned */
     41     public static final int NUMBER_CHANGED                 = 22;
     42     /** Provided in response to a STATUS ENQUIRY message */
     43     public static final int STATUS_ENQUIRY                 = 30;
     44     /** Reports a normal disconnect only when no other normal cause applies */
     45     public static final int NORMAL_UNSPECIFIED             = 31;
     46     /** There is no channel presently available to handle the call */
     47     public static final int NO_CIRCUIT_AVAIL               = 34;
     48     /**
     49      * The network is not functioning correctly and the condition is not likely to last
     50      * a long period of time
     51      */
     52     public static final int TEMPORARY_FAILURE              = 41;
     53     /** The switching equipment is experiencing a period of high traffic */
     54     public static final int SWITCHING_CONGESTION           = 42;
     55     /** The channel cannot be provided */
     56     public static final int CHANNEL_NOT_AVAIL              = 44;
     57     /** The requested quality of service (ITU-T X.213) cannot be provided */
     58     public static final int QOS_NOT_AVAIL                  = 49;
     59     /** The requested bearer capability is not available at this time */
     60     public static final int BEARER_NOT_AVAIL               = 58;
     61     /** The call clearing is due to ACM being greater than or equal to ACMmax */
     62     public static final int ACM_LIMIT_EXCEEDED             = 68;
     63     /** The call is restricted */
     64     public static final int CALL_BARRED                    = 240;
     65     /** The call is blocked by the Fixed Dialing Number list */
     66     public static final int FDN_BLOCKED                    = 241;
     67     /** The given IMSI is not known at the VLR */
     68     /** TS 24.008 cause 4 */
     69     public static final int IMSI_UNKNOWN_IN_VLR            = 242;
     70     /**
     71      * The network does not accept emergency call establishment using an IMEI or not accept attach
     72      * procedure for emergency services using an IMEI
     73      */
     74     public static final int IMEI_NOT_ACCEPTED              = 243;
     75     /** MS is locked until next power cycle */
     76     public static final int CDMA_LOCKED_UNTIL_POWER_CYCLE  = 1000;
     77     /** Drop call*/
     78     public static final int CDMA_DROP                      = 1001;
     79     /** INTERCEPT order received, MS state idle entered */
     80     public static final int CDMA_INTERCEPT                 = 1002;
     81     /** MS has been redirected, call is cancelled */
     82     public static final int CDMA_REORDER                   = 1003;
     83     /** Service option rejection */
     84     public static final int CDMA_SO_REJECT                 = 1004;
     85     /** Requested service is rejected, retry delay is set */
     86     public static final int CDMA_RETRY_ORDER               = 1005;
     87     /** Unable to obtain access to the CDMA system */
     88     public static final int CDMA_ACCESS_FAILURE            = 1006;
     89     /** Not a preempted call */
     90     public static final int CDMA_PREEMPTED                 = 1007;
     91     /** Not an emergency call */
     92     public static final int CDMA_NOT_EMERGENCY             = 1008;
     93     /** Access Blocked by CDMA network */
     94     public static final int CDMA_ACCESS_BLOCKED            = 1009;
     95     /** Disconnected due to unspecified reasons */
     96     public static final int ERROR_UNSPECIFIED              = 0xffff;
     97 
     98     /** Private constructor to avoid class instantiation. */
     99     private PreciseDisconnectCause() {
    100         // Do nothing.
    101     }
    102 }
    103