1/* 2 * Copyright (C) 2018 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 17syntax = "proto2"; 18package android.telephony; 19 20option java_outer_classname = "TelephonyProtoEnums"; 21option java_multiple_files = true; 22 23enum CallBearerEnum { 24 /** Call bearer is unknown or invalid */ 25 CALL_BEARER_UNKNOWN = 0; 26 27 /** Call bearer is legacy CS */ 28 CALL_BEARER_CS = 1; 29 30 /** Call bearer is IMS */ 31 CALL_BEARER_IMS = 2; 32} 33 34enum CallDirectionEnum { 35 /** Call direction: unknown or invalid */ 36 CALL_DIRECTION_UNKNOWN = 0; 37 38 /** Call direction: mobile originated (outgoing for this device) */ 39 CALL_DIRECTION_MO = 1; 40 41 /** Call direction: mobile terminated (incoming for this device) */ 42 CALL_DIRECTION_MT = 2; 43} 44 45// Call setup duration buckets. 46// See com.android.internal.telephony.metrics.VoiceCallSessionStats for definition. 47enum CallSetupDurationEnum { 48 option deprecated = true; 49 CALL_SETUP_DURATION_UNKNOWN = 0; 50 CALL_SETUP_DURATION_EXTREMELY_FAST = 1; 51 CALL_SETUP_DURATION_ULTRA_FAST = 2; 52 CALL_SETUP_DURATION_VERY_FAST = 3; 53 CALL_SETUP_DURATION_FAST = 4; 54 CALL_SETUP_DURATION_NORMAL = 5; 55 CALL_SETUP_DURATION_SLOW = 6; 56 CALL_SETUP_DURATION_VERY_SLOW = 7; 57 CALL_SETUP_DURATION_ULTRA_SLOW = 8; 58 CALL_SETUP_DURATION_EXTREMELY_SLOW = 9; 59} 60 61// Data conn. power states, primarily used by android/telephony/DataConnectionRealTimeInfo.java. 62enum DataConnectionPowerStateEnum { 63 DATA_CONNECTION_POWER_STATE_LOW = 1; 64 DATA_CONNECTION_POWER_STATE_MEDIUM = 2; 65 DATA_CONNECTION_POWER_STATE_HIGH = 3; 66 DATA_CONNECTION_POWER_STATE_UNKNOWN = 2147483647; // Java Integer.MAX_VALUE; 67} 68 69// Network type enums, primarily used by android/telephony/TelephonyManager.java. 70// Do not add negative types. 71enum NetworkTypeEnum { 72 NETWORK_TYPE_UNKNOWN = 0; 73 NETWORK_TYPE_GPRS = 1; 74 NETWORK_TYPE_EDGE = 2; 75 NETWORK_TYPE_UMTS = 3; 76 NETWORK_TYPE_CDMA = 4; 77 NETWORK_TYPE_EVDO_0 = 5; 78 NETWORK_TYPE_EVDO_A = 6; 79 NETWORK_TYPE_1XRTT = 7; 80 NETWORK_TYPE_HSDPA = 8; 81 NETWORK_TYPE_HSUPA = 9; 82 NETWORK_TYPE_HSPA = 10; 83 NETWORK_TYPE_IDEN = 11; 84 NETWORK_TYPE_EVDO_B = 12; 85 NETWORK_TYPE_LTE = 13; 86 NETWORK_TYPE_EHRPD = 14; 87 NETWORK_TYPE_HSPAP = 15; 88 NETWORK_TYPE_GSM = 16; 89 NETWORK_TYPE_TD_SCDMA = 17; 90 NETWORK_TYPE_IWLAN = 18; 91 NETWORK_TYPE_LTE_CA = 19; 92 NETWORK_TYPE_NR = 20; 93} 94 95// Roaming type enums, see android.telephony.ServiceState.RoamingType for definitions. 96enum RoamingTypeEnum { 97 ROAMING_TYPE_NOT_ROAMING = 0; 98 ROAMING_TYPE_ROAMING = 1; 99 ROAMING_TYPE_ROAMING_DOMESTIC = 2; 100 ROAMING_TYPE_ROAMING_INTERNATIONAL = 3; 101} 102 103// Signal strength levels, as defined in android/telephony/SignalStrength.java. 104enum SignalStrengthEnum { 105 SIGNAL_STRENGTH_NONE_OR_UNKNOWN = 0; 106 SIGNAL_STRENGTH_POOR = 1; 107 SIGNAL_STRENGTH_MODERATE = 2; 108 SIGNAL_STRENGTH_GOOD = 3; 109 SIGNAL_STRENGTH_GREAT = 4; 110} 111 112enum ServiceStateEnum { 113 /** 114 * Normal operation condition, the phone is registered 115 * with an operator either in home network or in roaming. 116 */ 117 SERVICE_STATE_IN_SERVICE = 0; 118 119 /** 120 * Phone is not registered with any operator, the phone 121 * can be currently searching a new operator to register to, or not 122 * searching to registration at all, or registration is denied, or radio 123 * signal is not available. 124 */ 125 SERVICE_STATE_OUT_OF_SERVICE = 1; 126 127 /** 128 * The phone is registered and locked. Only emergency numbers are allowed. {@more} 129 */ 130 SERVICE_STATE_EMERGENCY_ONLY = 2; 131 132 /** 133 * Radio of telephony is explicitly powered off. 134 */ 135 SERVICE_STATE_POWER_OFF = 3; 136} 137 138enum NetworkRegistrationState { 139 /** 140 * Not registered. The device is not currently searching a new operator to register. 141 */ 142 REGISTRATION_STATE_NOT_REGISTERED_OR_SEARCHING = 0; 143 144 /** 145 * Registered on home network. 146 */ 147 REGISTRATION_STATE_HOME = 1; 148 149 /** 150 * Not registered. The device is currently searching a new operator to register. 151 */ 152 REGISTRATION_STATE_NOT_REGISTERED_SEARCHING = 2; 153 154 /** 155 * Registration denied. 156 */ 157 REGISTRATION_STATE_DENIED = 3; 158 159 /** 160 * Registration state is unknown. 161 */ 162 REGISTRATION_STATE_UNKNOWN = 4; 163 164 /** 165 * Registered on roaming network. 166 */ 167 REGISTRATION_STATE_ROAMING = 5; 168} 169 170enum SimStateEnum { 171 SIM_STATE_UNKNOWN = 0; 172 /** SIM card state: no SIM card is available in the device */ 173 SIM_STATE_ABSENT = 1; 174 /** SIM card state: Locked: requires the user's SIM PIN to unlock */ 175 SIM_STATE_PIN_REQUIRED = 2; 176 /** SIM card state: Locked: requires the user's SIM PUK to unlock */ 177 SIM_STATE_PUK_REQUIRED = 3; 178 /** SIM card state: Locked: requires a network PIN to unlock */ 179 SIM_STATE_NETWORK_LOCKED = 4; 180 /** SIM card state: Ready */ 181 SIM_STATE_READY = 5; 182 /** SIM card state: SIM Card is NOT READY */ 183 SIM_STATE_NOT_READY = 6; 184 /** SIM card state: SIM Card Error, permanently disabled */ 185 SIM_STATE_PERM_DISABLED = 7; 186 /** SIM card state: SIM Card Error, present but faulty */ 187 SIM_STATE_CARD_IO_ERROR = 8; 188 /** SIM card state: SIM Card restricted, present but not usable due to 189 * carrier restrictions. 190 */ 191 SIM_STATE_CARD_RESTRICTED = 9; 192 /** 193 * SIM card state: Loaded: SIM card applications have been loaded 194 * @hide 195 */ 196 SIM_STATE_LOADED = 10; 197 /** 198 * SIM card state: SIM Card is present 199 * @hide 200 */ 201 SIM_STATE_PRESENT = 11; 202} 203 204// Format of SMS message 205enum SmsFormatEnum { 206 /** Unknown format */ 207 SMS_FORMAT_UNKNOWN = 0; 208 /** Format compliant with 3GPP TS 23.040 */ 209 SMS_FORMAT_3GPP = 1; 210 /** Format compliant with 3GPP2 TS C.S0015-B */ 211 SMS_FORMAT_3GPP2 = 2; 212} 213 214// Technology used to carry an SMS message 215enum SmsTechEnum { 216 /** 217 * Unknown SMS technology used to carry the SMS. 218 * This value is also used for injected SMS. 219 */ 220 SMS_TECH_UNKNOWN = 0; 221 /** The SMS was carried over CS bearer in 3GPP network */ 222 SMS_TECH_CS_3GPP = 1; 223 /** The SMS was carried over CS bearer in 3GPP2 network */ 224 SMS_TECH_CS_3GPP2 = 2; 225 /** The SMS was carried over IMS */ 226 SMS_TECH_IMS = 3; 227} 228 229// Types of SMS message 230enum SmsTypeEnum { 231 /** Normal type. */ 232 SMS_TYPE_NORMAL = 0; 233 /** SMS-PP (point-to-point). */ 234 SMS_TYPE_SMS_PP = 1; 235 /** Voicemail indication. */ 236 SMS_TYPE_VOICEMAIL_INDICATION = 2; 237 /** Type 0 message (3GPP TS 23.040 9.2.3.9). */ 238 SMS_TYPE_ZERO = 3; 239 /** WAP-PUSH message. */ 240 SMS_TYPE_WAP_PUSH = 4; 241} 242 243// Incoming SMS errors 244enum SmsIncomingErrorEnum { 245 SMS_SUCCESS = 0; 246 SMS_ERROR_GENERIC = 1; 247 SMS_ERROR_NO_MEMORY = 2; 248 SMS_ERROR_NOT_SUPPORTED = 3; 249} 250 251// Outgoing SMS results 252enum SmsSendResultEnum { 253 // Unknown error 254 SMS_SEND_RESULT_UNKNOWN = 0; 255 // Success 256 SMS_SEND_RESULT_SUCCESS = 1; 257 // Permanent error 258 SMS_SEND_RESULT_ERROR = 2; 259 // Temporary error, retry 260 SMS_SEND_RESULT_ERROR_RETRY = 3; 261 // Error over IMS, retry on CS 262 SMS_SEND_RESULT_ERROR_FALLBACK = 4; 263} 264 265// Data profile of the data call. From 266// frameworks/base/telephony/java/com/android/internal/telephony/RILConstants.java 267enum DataProfileEnum { 268 DATA_PROFILE_DEFAULT = 0; 269 DATA_PROFILE_TETHERED = 1; 270 DATA_PROFILE_IMS = 2; 271 DATA_PROFILE_FOTA = 3; 272 DATA_PROFILE_CBS = 4; 273 DATA_PROFILE_OEM_BASE = 1000; 274 DATA_PROFILE_INVALID = -1; 275} 276 277// Reason of data call deactivation. From 278// frameworks/opt/telephony/src/java/com/android/internal/telephony/data/ 279// DataNetwork.java#TearDownReason 280enum DataDeactivateReasonEnum { 281 // pre-U legacy enum 282 DEACTIVATE_REASON_UNKNOWN = 0; 283 DEACTIVATE_REASON_NORMAL = 1; 284 DEACTIVATE_REASON_RADIO_OFF = 2; 285 DEACTIVATE_REASON_HANDOVER = 3; 286 // Starting in U 287 DEACTIVATE_REASON_NONE = 4; 288 DEACTIVATE_REASON_CONNECTIVITY_SERVICE_UNWANTED = 5; 289 DEACTIVATE_REASON_SIM_REMOVAL = 6; 290 DEACTIVATE_REASON_AIRPLANE_MODE_ON = 7; 291 DEACTIVATE_REASON_DATA_DISABLED = 8; 292 DEACTIVATE_REASON_NO_LIVE_REQUEST = 9; 293 DEACTIVATE_REASON_RAT_NOT_ALLOWED = 10; 294 DEACTIVATE_REASON_ROAMING_DISABLED = 11; 295 DEACTIVATE_REASON_CONCURRENT_VOICE_DATA_NOT_ALLOWED = 12; 296 DEACTIVATE_REASON_DATA_SERVICE_NOT_READY = 14; 297 DEACTIVATE_REASON_POWER_OFF_BY_CARRIER = 15; 298 DEACTIVATE_REASON_DATA_STALL = 16; 299 DEACTIVATE_REASON_HANDOVER_FAILED = 17; 300 DEACTIVATE_REASON_HANDOVER_NOT_ALLOWED = 18; 301 DEACTIVATE_REASON_VCN_REQUESTED = 19; 302 DEACTIVATE_REASON_VOPS_NOT_SUPPORTED = 20; 303 DEACTIVATE_REASON_DEFAULT_DATA_UNSELECTED = 21; 304 DEACTIVATE_REASON_NOT_IN_SERVICE = 22; 305 DEACTIVATE_REASON_DATA_CONFIG_NOT_READY = 23; 306 DEACTIVATE_REASON_PENDING_TEAR_DOWN_ALL = 24; 307 DEACTIVATE_REASON_NO_SUITABLE_DATA_PROFILE = 25; 308 DEACTIVATE_REASON_CDMA_EMERGENCY_CALLBACK_MODE = 26; 309 DEACTIVATE_REASON_RETRY_SCHEDULED = 27; 310 DEACTIVATE_REASON_DATA_THROTTLED = 28; 311 DEACTIVATE_REASON_DATA_PROFILE_INVALID = 29; 312 DEACTIVATE_REASON_DATA_PROFILE_NOT_PREFERRED = 30; 313 DEACTIVATE_REASON_NOT_ALLOWED_BY_POLICY = 31; 314 DEACTIVATE_REASON_ILLEGAL_STATE = 32; 315 DEACTIVATE_REASON_ONLY_ALLOWED_SINGLE_NETWORK = 33; 316 DEACTIVATE_REASON_PREFERRED_DATA_SWITCHED = 34; 317} 318 319// IP type of the data call 320// see frameworks/base/telephony/java/android/telephony/data/ApnSetting.java#ProtocolType 321enum ApnProtocolEnum { 322 APN_PROTOCOL_IPV4 = 0; 323 APN_PROTOCOL_IPV6 = 1; 324 APN_PROTOCOL_IPV4V6 = 2; 325 APN_PROTOCOL_PPP = 3; 326} 327 328// Action taken to recover a data call that is stalled. From 329// frameworks/opt/telephony/src/java/com/android/internal/telephony/data/ 330// DataStallRecoveryManager.java#RecoveryAction 331enum DataStallRecoveryActionEnum { 332 /** 333 * DataStallRecoveryManager queries RIL for link properties (IP addresses, DNS server addresses 334 * etc). This will help in cases where the data stall occurred because of a link property 335 * changed but not notified to connectivity service. 336 */ 337 RECOVERY_ACTION_GET_DATA_CALL_LIST = 0; 338 /** 339 * DataStallRecoveryManager will request DataNetworkController to reestablish internet and sets 340 * up the data call back using SETUP_DATA_CALL. It will help to reestablish the channel between 341 * RIL and modem. 342 */ 343 RECOVERY_ACTION_CLEANUP = 1; 344 /** 345 * DcTracker triggers RIL to detach for GPRS and re-attach(re-register the network). 346 * RECOVERY_ACTION_REREGISTER is no longer used in Android T and later. 347 */ 348 RECOVERY_ACTION_REREGISTER = 2; 349 /** 350 * DataStallRecoveryManager will request ServiceStateTracker to power off and on, equivalent 351 * to airplane mode toggle on and off. 352 */ 353 RECOVERY_ACTION_RADIO_RESTART = 3; 354 /** 355 * DataStallRecoveryManager will request to reboot modem. It will recover if there is a problem 356 * in modem side. RECOVERY_ACTION_RESET_MODEM is introduced in Android T. 357 */ 358 RECOVERY_ACTION_RESET_MODEM = 4; 359 } 360 361// The data stall recovered reason. 362// frameworks/opt/telephony/src/java/com/android/internal/telephony/data/ 363// DataStallRecoveryManager.java#RecoveredReason 364enum DataStallRecoveredReason { 365 /* The data stall symptom not recover yet. */ 366 RECOVERED_REASON_NONE = 0; 367 /* The data stall symptom recovered by DataStallRecoveryManager. */ 368 RECOVERED_REASON_DSRM = 1; 369 /* The data stall symptom recovered by modem. */ 370 RECOVERED_REASON_MODEM = 2; 371 /* The data stall symptom recovered by user. */ 372 RECOVERED_REASON_USER = 3; 373} 374 375// Codec quality 376enum CodecQuality { 377 /** Codec quality: unknown */ 378 CODEC_QUALITY_UNKNOWN = 0; 379 380 /** Codec quality: narrowband */ 381 CODEC_QUALITY_NARROWBAND = 1; 382 383 /** Codec quality: wideband */ 384 CODEC_QUALITY_WIDEBAND = 2; 385 386 /** Codec quality: super-wideband */ 387 CODEC_QUALITY_SUPER_WIDEBAND = 3; 388 389 /** Codec quality: fullband */ 390 CODEC_QUALITY_FULLBAND = 4; 391} 392 393 394// Result from restore of sim-specific settings. 395enum SimSpecfifcSettingsRestoreResult { 396 SIM_RESTORE_RESULT_UNKNOWN = 0; 397 // SIM-specific settings were successfully restored. 398 SIM_RESTORE_RESULT_SUCCESS = 1; 399 // SIM-specific settings didn't restore because no matching SIM was 400 // found in backed up data. 401 SIM_RESTORE_RESULT_NONE_MATCH = 2; 402 // No SIM-specific settings were found in backup file 403 SIM_RESTORE_RESULT_ZERO_SIM_IN_BACKUP = 3; 404} 405 406// Case of sim-specific settings restore. 407enum SimSpecificSettingsRestoreCase { 408 SIM_RESTORE_CASE_UNDEFINED_USE_CASE = 0; 409 // Restore was done during SuW. 410 SIM_RESTORE_CASE_SUW = 1; 411 // Restore was done once sim was inserted. 412 SIM_RESTORE_CASE_SIM_INSERTED = 2; 413} 414 415// Matching criteria for sim-specific settings restore. 416enum SimSpecificSettingsRestoreMatchingCriteria { 417 SIM_RESTORE_MATCHING_CRITERIA_UNSET= 0; 418 // No match was found. 419 SIM_RESTORE_MATCHING_CRITERIA_NONE = 1; 420 // Restore was done by matching two sims by ICCID. 421 SIM_RESTORE_MATCHING_CRITERIA_ICCID = 2; 422 // Restore was done by matching carrierId and phoneNumber. 423 SIM_RESTORE_MATCHING_CRITERIA_CARRIER_ID_AND_PHONE_NUMBER = 3; 424 // Restore was done by matching carrierId only. 425 SIM_RESTORE_MATCHING_CRITERIA_CARRIER_ID_ONLY = 4; 426} 427 428// Describe IMS feature tags 429// See frameworks/opt/net/ims/src/java/com/android/ims/rcs/uce/util/FeatureTags.java 430enum ImsFeatureTag { 431 IMS_FEATURE_TAG_UNSPECIFIED = 0; 432 IMS_FEATURE_TAG_CUSTOM = 1; 433 IMS_FEATURE_TAG_STANDALONE_MSG = 2; 434 IMS_FEATURE_TAG_CHAT_IM = 3; 435 IMS_FEATURE_TAG_CHAT_SESSION = 4; 436 IMS_FEATURE_TAG_FILE_TRANSFER = 5; 437 IMS_FEATURE_TAG_FILE_TRANSFER_VIA_SMS = 6; 438 IMS_FEATURE_TAG_CALL_COMPOSER_ENRICHED_CALLING = 7; 439 IMS_FEATURE_TAG_CALL_COMPOSER_VIA_TELEPHONY = 8; 440 IMS_FEATURE_TAG_POST_CALL = 9; 441 IMS_FEATURE_TAG_SHARED_MAP = 10; 442 IMS_FEATURE_TAG_SHARED_SKETCH = 11; 443 IMS_FEATURE_TAG_GEO_PUSH = 12; 444 IMS_FEATURE_TAG_GEO_PUSH_VIA_SMS = 13; 445 IMS_FEATURE_TAG_CHATBOT_COMMUNICATION_USING_SESSION = 14; 446 IMS_FEATURE_TAG_CHATBOT_COMMUNICATION_USING_STANDALONE_MSG = 15; 447 IMS_FEATURE_TAG_CHATBOT_VERSION_SUPPORTED = 16; 448 IMS_FEATURE_TAG_CHATBOT_ROLE = 17; 449 IMS_FEATURE_TAG_MMTEL = 18; 450 IMS_FEATURE_TAG_VIDEO = 19; 451 IMS_FEATURE_TAG_PRESENCE = 20; 452} 453 454// Define the SIP request method types used in IMS. 455enum SipRequestMethodType { 456 SIP_REQUEST_UNSPECIFIED = 0; 457 // A SIP request that is not defined in the specification has been sent. 458 SIP_REQUEST_CUSTOM = 1; 459 SIP_REQUEST_INVITE = 2; 460 SIP_REQUEST_ACK = 3; 461 SIP_REQUEST_OPTIONS = 4; 462 SIP_REQUEST_BYE = 5; 463 SIP_REQUEST_CANCEL = 6; 464 SIP_REQUEST_REGISTER = 7; 465 SIP_REQUEST_PRACK = 8; 466 SIP_REQUEST_SUBSCRIBE = 9; 467 SIP_REQUEST_NOTIFY = 10; 468 SIP_REQUEST_PUBLISH = 11; 469 SIP_REQUEST_INFO = 12; 470 SIP_REQUEST_REFER = 13; 471 SIP_REQUEST_MESSAGE = 14; 472 SIP_REQUEST_UPDATE = 15; 473} 474 475// Buckets of call duration in a voice call. 476enum CallDuration { 477 CALL_DURATION_UNKNOWN = 0; // Unknown duration 478 CALL_DURATION_LESS_THAN_ONE_MINUTE = 1; // Call lasted less than 1 minute 479 CALL_DURATION_LESS_THAN_FIVE_MINUTES = 2; // Call lasted between 1 and 5 minutes 480 CALL_DURATION_LESS_THAN_TEN_MINUTES = 3; // Call lasted between 5 and 10 minutes 481 CALL_DURATION_LESS_THAN_THIRTY_MINUTES = 4; // Call lasted between 10 and 30 minutes 482 CALL_DURATION_LESS_THAN_ONE_HOUR = 5; // Call lasted between 30 minutes and 1 hour 483 CALL_DURATION_MORE_THAN_ONE_HOUR = 6; // Call lasted more than 1 hour 484} 485 486// Short code SMS categories 487// See frameworks/base/telephony/java/android/telephony/SmsManager.java 488enum ShortCodeSmsEnum { 489 SMS_CATEGORY_NOT_SHORT_CODE = 0; 490 SMS_CATEGORY_FREE_SHORT_CODE = 1; 491 SMS_CATEGORY_STANDARD_SHORT_CODE = 2; 492 SMS_CATEGORY_POSSIBLE_PREMIUM_SHORT_CODE = 3; 493 SMS_CATEGORY_PREMIUM_SHORT_CODE = 4; 494} 495 496// Outgoing SMS send error codes, which are mapped from SmsManager#Result 497// See frameworks/base/telephony/java/android/telephony/SmsManager.java 498enum SmsSendErrorEnum { 499 SMS_SEND_ERROR_NONE = 0; 500 SMS_SEND_ERROR_GENERIC_FAILURE = 1; 501 SMS_SEND_ERROR_RADIO_OFF = 2; 502 SMS_SEND_ERROR_NULL_PDU = 3; 503 SMS_SEND_ERROR_NO_SERVICE = 4; 504 SMS_SEND_ERROR_LIMIT_EXCEEDED = 5; 505 SMS_SEND_ERROR_FDN_CHECK_FAILURE = 6; 506 SMS_SEND_ERROR_SHORT_CODE_NOT_ALLOWED = 7; 507 SMS_SEND_ERROR_SHORT_CODE_NEVER_ALLOWED = 8; 508 SMS_SEND_ERROR_RADIO_NOT_AVAILABLE = 9; 509 SMS_SEND_ERROR_NETWORK_REJECT = 10; 510 SMS_SEND_ERROR_INVALID_ARGUMENTS = 11; 511 SMS_SEND_ERROR_INVALID_STATE = 12; 512 SMS_SEND_ERROR_NO_MEMORY = 13; 513 SMS_SEND_ERROR_INVALID_SMS_FORMAT = 14; 514 SMS_SEND_ERROR_SYSTEM_ERROR = 15; 515 SMS_SEND_ERROR_MODEM_ERROR = 16; 516 SMS_SEND_ERROR_NETWORK_ERROR = 17; 517 SMS_SEND_ERROR_INVALID_SMSC_ADDRESS = 19; 518 SMS_SEND_ERROR_OPERATION_NOT_ALLOWED = 20; 519 SMS_SEND_ERROR_INTERNAL_ERROR = 21; 520 SMS_SEND_ERROR_NO_RESOURCES = 22; 521 SMS_SEND_ERROR_CANCELLED = 23; 522 SMS_SEND_ERROR_REQUEST_NOT_SUPPORTED = 24; 523 SMS_SEND_ERROR_NO_BLUETOOTH_SERVICE = 25; 524 SMS_SEND_ERROR_INVALID_BLUETOOTH_ADDRESS = 26; 525 SMS_SEND_ERROR_BLUETOOTH_DISCONNECTED = 27; 526 SMS_SEND_ERROR_UNEXPECTED_EVENT_STOP_SENDING = 28; 527 SMS_SEND_ERROR_SMS_BLOCKED_DURING_EMERGENCY = 29; 528 SMS_SEND_ERROR_SMS_SEND_RETRY_FAILED = 30; 529 SMS_SEND_ERROR_REMOTE_EXCEPTION = 31; 530 SMS_SEND_ERROR_NO_DEFAULT_SMS_APP = 32; 531 SMS_SEND_ERROR_USER_NOT_ALLOWED = 33; 532 SMS_SEND_ERROR_RIL_RADIO_NOT_AVAILABLE = 100; 533 SMS_SEND_ERROR_RIL_SMS_SEND_FAIL_RETRY = 101; 534 SMS_SEND_ERROR_RIL_NETWORK_REJECT = 102; 535 SMS_SEND_ERROR_RIL_INVALID_STATE = 103; 536 SMS_SEND_ERROR_RIL_INVALID_ARGUMENTS = 104; 537 SMS_SEND_ERROR_RIL_NO_MEMORY = 105; 538 SMS_SEND_ERROR_RIL_REQUEST_RATE_LIMITED = 106; 539 SMS_SEND_ERROR_RIL_INVALID_SMS_FORMAT = 107; 540 SMS_SEND_ERROR_RIL_SYSTEM_ERR = 108; 541 SMS_SEND_ERROR_RIL_ENCODING_ERR = 109; 542 SMS_SEND_ERROR_RIL_INVALID_SMSC_ADDRESS = 110; 543 SMS_SEND_ERROR_RIL_MODEM_ERR = 111; 544 SMS_SEND_ERROR_RIL_NETWORK_ERR = 112; 545 SMS_SEND_ERROR_RIL_INTERNAL_ERR = 113; 546 SMS_SEND_ERROR_RIL_REQUEST_NOT_SUPPORTED = 114; 547 SMS_SEND_ERROR_RIL_INVALID_MODEM_STATE = 115; 548 SMS_SEND_ERROR_RIL_NETWORK_NOT_READY = 116; 549 SMS_SEND_ERROR_RIL_OPERATION_NOT_ALLOWED = 117; 550 SMS_SEND_ERROR_RIL_NO_RESOURCES = 118; 551 SMS_SEND_ERROR_RIL_CANCELLED = 119; 552 SMS_SEND_ERROR_RIL_SIM_ABSENT = 120; 553 SMS_SEND_ERROR_RIL_SIMULTANEOUS_SMS_AND_CALL_NOT_ALLOWED = 121; 554 SMS_SEND_ERROR_RIL_ACCESS_BARRED = 122; 555 SMS_SEND_ERROR_RIL_BLOCKED_DUE_TO_CALL = 123; 556 SMS_SEND_ERROR_RIL_GENERIC_ERROR = 124; 557 SMS_SEND_ERROR_RIL_INVALID_RESPONSE = 125; 558 SMS_SEND_ERROR_RIL_SIM_PIN2 = 126; 559 SMS_SEND_ERROR_RIL_SIM_PUK2 = 127; 560 SMS_SEND_ERROR_RIL_SUBSCRIPTION_NOT_AVAILABLE = 128; 561 SMS_SEND_ERROR_RIL_SIM_ERR = 129; 562 SMS_SEND_ERROR_RIL_INVALID_SIM_STATE = 130; 563 SMS_SEND_ERROR_RIL_NO_SMS_TO_ACK = 131; 564 SMS_SEND_ERROR_RIL_SIM_BUSY = 132; 565 SMS_SEND_ERROR_RIL_SIM_FULL = 133; 566 SMS_SEND_ERROR_RIL_NO_SUBSCRIPTION = 134; 567 SMS_SEND_ERROR_RIL_NO_NETWORK_FOUND = 135; 568 SMS_SEND_ERROR_RIL_DEVICE_IN_USE = 136; 569 SMS_SEND_ERROR_RIL_ABORTED = 137; 570} 571 572/** 573 * enum for service category of emergency numbers 574 */ 575enum ServiceCategory { 576 // Emergency Service Category UNSPECIFIED 577 EMERGENCY_SERVICE_CATEGORY_UNSPECIFIED = 0; 578 579 // Emergency Service Category for Police 580 EMERGENCY_SERVICE_CATEGORY_POLICE = 1; 581 582 // Emergency Service Category for Ambulance 583 EMERGENCY_SERVICE_CATEGORY_AMBULANCE = 2; 584 585 // Emergency Service Category for Fire Brigade 586 EMERGENCY_SERVICE_CATEGORY_FIRE_BRIGADE = 3; 587 588 // Emergency Service Category for Marine Guard 589 EMERGENCY_SERVICE_CATEGORY_MARINE_GUARD = 4; 590 591 // Emergency Service Category for Mountain Rescue 592 EMERGENCY_SERVICE_CATEGORY_MOUNTAIN_RESCUE = 5; 593 594 // Emergency Service Category for Manually Initiated eCall 595 EMERGENCY_SERVICE_CATEGORY_MIEC = 6; 596 597 // Emergency Service Category for Automatically Initiated eCall 598 EMERGENCY_SERVICE_CATEGORY_AIEC = 7; 599} 600 601/** 602 * enum for source of emergency numbers 603 */ 604enum Source { 605 // emergency number is from the network signalling. 606 EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING = 0; 607 608 // emergency number is from the SIM 609 EMERGENCY_NUMBER_SOURCE_SIM = 1; 610 611 // emergency number is from the platform-maintained database 612 EMERGENCY_NUMBER_SOURCE_DATABASE = 2; 613 614 // emergency number is from the modem config 615 EMERGENCY_NUMBER_SOURCE_MODEM_CONFIG = 3; 616 617 // emergency number is available as default 618 EMERGENCY_NUMBER_SOURCE_DEFAULT = 4; 619} 620 621/** 622 * enum for call route of emergency numbers 623 */ 624enum CallRoute { 625 626 /** 627 * Indicated the framework does not know whether an emergency call should be placed using 628 * emergency or normal call routing. This means the underlying radio or IMS implementation is 629 * free to determine for itself how to route the call. 630 */ 631 EMERGENCY_CALL_ROUTE_UNKNOWN = 0; 632 633 // Emergency call to handle through emergency routing. 634 EMERGENCY_CALL_ROUTE_EMERGENCY = 1; 635 636 // Emergency call to handle through normal routing 637 EMERGENCY_CALL_ROUTE_NORMAL = 2; 638} 639 640/** 641 * enum for device fold state 642 */ 643enum FoldState { 644 STATE_UNKNOWN = 0; 645 STATE_CLOSED = 1; 646 STATE_HALF_OPENED = 2; 647 STATE_OPENED = 3; 648 STATE_FLIPPED = 4; 649} 650