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

Commit 7ccdd1a0 authored by Sateshk Kumar Chinnappan's avatar Sateshk Kumar Chinnappan
Browse files

Add imsvoice, imsrtt, imsemergency related configs to CarrierConfigManager.

Bug: b/180150989
Test: Manually will be testing the configs using the following commands:
adb shell cmd phone cc get-value [KEY]
adb shell cmd phone cc set-value [KEY] [VALUE]

Change-Id: If92df3c2e12632f143bf4dde4ad43dc2dc9c9d31
parent 0e6151bc
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -42344,6 +42344,7 @@ package android.telephony {
    field public static final String KEY_SIP_TIMER_T1_MILLIS_INT = "ims.sip_timer_t1_millis_int";
    field public static final String KEY_SIP_TIMER_T2_MILLIS_INT = "ims.sip_timer_t2_millis_int";
    field public static final String KEY_SIP_TIMER_T4_MILLIS_INT = "ims.sip_timer_t4_millis_int";
    field public static final String KEY_SUPPORTED_RATS_INT_ARRAY = "ims.supported_rats_int_array";
    field public static final String KEY_WIFI_OFF_DEFERRING_TIME_MILLIS_INT = "ims.wifi_off_deferring_time_millis_int";
    field public static final int NETWORK_TYPE_HOME = 0; // 0x0
    field public static final int NETWORK_TYPE_ROAMING = 1; // 0x1
@@ -42364,6 +42365,7 @@ package android.telephony {
    field public static final String KEY_EMERGENCY_QOS_PRECONDITION_SUPPORTED_BOOL = "imsemergency.emergency_qos_precondition_supported_bool";
    field public static final String KEY_EMERGENCY_REGISTRATION_TIMER_MILLIS_INT = "imsemergency.emergency_registration_timer_millis_int";
    field public static final String KEY_PREFIX = "imsemergency.";
    field public static final String KEY_REFRESH_GEOLOCATION_TIMEOUT_MILLIS_INT = "imsemergency.refresh_geolocation_timeout_millis_int";
    field public static final String KEY_RETRY_EMERGENCY_ON_IMS_PDN_BOOL = "imsemergency.retry_emergency_on_ims_pdn_bool";
  }
@@ -42373,7 +42375,6 @@ package android.telephony {
    field public static final String KEY_T140_PAYLOAD_TYPE_INT = "imsrtt.t140_payload_type_int";
    field public static final String KEY_TEXT_AS_BANDWIDTH_KBPS_INT = "imsrtt.text_as_bandwidth_kbps_int";
    field public static final String KEY_TEXT_CODEC_CAPABILITY_PAYLOAD_TYPES_BUNDLE = "imsrtt.text_codec_capability_payload_types_bundle";
    field public static final String KEY_TEXT_INACTIVITY_CALL_END_REASONS_INT_ARRAY = "imsrtt.text_inactivity_call_end_reasons_int_array";
    field public static final String KEY_TEXT_ON_DEFAULT_BEARER_SUPPORTED_BOOL = "imsrtt.text_on_default_bearer_supported_bool";
    field public static final String KEY_TEXT_QOS_PRECONDITION_SUPPORTED_BOOL = "imsrtt.text_qos_precondition_supported_bool";
    field public static final String KEY_TEXT_RR_BANDWIDTH_BPS_INT = "imsrtt.text_rr_bandwidth_bps_int";
@@ -42409,6 +42410,7 @@ package android.telephony {
    field public static final String KEY_UT_REQUIRES_IMS_REGISTRATION_BOOL = "imsss.ut_requires_ims_registration_bool";
    field public static final String KEY_UT_SERVER_BASED_SERVICES_INT_ARRAY = "imsss.ut_server_based_services_int_array";
    field public static final String KEY_UT_SUPPORTED_WHEN_PS_DATA_OFF_BOOL = "imsss.ut_supported_when_ps_data_off_bool";
    field public static final String KEY_UT_SUPPORTED_WHEN_ROAMING_BOOL = "imsss.ut_supported_when_roaming_bool";
    field public static final String KEY_UT_TERMINAL_BASED_SERVICES_INT_ARRAY = "imsss.ut_terminal_based_services_int_array";
    field public static final String KEY_UT_TRANSPORT_TYPE_INT = "imsss.ut_transport_type_int";
    field public static final String KEY_XCAP_OVER_UT_SUPPORTED_RATS_INT_ARRAY = "imsss.xcap_over_ut_supported_rats_int_array";
@@ -42508,6 +42510,7 @@ package android.telephony {
    field public static final String KEY_RINGBACK_TIMER_MILLIS_INT = "imsvoice.ringback_timer_millis_int";
    field public static final String KEY_RINGING_TIMER_MILLIS_INT = "imsvoice.ringing_timer_millis_int";
    field public static final String KEY_SESSION_EXPIRES_TIMER_SEC_INT = "imsvoice.session_expires_timer_sec_int";
    field public static final String KEY_SESSION_PRIVACY_TYPE_INT = "imsvoice.session_privacy_type_int";
    field public static final String KEY_SESSION_REFRESHER_TYPE_INT = "imsvoice.session_refresher_type_int";
    field public static final String KEY_SESSION_REFRESH_METHOD_INT = "imsvoice.session_refresh_method_int";
    field public static final String KEY_SESSION_TIMER_SUPPORTED_BOOL = "imsvoice.session_timer_supported_bool";
@@ -42517,6 +42520,9 @@ package android.telephony {
    field public static final int MIDCALL_SRVCC_SUPPORT = 3; // 0x3
    field public static final int OCTET_ALIGNED = 1; // 0x1
    field public static final int PREALERTING_SRVCC_SUPPORT = 2; // 0x2
    field public static final int SESSION_PRIVACY_TYPE_HEADER = 0; // 0x0
    field public static final int SESSION_PRIVACY_TYPE_ID = 2; // 0x2
    field public static final int SESSION_PRIVACY_TYPE_NONE = 1; // 0x1
    field public static final int SESSION_REFRESHER_TYPE_UAC = 1; // 0x1
    field public static final int SESSION_REFRESHER_TYPE_UAS = 2; // 0x2
    field public static final int SESSION_REFRESHER_TYPE_UNKNOWN = 0; // 0x0
+80 −23
Original line number Diff line number Diff line
@@ -5185,6 +5185,20 @@ public class CarrierConfigManager {
        /**  E911 RTP inactivity occurred when call is connected. */
        public static final int E911_RTP_INACTIVITY_ON_CONNECTED = 4;

        /**
         * List of different RAT technologies on which IMS
         * is supported.
         *
         * <p>Possible values are,
         * {@link AccessNetworkConstants.AccessNetworkType#NGRAN}
         * {@link AccessNetworkConstants.AccessNetworkType#EUTRAN}
         * {@link AccessNetworkConstants.AccessNetworkType#IWLAN}
         * {@link AccessNetworkConstants.AccessNetworkType#UTRAN}
         * {@link AccessNetworkConstants.AccessNetworkType#GERAN}
         */
        public static final String KEY_SUPPORTED_RATS_INT_ARRAY =
                KEY_PREFIX + "supported_rats_int_array";

        /**
         * A bundle which specifies the MMTEL capability and registration technology
         * that requires provisioning. If a tuple is not present, the
@@ -5375,6 +5389,13 @@ public class CarrierConfigManager {
                    new int[] {
                        GEOLOCATION_PIDF_FOR_EMERGENCY_ON_WIFI
                    });
            defaults.putIntArray(
                    KEY_SUPPORTED_RATS_INT_ARRAY,
                    new int[] {
                        AccessNetworkType.NGRAN,
                        AccessNetworkType.EUTRAN,
                        AccessNetworkType.IWLAN
                    });

            defaults.putString(KEY_PHONE_CONTEXT_DOMAIN_NAME_STRING, "");
            defaults.putString(KEY_IMS_USER_AGENT_STRING,
@@ -5499,6 +5520,44 @@ public class CarrierConfigManager {
        public static final String KEY_SESSION_REFRESHER_TYPE_INT =
                KEY_PREFIX + "session_refresher_type_int";


        /** @hide */
        @IntDef({
            SESSION_PRIVACY_TYPE_HEADER,
            SESSION_PRIVACY_TYPE_NONE,
            SESSION_PRIVACY_TYPE_ID
        })

        public @interface SessionPrivacyType {}

        /**
         * Session privacy type is HEADER as per RFC 3323 Section 4.2.
         */
        public static final int SESSION_PRIVACY_TYPE_HEADER = 0;

        /**
         * Session privacy type is NONE as per RFC 3323 Section 4.2.
         */
        public static final int SESSION_PRIVACY_TYPE_NONE = 1;

        /**
         * Session privacy type is ID as per RFC 3325 Section 9.3.
         */
        public static final int SESSION_PRIVACY_TYPE_ID = 2;

        /**
         * Specify the session privacy type.
         *
         * <p>Reference: RFC 3323 Section 4.2, RFC 3325 Section 9.3.
         *
         * <p>Possible values are,
         * {@link #SESSION_PRIVACY_TYPE_HEADER},
         * {@link #SESSION_PRIVACY_TYPE_NONE},
         * {@link #SESSION_PRIVACY_TYPE_ID}
         */
        public static final String KEY_SESSION_PRIVACY_TYPE_INT =
                KEY_PREFIX + "session_privacy_type_int";

        /**
         * Flag indicating whether PRACK must be enabled for all 18x messages.
         *
@@ -6320,6 +6379,7 @@ public class CarrierConfigManager {
            defaults.putBoolean(KEY_VOICE_ON_DEFAULT_BEARER_SUPPORTED_BOOL, false);

            defaults.putInt(KEY_SESSION_REFRESHER_TYPE_INT, SESSION_REFRESHER_TYPE_UNKNOWN);
            defaults.putInt(KEY_SESSION_PRIVACY_TYPE_INT, SESSION_PRIVACY_TYPE_HEADER);
            defaults.putInt(KEY_SESSION_REFRESH_METHOD_INT,
                            SESSION_REFRESH_METHOD_UPDATE_PREFERRED);
            defaults.putInt(KEY_CONFERENCE_SUBSCRIBE_TYPE_INT,
@@ -6566,22 +6626,6 @@ public class CarrierConfigManager {
        public static final String KEY_TEXT_RR_BANDWIDTH_BPS_INT =
                KEY_PREFIX + "text_rr_bandwidth_bps_int";

        /**
         * List of various reasons for RTT call to end due to
         * media inactivity.
         *
         * <p>Possible values are,
         * <UL>
         *     <LI>{@link Ims#RTCP_INACTIVITY_ON_HOLD}</LI>
         *     <LI>{@link Ims#RTCP_INACTIVITY_ON_CONNECTED}</LI>
         *     <LI>{@link Ims#RTP_INACTIVITY_ON_CONNECTED}</LI>
         *     <LI>{@link Ims#E911_RTCP_INACTIVITY_ON_CONNECTED}</LI>
         *     <LI>{@link Ims#E911_RTP_INACTIVITY_ON_CONNECTED}</LI>
         * </UL>
         */
        public static final String KEY_TEXT_INACTIVITY_CALL_END_REASONS_INT_ARRAY =
                KEY_PREFIX + "text_inactivity_call_end_reasons_int_array";

        /**
         * Specifies the Text Codec capability.
         *
@@ -6617,13 +6661,6 @@ public class CarrierConfigManager {
            defaults.putInt(KEY_TEXT_RS_BANDWIDTH_BPS_INT, 100);
            defaults.putInt(KEY_TEXT_RR_BANDWIDTH_BPS_INT, 300);

            defaults.putIntArray(
                    KEY_TEXT_INACTIVITY_CALL_END_REASONS_INT_ARRAY,
                    new int[] {
                        Ims.RTCP_INACTIVITY_ON_CONNECTED,
                        Ims.RTP_INACTIVITY_ON_CONNECTED
                    });

            PersistableBundle text_codec_capability_payload_types = new PersistableBundle();

            text_codec_capability_payload_types.putInt(
@@ -6707,6 +6744,13 @@ public class CarrierConfigManager {
        public static final String KEY_EMERGENCY_REGISTRATION_TIMER_MILLIS_INT =
                KEY_PREFIX + "emergency_registration_timer_millis_int";

        /**
         * This setting will be specify the wait time for refreshing
         * geolocation information before dialing emergency call.
         */
        public static final String KEY_REFRESH_GEOLOCATION_TIMEOUT_MILLIS_INT =
                KEY_PREFIX + "refresh_geolocation_timeout_millis_int";

        private static PersistableBundle getDefaults() {
            PersistableBundle defaults = new PersistableBundle();
            defaults.putBoolean(KEY_RETRY_EMERGENCY_ON_IMS_PDN_BOOL, false);
@@ -6721,6 +6765,7 @@ public class CarrierConfigManager {
                    });

            defaults.putInt(KEY_EMERGENCY_REGISTRATION_TIMER_MILLIS_INT, 20000);
            defaults.putInt(KEY_REFRESH_GEOLOCATION_TIMEOUT_MILLIS_INT, 5000);

            return defaults;
        }
@@ -7034,6 +7079,17 @@ public class CarrierConfigManager {
        public static final String KEY_UT_REQUIRES_IMS_REGISTRATION_BOOL =
                KEY_PREFIX + "ut_requires_ims_registration_bool";

        /**
         * Flag that controls whether XCAP over UT is supported
         * when on roaming network.
         *
         * <p>If {@code true}: XCAP over UT is supported when on
         * roaming network.
         * {@code false} otherwise.
         */
        public static final String KEY_UT_SUPPORTED_WHEN_ROAMING_BOOL =
                KEY_PREFIX + "ut_supported_when_roaming_bool";

        /**
         * Flag that controls whether Circuit Switched Fallback (CSFB)
         * option is available when XCAP over UT fails.
@@ -7385,6 +7441,7 @@ public class CarrierConfigManager {
            defaults.putBoolean(KEY_USE_CSFB_ON_XCAP_OVER_UT_FAILURE_BOOL, true);
            defaults.putBoolean(KEY_UT_SUPPORTED_WHEN_PS_DATA_OFF_BOOL, true);
            defaults.putBoolean(KEY_NETWORK_INITIATED_USSD_OVER_IMS_SUPPORTED_BOOL, true);
            defaults.putBoolean(KEY_UT_SUPPORTED_WHEN_ROAMING_BOOL, true);

            defaults.putInt(KEY_UT_IPTYPE_HOME_INT, ApnSetting.PROTOCOL_IPV4V6);
            defaults.putInt(KEY_UT_IPTYPE_ROAMING_INT, ApnSetting.PROTOCOL_IPV4V6);