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

Commit 2cdad9f0 authored by Jayachandran Chinnakkannu's avatar Jayachandran Chinnakkannu Committed by Calvin Pan
Browse files

Add new provisioning flag for VOIMS opt-in

Bug: 177009570
Test: By Manual
1. Call setProvisioningIntValue() and getProvisioningIntValue()

2. Enable/disable the value and dial a VoLTE call
2-1. Set value to 1
2-2. Dial a call
2-3. From ImsPhoneCallTracker and GsmCdmaPhone's log, VoLTE is
 registered and device is trying IMS PS call
2-4. Set value to 0
2-5. Dial a call
2-6. From ImsPhoneCallTracker and GsmCdmaPhone's log, VoLTE is
unregistered and device is trying (non-IMS) CS call

3. atest

Change-Id: I0b8af8fe6c9a34a56f9e2275df0a03ba093f439e
Merged-In: I0b8af8fe6c9a34a56f9e2275df0a03ba093f439e
parent 3b65c483
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -5302,5 +5302,13 @@ public final class Telephony {
         * @hide
         */
        public static final String COLUMN_RCS_CONFIG = "rcs_config";

        /**
         * TelephonyProvider column name for VoIMS provisioning. Default is 0.
         * <P>Type: INTEGER </P>
         *
         * @hide
         */
        public static final String COLUMN_VOIMS_OPT_IN_STATUS = "voims_opt_in_status";
    }
}
+8 −0
Original line number Diff line number Diff line
@@ -890,6 +890,14 @@ public class SubscriptionManager {
     */
    public static final String PROFILE_CLASS = SimInfo.COLUMN_PROFILE_CLASS;

    /**
     * TelephonyProvider column name for VoIMS opt-in status.
     *
     * <P>Type: INTEGER (int)</P>
     * @hide
     */
    public static final String VOIMS_OPT_IN_STATUS = SimInfo.COLUMN_VOIMS_OPT_IN_STATUS;

    /**
     * Profile class of the subscription
     * @hide
+13 −0
Original line number Diff line number Diff line
@@ -865,6 +865,19 @@ public class ProvisioningManager {
     */
    public static final int KEY_VOICE_OVER_WIFI_ENTITLEMENT_ID = 67;

    /**
     * An integer key representing the voice over IMS opt-in provisioning status for the
     * associated subscription. Determines whether the user can see for voice services over
     * IMS.
     * <p>
     * Use {@link #PROVISIONING_VALUE_ENABLED} to enable VoIMS provisioning and
     * {@link #PROVISIONING_VALUE_DISABLED} to disable VoIMS  provisioning.
     * @see #setProvisioningIntValue(int, int)
     * @see #getProvisioningIntValue(int)
     * @hide
     */
    public static final int KEY_VOIMS_OPT_IN_STATUS = 68;

    /**
     * Callback for IMS provisioning changes.
     */
+2 −0
Original line number Diff line number Diff line
@@ -47,4 +47,6 @@ interface IImsConfig {
    void removeRcsConfigCallback(IRcsConfigCallback c);
    void triggerRcsReconfiguration();
    void setRcsClientConfiguration(in RcsClientConfiguration rcc);
    void notifyIntImsConfigChanged(int item, int value);
    void notifyStringImsConfigChanged(int item, String value);
}
+10 −0
Original line number Diff line number Diff line
@@ -258,6 +258,16 @@ public class ImsConfigImplBase {
        public void setRcsClientConfiguration(RcsClientConfiguration rcc) throws RemoteException {
            getImsConfigImpl().setRcsClientConfiguration(rcc);
        }

        @Override
        public void notifyIntImsConfigChanged(int item, int value) throws RemoteException {
            notifyImsConfigChanged(item, value);
        }

        @Override
        public void notifyStringImsConfigChanged(int item, String value) throws RemoteException {
            notifyImsConfigChanged(item, value);
        }
    }

    /**