From 3f7fe40e49948634abe62f0c4aee62e48a6c5dff Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Fri, 5 Mar 2021 20:13:22 -0800 Subject: Integrate RCS provisioning updates into SipTransport Bug: 173828167 Test: atest TeleServiceTests:com.android.phone.RcsProvisioningMonitorTest Merged-In: Ifabbe6a4c4cccef85c5c1b43fcb7876bad33e226 Change-Id: Ifabbe6a4c4cccef85c5c1b43fcb7876bad33e226 --- core/api/current.txt | 1 + .../android/telephony/CarrierConfigManager.java | 29 ++++++++++++++++++++++ .../com/android/internal/telephony/ITelephony.aidl | 10 ++++++++ 3 files changed, 40 insertions(+) diff --git a/core/api/current.txt b/core/api/current.txt index 82393f427f9b..b08122acba57 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -39392,6 +39392,7 @@ package android.telephony { field public static final String KEY_NON_RCS_CAPABILITIES_CACHE_EXPIRATION_SEC_INT = "ims.non_rcs_capabilities_cache_expiration_sec_int"; field public static final String KEY_PREFIX = "ims."; field public static final String KEY_RCS_BULK_CAPABILITY_EXCHANGE_BOOL = "ims.rcs_bulk_capability_exchange_bool"; + field public static final String KEY_RCS_FEATURE_TAG_ALLOWED_STRING_ARRAY = "ims.rcs_feature_tag_allowed_string_array"; field public static final String KEY_WIFI_OFF_DEFERRING_TIME_MILLIS_INT = "ims.wifi_off_deferring_time_millis_int"; } diff --git a/telephony/java/android/telephony/CarrierConfigManager.java b/telephony/java/android/telephony/CarrierConfigManager.java index ae1984e67c9c..0ba96a947a73 100644 --- a/telephony/java/android/telephony/CarrierConfigManager.java +++ b/telephony/java/android/telephony/CarrierConfigManager.java @@ -4026,6 +4026,14 @@ public class CarrierConfigManager { public static final String KEY_NON_RCS_CAPABILITIES_CACHE_EXPIRATION_SEC_INT = KEY_PREFIX + "non_rcs_capabilities_cache_expiration_sec_int"; + /** + * Specifies the RCS feature tag allowed for the carrier. + * + *

The values refer to RCC.07 2.4.4. + */ + public static final String KEY_RCS_FEATURE_TAG_ALLOWED_STRING_ARRAY = + KEY_PREFIX + "rcs_feature_tag_allowed_string_array"; + private Ims() {} private static PersistableBundle getDefaults() { @@ -4039,6 +4047,27 @@ public class CarrierConfigManager { defaults.putBoolean(KEY_RCS_BULK_CAPABILITY_EXCHANGE_BOOL, false); defaults.putBoolean(KEY_ENABLE_PRESENCE_GROUP_SUBSCRIBE_BOOL, true); defaults.putInt(KEY_NON_RCS_CAPABILITIES_CACHE_EXPIRATION_SEC_INT, 30 * 24 * 60 * 60); + defaults.putStringArray(KEY_RCS_FEATURE_TAG_ALLOWED_STRING_ARRAY, new String[]{ + "+g.3gpp.icsi-ref=\"urn%3Aurn-7%3A3gpp-service.ims.icsi.oma.cpm.msg\"", + "+g.3gpp.icsi-ref=\"urn%3Aurn-7%3A3gpp-service.ims.icsi.oma.cpm.largemsg\"", + "+g.3gpp.icsi-ref=\"urn%3Aurn-7%3A3gpp-service.ims.icsi.oma.cpm.deferred\"", + "+g.gsma.rcs.cpm.pager-large", + "+g.3gpp.icsi-ref=\"urn%3Aurn-7%3A3gpp-service.ims.icsi.oma.cpm.session\"", + "+g.3gpp.icsi-ref=\"urn%3Aurn-7%3A3gpp-service.ims.icsi.oma.cpm.session\"", + "+g.3gpp.iari-ref=\"urn%3Aurn-7%3A3gpp-application.ims.iari.rcs.fthttp\"", + "+g.3gpp.iari-ref=\"urn%3Aurn-7%3A3gpp-application.ims.iari.rcs.ftsms\"", + "+g.3gpp.iari-ref=\"urn%3Aurn-7%3A3gpp-service.ims.icsi.gsma.callcomposer\"", + "+g.gsma.callcomposer", + "+g.3gpp.icsi-ref=\"urn%3Aurn-7%3A3gpp-service.ims.icsi.gsma.callunanswered\"", + "+g.3gpp.icsi-ref=\"urn%3Aurn-7%3A3gpp-service.ims.icsi.gsma.sharedmap\"", + "+g.3gpp.icsi-ref=\"urn%3Aurn-7%3A3gpp-service.ims.icsi.gsma.sharedsketch\"", + "+g.3gpp.iari-ref=\"urn%3Aurn-7%3A3gpp-application.ims.iari.rcs.geopush\"", + "+g.3gpp.iari-ref=\"urn%3Aurn-7%3A3gpp-application.ims.iari.rcs.geosms\"", + "+g.3gpp.iari-ref=\"urn%3Aurn-7%3A3gpp-application.ims.iari.rcs.chatbot\"", + "+g.3gpp.iari-ref=\"urn%3Aurn-7%3A3gpp-application.ims.iari.rcs.chatbot.sa\"", + "+g.gsma.rcs.botversion=\"#=1,#=2\"", + "+g.gsma.rcs.cpimext"}); + return defaults; } } diff --git a/telephony/java/com/android/internal/telephony/ITelephony.aidl b/telephony/java/com/android/internal/telephony/ITelephony.aidl index c306c577a796..97078c3dd76e 100644 --- a/telephony/java/com/android/internal/telephony/ITelephony.aidl +++ b/telephony/java/com/android/internal/telephony/ITelephony.aidl @@ -2326,6 +2326,16 @@ interface ITelephony { */ boolean getCarrierSingleRegistrationEnabled(int subId); + /** + * Overrides the ims feature validation result + */ + boolean setImsFeatureValidationOverride(int subId, String enabled); + + /** + * Gets the ims feature validation override value + */ + boolean getImsFeatureValidationOverride(int subId); + /** * Return the mobile provisioning url that is used to launch a browser to allow users to manage * their mobile plan. -- cgit v1.2.3-59-g8ed1b