Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3f6b9c10 authored by Megha Patil's avatar Megha Patil
Browse files

Addition of TR1, TR2 Timer and SMS Retry Cause into CarrierConfig

- Addition of TR1, TR2 Timer and SMS Retry Cause
into CarrierConfigManager
Bug: b/230707485

Test: Manually Tested in Pixel devices
Change-Id: I3ecc02011f508f395b95d17a0026d401a1902d29
parent 6c7a9cf3
Loading
Loading
Loading
Loading
+30 −0
Original line number Diff line number Diff line
@@ -42523,9 +42523,16 @@ package android.telephony {
  public static final class CarrierConfigManager.ImsSms {
    field public static final String KEY_PREFIX = "imssms.";
    field public static final String KEY_SMS_CSFB_RETRY_ON_FAILURE_BOOL = "imssms.sms_csfb_retry_on_failure_bool";
    field public static final String KEY_SMS_MAX_RETRY_COUNT_INT = "imssms.sms_max_retry_count_int";
    field public static final String KEY_SMS_MAX_RETRY_COUNT_OVER_IMS_INT = "imssms.sms_max_retry_count_over_ims_int";
    field public static final String KEY_SMS_OVER_IMS_FORMAT_INT = "imssms.sms_over_ims_format_int";
    field public static final String KEY_SMS_OVER_IMS_SEND_RETRY_DELAY_MILLIS_INT = "imssms.sms_rover_ims_send_retry_delay_millis_int";
    field public static final String KEY_SMS_OVER_IMS_SUPPORTED_BOOL = "imssms.sms_over_ims_supported_bool";
    field public static final String KEY_SMS_OVER_IMS_SUPPORTED_RATS_INT_ARRAY = "imssms.sms_over_ims_supported_rats_int_array";
    field public static final String KEY_SMS_RP_CAUSE_VALUES_TO_FALLBACK_INT_ARRAY = "imssms.sms_rp_cause_values_to_fallback_int_array";
    field public static final String KEY_SMS_RP_CAUSE_VALUES_TO_RETRY_OVER_IMS_INT_ARRAY = "imssms.sms_rp_cause_values_to_retry_over_ims_int_array";
    field public static final String KEY_SMS_TR1_TIMER_MILLIS_INT = "imssms.sms_tr1_timer_millis_int";
    field public static final String KEY_SMS_TR2_TIMER_MILLIS_INT = "imssms.sms_tr2_timer_millis_int";
    field public static final int SMS_FORMAT_3GPP = 0; // 0x0
    field public static final int SMS_FORMAT_3GPP2 = 1; // 0x1
  }
@@ -44005,6 +44012,29 @@ package android.telephony {
    field public static final int RESULT_SMS_SEND_RETRY_FAILED = 30; // 0x1e
    field public static final int RESULT_SYSTEM_ERROR = 15; // 0xf
    field public static final int RESULT_UNEXPECTED_EVENT_STOP_SENDING = 28; // 0x1c
    field public static final int SMS_RP_CAUSE_CALL_BARRING = 10; // 0xa
    field public static final int SMS_RP_CAUSE_CONGESTION = 42; // 0x2a
    field public static final int SMS_RP_CAUSE_DESTINATION_OUT_OF_ORDER = 27; // 0x1b
    field public static final int SMS_RP_CAUSE_FACILITY_NOT_IMPLEMENTED = 69; // 0x45
    field public static final int SMS_RP_CAUSE_FACILITY_NOT_SUBSCRIBED = 50; // 0x32
    field public static final int SMS_RP_CAUSE_FACILITY_REJECTED = 29; // 0x1d
    field public static final int SMS_RP_CAUSE_INFORMATION_ELEMENT_NON_EXISTENT = 99; // 0x63
    field public static final int SMS_RP_CAUSE_INTERWORKING_UNSPECIFIED = 127; // 0x7f
    field public static final int SMS_RP_CAUSE_INVALID_MANDATORY_INFORMATION = 96; // 0x60
    field public static final int SMS_RP_CAUSE_INVALID_MESSAGE_REFERENCE_VALUE = 81; // 0x51
    field public static final int SMS_RP_CAUSE_MESSAGE_INCOMPATIBLE_WITH_PROTOCOL_STATE = 98; // 0x62
    field public static final int SMS_RP_CAUSE_MESSAGE_TYPE_NON_EXISTENT = 97; // 0x61
    field public static final int SMS_RP_CAUSE_NETWORK_OUT_OF_ORDER = 38; // 0x26
    field public static final int SMS_RP_CAUSE_OPERATOR_DETERMINED_BARRING = 8; // 0x8
    field public static final int SMS_RP_CAUSE_PROTOCOL_ERROR = 111; // 0x6f
    field public static final int SMS_RP_CAUSE_RESERVED = 11; // 0xb
    field public static final int SMS_RP_CAUSE_RESOURCES_UNAVAILABLE = 47; // 0x2f
    field public static final int SMS_RP_CAUSE_SEMANTICALLY_INCORRECT_MESSAGE = 95; // 0x5f
    field public static final int SMS_RP_CAUSE_SHORT_MESSAGE_TRANSFER_REJECTED = 21; // 0x15
    field public static final int SMS_RP_CAUSE_TEMPORARY_FAILURE = 41; // 0x29
    field public static final int SMS_RP_CAUSE_UNALLOCATED_NUMBER = 1; // 0x1
    field public static final int SMS_RP_CAUSE_UNIDENTIFIED_SUBSCRIBER = 28; // 0x1c
    field public static final int SMS_RP_CAUSE_UNKNOWN_SUBSCRIBER = 30; // 0x1e
    field public static final int STATUS_ON_ICC_FREE = 0; // 0x0
    field public static final int STATUS_ON_ICC_READ = 1; // 0x1
    field public static final int STATUS_ON_ICC_SENT = 5; // 0x5
+112 −0
Original line number Diff line number Diff line
@@ -6988,6 +6988,79 @@ public class CarrierConfigManager {
        public static final String KEY_SMS_OVER_IMS_SUPPORTED_RATS_INT_ARRAY =
                KEY_PREFIX + "sms_over_ims_supported_rats_int_array";

        /**
         * Maximum Retry Count for Failure, If the Retry Count exceeds this value,
         * it must display to User Interface as sending failed
         */
        public static final String KEY_SMS_MAX_RETRY_COUNT_INT =
                KEY_PREFIX + "sms_max_retry_count_int";

        /**
         * Maximum Retry Count for SMS over IMS on Failure, If the Retry Count exceeds this value,
         * and if the retry count is less than KEY_SMS_MAX_RETRY_COUNT_INT
         * sending SMS should fallback to CS
         */
        public static final String KEY_SMS_MAX_RETRY_COUNT_OVER_IMS_INT =
                KEY_PREFIX + "sms_max_retry_count_over_ims_int";

        /**
         * Delay Timer Value in milliseconds
         * Retry SMS over IMS after this Timer expires
         */
        public static final String KEY_SMS_OVER_IMS_SEND_RETRY_DELAY_MILLIS_INT =
                KEY_PREFIX + "sms_rover_ims_send_retry_delay_millis_int";

        /**
         * TR1 Timer Value in milliseconds,
         * Waits for RP-Ack from network for MO SMS.
         */
        public static final String KEY_SMS_TR1_TIMER_MILLIS_INT =
                KEY_PREFIX + "sms_tr1_timer_millis_int";

        /**
         * TR2 Timer Value in milliseconds,
         * Waits for RP-Ack from Transfer Layer for MT SMS.
         */
        public static final String KEY_SMS_TR2_TIMER_MILLIS_INT =
                KEY_PREFIX + "sms_tr2_timer_millis_int";

        /**
         * SMS RP-Cause Values for which SMS should be retried over IMS
         *
         * <p>Possible values are,
         * {@link SmsManager#SMS_RP_CAUSE_UNALLOCATED_NUMBER}
         * {@link SmsManager#SMS_RP_CAUSE_OPERATOR_DETERMINED_BARRING}
         * {@link SmsManager#SMS_RP_CAUSE_CALL_BARRING}
         * {@link SmsManager#SMS_RP_CAUSE_RESERVED}
         * {@link SmsManager#SMS_RP_CAUSE_SHORT_MESSAGE_TRANSFER_REJECTED}
         * {@link SmsManager#SMS_RP_CAUSE_DESTINATION_OUT_OF_ORDER}
         * {@link SmsManager#SMS_RP_CAUSE_UNIDENTIFIED_SUBSCRIBER}
         * {@link SmsManager#SMS_RP_CAUSE_FACILITY_REJECTED}
         * {@link SmsManager#SMS_RP_CAUSE_UNKNOWN_SUBSCRIBER}
         * {@link SmsManager#SMS_RP_CAUSE_NETWORK_OUT_OF_ORDER}
         * {@link SmsManager#SMS_RP_CAUSE_TEMPORARY_FAILURE}
         * {@link SmsManager#SMS_RP_CAUSE_CONGESTION}
         * {@link SmsManager#SMS_RP_CAUSE_RESOURCES_UNAVAILABLE}
         * {@link SmsManager#SMS_RP_CAUSE_FACILITY_NOT_SUBSCRIBED}
         * {@link SmsManager#SMS_RP_CAUSE_FACILITY_NOT_IMPLEMENTED}
         * {@link SmsManager#SMS_RP_CAUSE_INVALID_MESSAGE_REFERENCE_VALUE}
         * {@link SmsManager#SMS_RP_CAUSE_SEMANTICALLY_INCORRECT_MESSAGE}
         * {@link SmsManager#SMS_RP_CAUSE_INVALID_MANDATORY_INFORMATION}
         * {@link SmsManager#SMS_RP_CAUSE_MESSAGE_TYPE_NON_EXISTENT}
         * {@link SmsManager#SMS_RP_CAUSE_MESSAGE_INCOMPATIBLE_WITH_PROTOCOL_STATE}
         * {@link SmsManager#SMS_RP_CAUSE_INFORMATION_ELEMENT_NON_EXISTENT}
         * {@link SmsManager#SMS_RP_CAUSE_PROTOCOL_ERROR}
         * {@link SmsManager#SMS_RP_CAUSE_INTERWORKING_UNSPECIFIED
         */
        public static final String KEY_SMS_RP_CAUSE_VALUES_TO_RETRY_OVER_IMS_INT_ARRAY =
                KEY_PREFIX + "sms_rp_cause_values_to_retry_over_ims_int_array";

        /**
         * SMS RP-Cause Values for which Sending SMS should fallback
         */
        public static final String KEY_SMS_RP_CAUSE_VALUES_TO_FALLBACK_INT_ARRAY =
                KEY_PREFIX + "sms_rp_cause_values_to_fallback_int_array";

        private static PersistableBundle getDefaults() {
            PersistableBundle defaults = new PersistableBundle();
            defaults.putBoolean(KEY_SMS_OVER_IMS_SUPPORTED_BOOL, true);
@@ -6995,6 +7068,45 @@ public class CarrierConfigManager {

            defaults.putInt(KEY_SMS_OVER_IMS_FORMAT_INT, SMS_FORMAT_3GPP);

            defaults.putInt(KEY_SMS_MAX_RETRY_COUNT_INT, 3);
            defaults.putInt(KEY_SMS_MAX_RETRY_COUNT_OVER_IMS_INT, 3);
            defaults.putInt(KEY_SMS_OVER_IMS_SEND_RETRY_DELAY_MILLIS_INT,
                    2000);
            defaults.putInt(KEY_SMS_TR1_TIMER_MILLIS_INT, 130000);
            defaults.putInt(KEY_SMS_TR2_TIMER_MILLIS_INT, 15000);

            defaults.putIntArray(
                    KEY_SMS_RP_CAUSE_VALUES_TO_RETRY_OVER_IMS_INT_ARRAY,
                    new int[] {
                        SmsManager.SMS_RP_CAUSE_TEMPORARY_FAILURE
                    });
            defaults.putIntArray(
                    KEY_SMS_RP_CAUSE_VALUES_TO_FALLBACK_INT_ARRAY,
                    new int[] {
                        SmsManager.SMS_RP_CAUSE_UNALLOCATED_NUMBER,
                        SmsManager.SMS_RP_CAUSE_OPERATOR_DETERMINED_BARRING,
                        SmsManager.SMS_RP_CAUSE_CALL_BARRING,
                        SmsManager.SMS_RP_CAUSE_RESERVED,
                        SmsManager.SMS_RP_CAUSE_SHORT_MESSAGE_TRANSFER_REJECTED,
                        SmsManager.SMS_RP_CAUSE_DESTINATION_OUT_OF_ORDER,
                        SmsManager.SMS_RP_CAUSE_UNIDENTIFIED_SUBSCRIBER,
                        SmsManager.SMS_RP_CAUSE_FACILITY_REJECTED,
                        SmsManager.SMS_RP_CAUSE_UNKNOWN_SUBSCRIBER,
                        SmsManager.SMS_RP_CAUSE_NETWORK_OUT_OF_ORDER,
                        SmsManager.SMS_RP_CAUSE_CONGESTION,
                        SmsManager.SMS_RP_CAUSE_RESOURCES_UNAVAILABLE,
                        SmsManager.SMS_RP_CAUSE_FACILITY_NOT_SUBSCRIBED,
                        SmsManager.SMS_RP_CAUSE_FACILITY_NOT_IMPLEMENTED,
                        SmsManager.SMS_RP_CAUSE_INVALID_MESSAGE_REFERENCE_VALUE,
                        SmsManager.SMS_RP_CAUSE_SEMANTICALLY_INCORRECT_MESSAGE,
                        SmsManager.SMS_RP_CAUSE_INVALID_MANDATORY_INFORMATION,
                        SmsManager.SMS_RP_CAUSE_MESSAGE_TYPE_NON_EXISTENT,
                        SmsManager.SMS_RP_CAUSE_MESSAGE_INCOMPATIBLE_WITH_PROTOCOL_STATE,
                        SmsManager.SMS_RP_CAUSE_INFORMATION_ELEMENT_NON_EXISTENT,
                        SmsManager.SMS_RP_CAUSE_PROTOCOL_ERROR,
                        SmsManager.SMS_RP_CAUSE_INTERWORKING_UNSPECIFIED
                    });

            defaults.putIntArray(
                    KEY_SMS_OVER_IMS_SUPPORTED_RATS_INT_ARRAY,
                    new int[] {
+100 −0
Original line number Diff line number Diff line
@@ -297,6 +297,106 @@ public final class SmsManager {
     */
    public static final int SMS_MESSAGE_PERIOD_NOT_SPECIFIED = -1;

    // RP-Cause Values For MO SMS as per TS 124 011, table 8.4.

    /** @hide */
    @IntDef(prefix = { "SMS_RP_CAUSE" }, value = {
        SmsManager.SMS_RP_CAUSE_UNALLOCATED_NUMBER,
        SmsManager.SMS_RP_CAUSE_OPERATOR_DETERMINED_BARRING,
        SmsManager.SMS_RP_CAUSE_CALL_BARRING,
        SmsManager.SMS_RP_CAUSE_RESERVED,
        SmsManager.SMS_RP_CAUSE_SHORT_MESSAGE_TRANSFER_REJECTED,
        SmsManager.SMS_RP_CAUSE_DESTINATION_OUT_OF_ORDER,
        SmsManager.SMS_RP_CAUSE_UNIDENTIFIED_SUBSCRIBER,
        SmsManager.SMS_RP_CAUSE_FACILITY_REJECTED,
        SmsManager.SMS_RP_CAUSE_UNKNOWN_SUBSCRIBER,
        SmsManager.SMS_RP_CAUSE_NETWORK_OUT_OF_ORDER,
        SmsManager.SMS_RP_CAUSE_TEMPORARY_FAILURE,
        SmsManager.SMS_RP_CAUSE_CONGESTION,
        SmsManager.SMS_RP_CAUSE_RESOURCES_UNAVAILABLE,
        SmsManager.SMS_RP_CAUSE_FACILITY_NOT_SUBSCRIBED,
        SmsManager.SMS_RP_CAUSE_FACILITY_NOT_IMPLEMENTED,
        SmsManager.SMS_RP_CAUSE_INVALID_MESSAGE_REFERENCE_VALUE,
        SmsManager.SMS_RP_CAUSE_SEMANTICALLY_INCORRECT_MESSAGE,
        SmsManager.SMS_RP_CAUSE_INVALID_MANDATORY_INFORMATION,
        SmsManager.SMS_RP_CAUSE_MESSAGE_TYPE_NON_EXISTENT,
        SmsManager.SMS_RP_CAUSE_MESSAGE_INCOMPATIBLE_WITH_PROTOCOL_STATE,
        SmsManager.SMS_RP_CAUSE_INFORMATION_ELEMENT_NON_EXISTENT,
        SmsManager.SMS_RP_CAUSE_PROTOCOL_ERROR,
        SmsManager.SMS_RP_CAUSE_INTERWORKING_UNSPECIFIED
    })
    @Retention(RetentionPolicy.SOURCE)
    public @interface SMS_RP_CAUSE {}

    /** Unallocated Number Cause */
    public static final int SMS_RP_CAUSE_UNALLOCATED_NUMBER = 1;

    /** RP-Cause for Operator Barring */
    public static final int SMS_RP_CAUSE_OPERATOR_DETERMINED_BARRING = 8;

    /** RP-Cause Value for Call Barring */
    public static final int SMS_RP_CAUSE_CALL_BARRING = 10;

    /** RP-Cause value for Reserved Number */
    public static final int SMS_RP_CAUSE_RESERVED = 11;

    /** RP-Cause Value for Message Transfer Rejected by Network */
    public static final int SMS_RP_CAUSE_SHORT_MESSAGE_TRANSFER_REJECTED = 21;

    /** RP-Cause Value for Destination is Out of Order */
    public static final int SMS_RP_CAUSE_DESTINATION_OUT_OF_ORDER = 27;

    /** RP-Cause Value when Subscriber is not Identified */
    public static final int SMS_RP_CAUSE_UNIDENTIFIED_SUBSCRIBER = 28;

    /** RP-Cause Value when SMS Facility if Rejected by Operator */
    public static final int SMS_RP_CAUSE_FACILITY_REJECTED = 29;

    /** RP-Cause Value when Subscriber is not Identified */
    public static final int SMS_RP_CAUSE_UNKNOWN_SUBSCRIBER = 30;

    /** RP-Cause Value when network is out of order*/
    public static final int SMS_RP_CAUSE_NETWORK_OUT_OF_ORDER = 38;

    /** RP-Cause Value For Temporary failure*/
    public static final int SMS_RP_CAUSE_TEMPORARY_FAILURE = 41;

    /** RP-Cause Value for SMS Failure due to Congestion in network*/
    public static final int SMS_RP_CAUSE_CONGESTION = 42;

    /** RP-Cause Value when Network Resources are unavailable */
    public static final int SMS_RP_CAUSE_RESOURCES_UNAVAILABLE = 47;

    /** RP-Cause Value when SMS Facilty is not subscribed by Reote device */
    public static final int SMS_RP_CAUSE_FACILITY_NOT_SUBSCRIBED = 50;

    /** RP-Cause Value when network does not provide the received service */
    public static final int SMS_RP_CAUSE_FACILITY_NOT_IMPLEMENTED = 69;

    /** RP-Cause Value when RP-MessageRefere */
    public static final int SMS_RP_CAUSE_INVALID_MESSAGE_REFERENCE_VALUE = 81;

    /** RP-Cause Value when network does not provide the received service */
    public static final int SMS_RP_CAUSE_SEMANTICALLY_INCORRECT_MESSAGE = 95;

    /** RP-Cause Value when network does not provide the received service */
    public static final int SMS_RP_CAUSE_INVALID_MANDATORY_INFORMATION = 96;

    /** RP-Cause Value when network does not provide the received service */
    public static final int SMS_RP_CAUSE_MESSAGE_TYPE_NON_EXISTENT = 97;

    /** RP-Cause Value when network does not provide the received service */
    public static final int SMS_RP_CAUSE_MESSAGE_INCOMPATIBLE_WITH_PROTOCOL_STATE = 98;

    /** RP-Cause Value when network does not provide the received service */
    public static final int SMS_RP_CAUSE_INFORMATION_ELEMENT_NON_EXISTENT  = 99;

    /** RP-Cause Value when network does not provide the received service */
    public static final int SMS_RP_CAUSE_PROTOCOL_ERROR = 111;

    /** RP-Cause Value when network does not provide the received service */
    public static final int SMS_RP_CAUSE_INTERWORKING_UNSPECIFIED = 127;

    /** @hide */
    @IntDef(prefix = { "PREMIUM_SMS_CONSENT" }, value = {
        SmsManager.PREMIUM_SMS_CONSENT_UNKNOWN,