diff --git a/core/api/current.txt b/core/api/current.txt index 43cbe8baefeac..06f82e0c50a53 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -41660,104 +41660,21 @@ package android.telephony { field public static final String PROTOCOL_IPV6 = "IPV6"; } - public static final class CarrierConfigManager.Bsf { - field public static final String KEY_BSF_SERVER_FQDN_STRING = "bsf.bsf_server_fqdn_string"; - field public static final String KEY_BSF_SERVER_PORT_INT = "bsf.bsf_server_port_int"; - field public static final String KEY_BSF_TRANSPORT_TYPE_INT = "bsf.bsf_transport type_int"; - field public static final String KEY_PREFIX = "bsf."; - } - public static final class CarrierConfigManager.Gps { field public static final String KEY_PERSIST_LPP_MODE_BOOL = "gps.persist_lpp_mode_bool"; field public static final String KEY_PREFIX = "gps."; } public static final class CarrierConfigManager.Ims { - field public static final int E911_RTCP_INACTIVITY_ON_CONNECTED = 3; // 0x3 - field public static final int E911_RTP_INACTIVITY_ON_CONNECTED = 4; // 0x4 - field public static final int GEOLOCATION_PIDF_FOR_EMERGENCY_ON_CELLULAR = 4; // 0x4 - field public static final int GEOLOCATION_PIDF_FOR_EMERGENCY_ON_WIFI = 2; // 0x2 - field public static final int GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_CELLULAR = 3; // 0x3 - field public static final int GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_WIFI = 1; // 0x1 - field public static final int IPSEC_AUTHENTICATION_ALGORITHM_HMAC_MD5 = 0; // 0x0 - field public static final int IPSEC_AUTHENTICATION_ALGORITHM_HMAC_SHA1 = 1; // 0x1 - field public static final int IPSEC_ENCRYPTION_ALGORITHM_AES_CBC = 2; // 0x2 - field public static final int IPSEC_ENCRYPTION_ALGORITHM_DES_EDE3_CBC = 1; // 0x1 - field public static final int IPSEC_ENCRYPTION_ALGORITHM_NULL = 0; // 0x0 - field public static final int IP_TYPE_IPV4 = 1; // 0x1 - field public static final int IP_TYPE_IPV4V6 = 0; // 0x0 - field public static final int IP_TYPE_IPV6 = 2; // 0x2 field public static final String KEY_ENABLE_PRESENCE_CAPABILITY_EXCHANGE_BOOL = "ims.enable_presence_capability_exchange_bool"; field public static final String KEY_ENABLE_PRESENCE_GROUP_SUBSCRIBE_BOOL = "ims.enable_presence_group_subscribe_bool"; field public static final String KEY_ENABLE_PRESENCE_PUBLISH_BOOL = "ims.enable_presence_publish_bool"; - field public static final String KEY_GEOLOCATION_PIDF_IN_SIP_INVITE_SUPPORT_INT_ARRAY = "ims.geolocation_pidf_in_sip_invite_support_int_array"; - field public static final String KEY_GEOLOCATION_PIDF_IN_SIP_REGISTER_SUPPORT_INT_ARRAY = "ims.geolocation_pidf_in_sip_register_support_int_array"; - field public static final String KEY_GRUU_ENABLED_BOOL = "ims.gruu_enabled_bool"; - field public static final String KEY_IMS_PDN_ENABLED_IN_NO_VOPS_SUPPORT_INT_ARRAY = "ims.ims_pdn_enabled_in_no_vops_support_int_array"; field public static final String KEY_IMS_SINGLE_REGISTRATION_REQUIRED_BOOL = "ims.ims_single_registration_required_bool"; - field public static final String KEY_IMS_USER_AGENT_STRING = "ims.ims_user_agent_string"; - field public static final String KEY_IPSEC_AUTHENTICATION_ALGORITHMS_INT_ARRAY = "ims.ipsec_authentication_algorithms_int_array"; - field public static final String KEY_IPSEC_ENCRYPTION_ALGORITHMS_INT_ARRAY = "ims.ipsec_encryption_algorithms_int_array"; - field public static final String KEY_IPV4_SIP_MTU_SIZE_CELLULAR_INT = "ims.ipv4_sip_mtu_size_cellular_int"; - field public static final String KEY_IPV6_SIP_MTU_SIZE_CELLULAR_INT = "ims.ipv6_sip_mtu_size_cellular_int"; - field public static final String KEY_KEEP_PDN_UP_IN_NO_VOPS_BOOL = "ims.keep_pdn_up_in_no_vops_bool"; 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_PHONE_CONTEXT_DOMAIN_NAME_STRING = "ims.phone_context_domain_name_string"; 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_REGISTRATION_EVENT_PACKAGE_SUPPORTED_BOOL = "ims.registration_event_package_supported_bool"; - field public static final String KEY_REGISTRATION_EXPIRY_TIMER_SEC_INT = "ims.registration_expiry_timer_sec_int"; - field public static final String KEY_REGISTRATION_RETRY_BASE_TIMER_MILLIS_INT = "ims.registration_retry_base_timer_millis_int"; - field public static final String KEY_REGISTRATION_RETRY_MAX_TIMER_MILLIS_INT = "ims.registration_retry_max_timer_millis_int"; - field public static final String KEY_REGISTRATION_SUBSCRIBE_EXPIRY_TIMER_SEC_INT = "ims.registration_subscribe_expiry_timer_sec_int"; - field public static final String KEY_REQUEST_URI_TYPE_INT = "ims.request_uri_type_int"; - field public static final String KEY_SIP_OVER_IPSEC_ENABLED_BOOL = "ims.sip_over_ipsec_enabled_bool"; - field public static final String KEY_SIP_PREFERRED_TRANSPORT_INT = "ims.sip_preferred_transport_int"; - field public static final String KEY_SIP_SERVER_PORT_NUMBER_INT = "ims.sip_server_port_number_int"; - field public static final String KEY_SIP_TIMER_B_MILLIS_INT = "ims.sip_timer_b_millis_int"; - field public static final String KEY_SIP_TIMER_C_MILLIS_INT = "ims.sip_timer_c_millis_int"; - field public static final String KEY_SIP_TIMER_D_MILLIS_INT = "ims.sip_timer_d_millis_int"; - field public static final String KEY_SIP_TIMER_F_MILLIS_INT = "ims.sip_timer_f_millis_int"; - field public static final String KEY_SIP_TIMER_H_MILLIS_INT = "ims.sip_timer_h_millis_int"; - field public static final String KEY_SIP_TIMER_J_MILLIS_INT = "ims.sip_timer_j_millis_int"; - 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_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 - field public static final int PREFERRED_TRANSPORT_DYNAMIC_UDP_TCP = 2; // 0x2 - field public static final int PREFERRED_TRANSPORT_TCP = 1; // 0x1 - field public static final int PREFERRED_TRANSPORT_TLS = 3; // 0x3 - field public static final int PREFERRED_TRANSPORT_UDP = 0; // 0x0 - field public static final int REQUEST_URI_FORMAT_SIP = 1; // 0x1 - field public static final int REQUEST_URI_FORMAT_TEL = 0; // 0x0 - field public static final int RTCP_INACTIVITY_ON_CONNECTED = 1; // 0x1 - field public static final int RTCP_INACTIVITY_ON_HOLD = 0; // 0x0 - field public static final int RTP_INACTIVITY_ON_CONNECTED = 2; // 0x2 - } - - public static final class CarrierConfigManager.ImsEmergency { - field public static final String KEY_EMERGENCY_CALLBACK_MODE_SUPPORTED_BOOL = "imsemergency.emergency_callback_mode_supported_bool"; - field public static final String KEY_EMERGENCY_OVER_IMS_SUPPORTED_RATS_INT_ARRAY = "imsemergency.emergency_over_ims_supported_rats_int_array"; - 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_RETRY_EMERGENCY_ON_IMS_PDN_BOOL = "imsemergency.retry_emergency_on_ims_pdn_bool"; - } - - public static final class CarrierConfigManager.ImsRtt { - field public static final String KEY_PREFIX = "imsrtt."; - field public static final String KEY_RED_PAYLOAD_TYPE_INT = "imsrtt.red_payload_type_int"; - 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"; - field public static final String KEY_TEXT_RS_BANDWIDTH_BPS_INT = "imsrtt.text_rs_bandwidth_bps_int"; } public static final class CarrierConfigManager.ImsServiceEntitlement { @@ -41768,167 +41685,6 @@ package android.telephony { field public static final String KEY_SHOW_VOWIFI_WEBVIEW_BOOL = "imsserviceentitlement.show_vowifi_webview_bool"; } - 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_OVER_IMS_FORMAT_INT = "imssms.sms_over_ims_format_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 int SMS_FORMAT_3GPP = 0; // 0x0 - field public static final int SMS_FORMAT_3GPP2 = 1; // 0x1 - } - - public static final class CarrierConfigManager.ImsSs { - field public static final String KEY_NETWORK_INITIATED_USSD_OVER_IMS_SUPPORTED_BOOL = "imsss.network_initiated_ussd_over_ims_supported_bool"; - field public static final String KEY_PREFIX = "imsss."; - field public static final String KEY_USE_CSFB_ON_XCAP_OVER_UT_FAILURE_BOOL = "imsss.use_csfb_on_xcap_over_ut_failure_bool"; - field public static final String KEY_UT_AS_SERVER_FQDN_STRING = "imsss.ut_as_server_fqdn_string"; - field public static final String KEY_UT_AS_SERVER_PORT_INT = "imsss.ut_as_server_port_int"; - field public static final String KEY_UT_IPTYPE_HOME_INT = "imsss.ut_iptype_home_int"; - field public static final String KEY_UT_IPTYPE_ROAMING_INT = "imsss.ut_iptype_roaming_int"; - 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_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"; - field public static final int SUPPLEMENTARY_SERVICE_CB_ACR = 20; // 0x14 - field public static final int SUPPLEMENTARY_SERVICE_CB_ALL = 12; // 0xc - field public static final int SUPPLEMENTARY_SERVICE_CB_BAIC = 18; // 0x12 - field public static final int SUPPLEMENTARY_SERVICE_CB_BAOC = 14; // 0xe - field public static final int SUPPLEMENTARY_SERVICE_CB_BIC_ROAM = 19; // 0x13 - field public static final int SUPPLEMENTARY_SERVICE_CB_BIL = 21; // 0x15 - field public static final int SUPPLEMENTARY_SERVICE_CB_BOIC = 15; // 0xf - field public static final int SUPPLEMENTARY_SERVICE_CB_BOIC_EXHC = 16; // 0x10 - field public static final int SUPPLEMENTARY_SERVICE_CB_IBS = 17; // 0x11 - field public static final int SUPPLEMENTARY_SERVICE_CB_OBS = 13; // 0xd - field public static final int SUPPLEMENTARY_SERVICE_CF_ALL = 1; // 0x1 - field public static final int SUPPLEMENTARY_SERVICE_CF_ALL_CONDITONAL_FORWARDING = 3; // 0x3 - field public static final int SUPPLEMENTARY_SERVICE_CF_CFB = 4; // 0x4 - field public static final int SUPPLEMENTARY_SERVICE_CF_CFNL = 7; // 0x7 - field public static final int SUPPLEMENTARY_SERVICE_CF_CFNRC = 6; // 0x6 - field public static final int SUPPLEMENTARY_SERVICE_CF_CFNRY = 5; // 0x5 - field public static final int SUPPLEMENTARY_SERVICE_CF_CFU = 2; // 0x2 - field public static final int SUPPLEMENTARY_SERVICE_CW = 0; // 0x0 - field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIP = 8; // 0x8 - field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIR = 10; // 0xa - field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIP = 9; // 0x9 - field public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIR = 11; // 0xb - } - - public static final class CarrierConfigManager.ImsVoice { - field public static final int ALERTING_SRVCC_SUPPORT = 1; // 0x1 - field public static final int BANDWIDTH_EFFICIENT = 0; // 0x0 - field public static final int BASIC_SRVCC_SUPPORT = 0; // 0x0 - field public static final int CONFERENCE_SUBSCRIBE_TYPE_IN_DIALOG = 0; // 0x0 - field public static final int CONFERENCE_SUBSCRIBE_TYPE_OUT_OF_DIALOG = 1; // 0x1 - field public static final int EVS_ENCODED_BW_TYPE_FB = 3; // 0x3 - field public static final int EVS_ENCODED_BW_TYPE_NB = 0; // 0x0 - field public static final int EVS_ENCODED_BW_TYPE_NB_WB = 4; // 0x4 - field public static final int EVS_ENCODED_BW_TYPE_NB_WB_SWB = 5; // 0x5 - field public static final int EVS_ENCODED_BW_TYPE_NB_WB_SWB_FB = 6; // 0x6 - field public static final int EVS_ENCODED_BW_TYPE_SWB = 2; // 0x2 - field public static final int EVS_ENCODED_BW_TYPE_WB = 1; // 0x1 - field public static final int EVS_ENCODED_BW_TYPE_WB_SWB = 7; // 0x7 - field public static final int EVS_ENCODED_BW_TYPE_WB_SWB_FB = 8; // 0x8 - field public static final int EVS_OPERATIONAL_MODE_AMRWB_IO = 1; // 0x1 - field public static final int EVS_OPERATIONAL_MODE_PRIMARY = 0; // 0x0 - field public static final int EVS_PRIMARY_MODE_BITRATE_128_0_KBPS = 11; // 0xb - field public static final int EVS_PRIMARY_MODE_BITRATE_13_2_KBPS = 4; // 0x4 - field public static final int EVS_PRIMARY_MODE_BITRATE_16_4_KBPS = 5; // 0x5 - field public static final int EVS_PRIMARY_MODE_BITRATE_24_4_KBPS = 6; // 0x6 - field public static final int EVS_PRIMARY_MODE_BITRATE_32_0_KBPS = 7; // 0x7 - field public static final int EVS_PRIMARY_MODE_BITRATE_48_0_KBPS = 8; // 0x8 - field public static final int EVS_PRIMARY_MODE_BITRATE_5_9_KBPS = 0; // 0x0 - field public static final int EVS_PRIMARY_MODE_BITRATE_64_0_KBPS = 9; // 0x9 - field public static final int EVS_PRIMARY_MODE_BITRATE_7_2_KBPS = 1; // 0x1 - field public static final int EVS_PRIMARY_MODE_BITRATE_8_0_KBPS = 2; // 0x2 - field public static final int EVS_PRIMARY_MODE_BITRATE_96_0_KBPS = 10; // 0xa - field public static final int EVS_PRIMARY_MODE_BITRATE_9_6_KBPS = 3; // 0x3 - field public static final String KEY_AMRNB_PAYLOAD_DESCRIPTION_BUNDLE = "imsvoice.amrnb_payload_description_bundle"; - field public static final String KEY_AMRNB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.amrnb_payload_type_int_array"; - field public static final String KEY_AMRWB_PAYLOAD_DESCRIPTION_BUNDLE = "imsvoice.amrwb_payload_description_bundle"; - field public static final String KEY_AMRWB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.amrwb_payload_type_int_array"; - field public static final String KEY_AMR_CODEC_ATTRIBUTE_MODESET_INT_ARRAY = "imsvoice.amr_codec_attribute_modeset_int_array"; - field public static final String KEY_AMR_CODEC_ATTRIBUTE_PAYLOAD_FORMAT_INT = "imsvoice.amr_codec_attribute_payload_format_int"; - field public static final String KEY_AUDIO_AS_BANDWIDTH_KBPS_INT = "imsvoice.audio_as_bandwidth_kbps_int"; - field public static final String KEY_AUDIO_CODEC_CAPABILITY_PAYLOAD_TYPES_BUNDLE = "imsvoice.audio_codec_capability_payload_types_bundle"; - field public static final String KEY_AUDIO_INACTIVITY_CALL_END_REASONS_INT_ARRAY = "imsvoice.audio_inactivity_call_end_reasons_int_array"; - field public static final String KEY_AUDIO_RR_BANDWIDTH_BPS_INT = "imsvoice.audio_rr_bandwidth_bps_int"; - field public static final String KEY_AUDIO_RS_BANDWIDTH_BPS_INT = "imsvoice.audio_rs_bandwidth_bps_int"; - field public static final String KEY_AUDIO_RTCP_INACTIVITY_TIMER_MILLIS_INT = "imsvoice.audio_rtcp_inactivity_timer_millis_int"; - field public static final String KEY_AUDIO_RTP_INACTIVITY_TIMER_MILLIS_INT = "imsvoice.audio_rtp_inactivity_timer_millis_int"; - field public static final String KEY_CARRIER_VOLTE_ROAMING_AVAILABLE_BOOL = "imsvoice.carrier_volte_roaming_available_bool"; - field public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_CAPABILITY_INT = "imsvoice.codec_attribute_mode_change_capability_int"; - field public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_NEIGHBOR_INT = "imsvoice.codec_attribute_mode_change_neighbor_int"; - field public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_PERIOD_INT = "imsvoice.codec_attribute_mode_change_period_int"; - field public static final String KEY_CONFERENCE_FACTORY_URI_STRING = "imsvoice.conference_factory_uri_string"; - field public static final String KEY_CONFERENCE_SUBSCRIBE_TYPE_INT = "imsvoice.conference_subscribe_type_int"; - field public static final String KEY_DEDICATED_BEARER_WAIT_TIMER_MILLIS_INT = "imsvoice.dedicated_bearer_wait_timer_millis_int"; - field public static final String KEY_DTMFNB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.dtmfnb_payload_type_int_array"; - field public static final String KEY_DTMFWB_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.dtmfwb_payload_type_int_array"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_BANDWIDTH_INT = "imsvoice.evs_codec_attribute_bandwidth_int"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_BITRATE_INT_ARRAY = "imsvoice.evs_codec_attribute_bitrate_int_array"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_CHANNELS_INT = "imsvoice.evs_codec_attribute_channels_int"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_CH_AW_RECV_INT = "imsvoice.evs_codec_attribute_ch_aw_recv_int"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_CMR_INT = "imsvoice.codec_attribute_cmr_int"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_DTX_BOOL = "imsvoice.evs_codec_attribute_dtx_bool"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_DTX_RECV_BOOL = "imsvoice.evs_codec_attribute_dtx_recv_bool"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_HF_ONLY_INT = "imsvoice.evs_codec_attribute_hf_only_int"; - field public static final String KEY_EVS_CODEC_ATTRIBUTE_MODE_SWITCH_INT = "imsvoice.evs_codec_attribute_mode_switch_int"; - field public static final String KEY_EVS_PAYLOAD_DESCRIPTION_BUNDLE = "imsvoice.evs_payload_description_bundle"; - field public static final String KEY_EVS_PAYLOAD_TYPE_INT_ARRAY = "imsvoice.evs_payload_type_int_array"; - field public static final String KEY_INCLUDE_CALLER_ID_SERVICE_CODES_IN_SIP_INVITE_BOOL = "imsvoice.include_caller_id_service_codes_in_sip_invite_bool"; - field public static final String KEY_MINIMUM_SESSION_EXPIRES_TIMER_SEC_INT = "imsvoice.minimum_session_expires_timer_sec_int"; - field public static final String KEY_MO_CALL_REQUEST_TIMEOUT_MILLIS_INT = "imsvoice.mo_call_request_timeout_millis_int"; - field public static final String KEY_MULTIENDPOINT_SUPPORTED_BOOL = "imsvoice.multiendpoint_supported_bool"; - field public static final String KEY_OIP_SOURCE_FROM_HEADER_BOOL = "imsvoice.oip_source_from_header_bool"; - field public static final String KEY_PRACK_SUPPORTED_FOR_18X_BOOL = "imsvoice.prack_supported_for_18x_bool"; - field public static final String KEY_PREFIX = "imsvoice."; - 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_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"; - field public static final String KEY_SRVCC_TYPE_INT_ARRAY = "imsvoice.srvcc_type_int_array"; - field public static final String KEY_VOICE_ON_DEFAULT_BEARER_SUPPORTED_BOOL = "imsvoice.voice_on_default_bearer_supported_bool"; - field public static final String KEY_VOICE_QOS_PRECONDITION_SUPPORTED_BOOL = "imsvoice.voice_qos_precondition_supported_bool"; - 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_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 - field public static final int SESSION_REFRESH_METHOD_INVITE = 0; // 0x0 - field public static final int SESSION_REFRESH_METHOD_UPDATE_PREFERRED = 1; // 0x1 - } - - public static final class CarrierConfigManager.ImsVt { - field public static final String KEY_H264_PAYLOAD_DESCRIPTION_BUNDLE = "imsvt.h264_payload_description_bundle"; - field public static final String KEY_H264_PAYLOAD_TYPE_INT_ARRAY = "imsvt.h264_payload_type_int_array"; - field public static final String KEY_H264_VIDEO_CODEC_ATTRIBUTE_PROFILE_LEVEL_ID_STRING = "imsvt.h264_video_codec_attribute_profile_level_id_string"; - field public static final String KEY_PREFIX = "imsvt."; - field public static final String KEY_VIDEO_AS_BANDWIDTH_KBPS_INT = "imsvt.video_as_bandwidth_kbps_int"; - field public static final String KEY_VIDEO_CODEC_ATTRIBUTE_FRAME_RATE_INT = "imsvt.video_codec_attribute_frame_rate_int"; - field public static final String KEY_VIDEO_CODEC_ATTRIBUTE_PACKETIZATION_MODE_INT = "imsvt.video_codec_attribute_packetization_mode_int"; - field public static final String KEY_VIDEO_CODEC_ATTRIBUTE_RESOLUTION_INT_ARRAY = "imsvt.video_codec_attribute_resolution_int_array"; - field public static final String KEY_VIDEO_CODEC_CAPABILITY_PAYLOAD_TYPES_BUNDLE = "imsvt.video_codec_capability_payload_types_bundle"; - field public static final String KEY_VIDEO_ON_DEFAULT_BEARER_SUPPORTED_BOOL = "imsvt.video_on_default_bearer_supported_bool"; - field public static final String KEY_VIDEO_QOS_PRECONDITION_SUPPORTED_BOOL = "imsvt.video_qos_precondition_supported_bool"; - field public static final String KEY_VIDEO_RR_BANDWIDTH_BPS_INT = "imsvt.video_rr_bandwidth_bps_int"; - field public static final String KEY_VIDEO_RS_BANDWIDTH_BPS_INT = "imsvt.video_rs_bandwidth_bps_int"; - field public static final String KEY_VIDEO_RTCP_INACTIVITY_TIMER_MILLIS_INT = "imsvt.video_rtcp_inactivity_timer_millis_int"; - field public static final String KEY_VIDEO_RTP_DSCP_INT = "imsvt.video_rtp_dscp_int"; - field public static final String KEY_VIDEO_RTP_INACTIVITY_TIMER_MILLIS_INT = "imsvt.video_rtp_inactivity_timer_millis_int"; - } - - public static final class CarrierConfigManager.ImsWfc { - field public static final String KEY_EMERGENCY_CALL_OVER_EMERGENCY_PDN_BOOL = "imswfc.emergency_call_over_emergency_pdn_bool"; - field public static final String KEY_PIDF_SHORT_CODE_STRING_ARRAY = "imswfc.pidf_short_code_string_array"; - field public static final String KEY_PREFIX = "imswfc."; - } - public static final class CarrierConfigManager.Iwlan { field public static final int AUTHENTICATION_METHOD_CERT = 1; // 0x1 field public static final int AUTHENTICATION_METHOD_EAP_ONLY = 0; // 0x0 diff --git a/telephony/java/android/telephony/CarrierConfigManager.java b/telephony/java/android/telephony/CarrierConfigManager.java index fba3748dde71e..d604dc1d2c92b 100644 --- a/telephony/java/android/telephony/CarrierConfigManager.java +++ b/telephony/java/android/telephony/CarrierConfigManager.java @@ -37,7 +37,6 @@ import android.os.PersistableBundle; import android.os.RemoteException; import android.service.carrier.CarrierService; import android.telecom.TelecomManager; -import android.telephony.AccessNetworkConstants.AccessNetworkType; import android.telephony.data.DataCallResponse; import android.telephony.gba.TlsParams; import android.telephony.gba.UaSecurityProtocolIdentifier; @@ -4791,414 +4790,6 @@ public class CarrierConfigManager { public static final String KEY_RCS_REQUEST_RETRY_INTERVAL_MILLIS_LONG = KEY_PREFIX + "rcs_request_retry_interval_millis_long"; - /** SIP timer T1 as per 3GPP TS 24.229 Table 7.7.1 */ - public static final String KEY_SIP_TIMER_T1_MILLIS_INT = - KEY_PREFIX + "sip_timer_t1_millis_int"; - - /** SIP timer T2 as per 3GPP TS 24.229 Table 7.7.1 */ - public static final String KEY_SIP_TIMER_T2_MILLIS_INT = - KEY_PREFIX + "sip_timer_t2_millis_int"; - - /** SIP timer T4 as per 3GPP TS 24.229 Table 7.7.1 */ - public static final String KEY_SIP_TIMER_T4_MILLIS_INT = - KEY_PREFIX + "sip_timer_t4_millis_int"; - - /** SIP timer B as per 3GPP TS 24.229 Table 7.7.1 */ - public static final String KEY_SIP_TIMER_B_MILLIS_INT = - KEY_PREFIX + "sip_timer_b_millis_int"; - - /** SIP timer C as per 3GPP TS 24.229 Table 7.7.1 */ - public static final String KEY_SIP_TIMER_C_MILLIS_INT = - KEY_PREFIX + "sip_timer_c_millis_int"; - - /** SIP timer D as per 3GPP TS 24.229 Table 7.7.1 */ - public static final String KEY_SIP_TIMER_D_MILLIS_INT = - KEY_PREFIX + "sip_timer_d_millis_int"; - - /** SIP timer F as per 3GPP TS 24.229 Table 7.7.1 */ - public static final String KEY_SIP_TIMER_F_MILLIS_INT = - KEY_PREFIX + "sip_timer_f_millis_int"; - - /** SIP timer H as per 3GPP TS 24.229 Table 7.7.1 */ - public static final String KEY_SIP_TIMER_H_MILLIS_INT = - KEY_PREFIX + "sip_timer_h_millis_int"; - - /** SIP timer J as per 3GPP TS 24.229 Table 7.7.1 */ - public static final String KEY_SIP_TIMER_J_MILLIS_INT = - KEY_PREFIX + "sip_timer_j_millis_int"; - - /** Specifies the SIP Server default port. */ - public static final String KEY_SIP_SERVER_PORT_NUMBER_INT = - KEY_PREFIX + "sip_server_port_number_int"; - - /** - * Specify the “phone-context” parameter as defined in - * section 7.2A.10 in 3GPP TS 24.229. - */ - public static final String KEY_PHONE_CONTEXT_DOMAIN_NAME_STRING = - KEY_PREFIX + "phone_context_domain_name_string"; - - /** @hide */ - @IntDef({REQUEST_URI_FORMAT_TEL, REQUEST_URI_FORMAT_SIP}) - - public @interface RequestUriFormatType {} - - /** - * Request URI is of type TEL URI. - */ - public static final int REQUEST_URI_FORMAT_TEL = 0; - - /** - * Request URI is of type SIP URI. - */ - public static final int REQUEST_URI_FORMAT_SIP = 1; - - /** - * Specify whether the request URI is SIP URI - * {@link #REQUEST_URI_FORMAT_SIP} or - * TEL URI {@link #REQUEST_URI_FORMAT_TEL}. - */ - public static final String KEY_REQUEST_URI_TYPE_INT = - KEY_PREFIX + "request_uri_type_int"; - - /** - * Flag indicating whether Globally Routable User agent (GRUU) - * in supported HEADER is included or not. - * - *
Reference: RFC 5627. - */ - public static final String KEY_GRUU_ENABLED_BOOL = - KEY_PREFIX + "gruu_enabled_bool"; - - /** - * Flag indicating whether to keep/release IMS PDN in case of - * moving to non VOPS area. - * - *
if {@code True}, keep IMS PDN in case of moving to non VOPS area. - * if {@code false}, otherwise. - */ - public static final String KEY_KEEP_PDN_UP_IN_NO_VOPS_BOOL = - KEY_PREFIX + "keep_pdn_up_in_no_vops_bool"; - - /** @hide */ - @IntDef({ - IP_TYPE_IPV4V6, - IP_TYPE_IPV4, - IP_TYPE_IPV6 - }) - - public @interface IpType {} - - /** IP Type is IPV4V6 */ - public static final int IP_TYPE_IPV4V6 = 0; - - /** IP Type is IPV4 */ - public static final int IP_TYPE_IPV4 = 1; - - /** IP Type is IPV6 */ - public static final int IP_TYPE_IPV6 = 2; - - /** @hide */ - @IntDef({ - PREFERRED_TRANSPORT_UDP, - PREFERRED_TRANSPORT_TCP, - PREFERRED_TRANSPORT_DYNAMIC_UDP_TCP, - PREFERRED_TRANSPORT_TLS - }) - - public @interface PreferredTransportType {} - - /** Preferred Transport is always UDP. */ - public static final int PREFERRED_TRANSPORT_UDP = 0; - - /** Preferred Transport is always TCP. */ - public static final int PREFERRED_TRANSPORT_TCP = 1; - - /** - * Preferred Transport is both UDP and TCP and selected based - * on MTU size specified in {@link #KEY_IPV4_SIP_MTU_SIZE_CELLULAR_INT} - * and {@link KEY_IPV6_SIP_MTU_SIZE_CELLULAR_INT}. - * - *
Default transport is UDP. If message size is larger - * than MTU, then TCP shall be used. - */ - public static final int PREFERRED_TRANSPORT_DYNAMIC_UDP_TCP = 2; - - /** Preferred Transport is TLS. */ - public static final int PREFERRED_TRANSPORT_TLS = 3; - - /** - * Specify the preferred transport protocol for SIP messages. - * - *
Possible values are, - * {@link PREFERRED_TRANSPORT_UDP}, - * {@link PREFERRED_TRANSPORT_TCP}, - * {@link PREFERRED_TRANSPORT_DYNAMIC_UDP_TCP} - */ - public static final String KEY_SIP_PREFERRED_TRANSPORT_INT = - KEY_PREFIX + "sip_preferred_transport_int"; - - /** - * Specify the maximum IPV4 MTU size of SIP message on Cellular. - * - *
If {@link #KEY_SIP_PREFERRED_TRANSPORT_INT} is - * {@link #PREFERRED_TRANSPORT_DYNAMIC_UDP_TCP} and SIP message MTU size - * is more than this value, then SIP transport will be TCP, else the - * SIP transport is UDP. - */ - public static final String KEY_IPV4_SIP_MTU_SIZE_CELLULAR_INT = - KEY_PREFIX + "ipv4_sip_mtu_size_cellular_int"; - - /** - * Specify the maximum IPV6 MTU size of SIP message on Cellular. - * - *
If {@link #KEY_SIP_PREFERRED_TRANSPORT_INT} is - * {@link #PREFERRED_TRANSPORT_DYNAMIC_UDP_TCP} and SIP message MTU size - * is more than this value, then SIP transport will be TCP, else the - * SIP transport is UDP. - */ - public static final String KEY_IPV6_SIP_MTU_SIZE_CELLULAR_INT = - KEY_PREFIX + "ipv6_sip_mtu_size_cellular_int"; - - /** - * This config determines whether IMS PDN needs to be enabled - * when VOPS support is not available in both home and roaming scenarios. - * - *
This is applicable before IMS PDN is up, to decide whether - * IMS PDN needs to be enabled based on VOPS support in home/roaming. - * - *
Possible values are, - * {@link NETWORK_TYPE_HOME}, - * {@link NETWORK_TYPE_ROAMING} - * An empty array indicates IMS PDN depends on VOPS on both home - * and roaming scenarios. - */ - public static final String KEY_IMS_PDN_ENABLED_IN_NO_VOPS_SUPPORT_INT_ARRAY = - KEY_PREFIX + "ims_pdn_enabled_in_no_vops_support_int_array"; - - /** - * Flag indicating whether IPSec enabled for SIP messages. - * - *
Reference: 3GPP TS 33.203 and RFC 3329. - */ - public static final String KEY_SIP_OVER_IPSEC_ENABLED_BOOL = - KEY_PREFIX + "sip_over_ipsec_enabled_bool"; - - /** @hide */ - @IntDef({IPSEC_AUTHENTICATION_ALGORITHM_HMAC_MD5, IPSEC_AUTHENTICATION_ALGORITHM_HMAC_SHA1}) - - public @interface IpsecAuthenticationAlgorithmType {} - - /** IPSec Authentication algorithm is HMAC-MD5. see Annex H of TS 33.203 */ - public static final int IPSEC_AUTHENTICATION_ALGORITHM_HMAC_MD5 = 0; - - /** IPSec Authentication algorithm is HMAC-SHA1. see Annex H of TS 33.203 */ - public static final int IPSEC_AUTHENTICATION_ALGORITHM_HMAC_SHA1 = 1; - - /** - * List of supported IPSEC Authentication algorithms. - * - *
Possible values are, - * {@link IPSEC_AUTHENTICATION_ALGORITHM_HMAC_MD5}, - * {@link IPSEC_AUTHENTICATION_ALGORITHM_HMAC_SHA1} - */ - public static final String KEY_IPSEC_AUTHENTICATION_ALGORITHMS_INT_ARRAY = - KEY_PREFIX + "ipsec_authentication_algorithms_int_array"; - - /** @hide */ - @IntDef({ - IPSEC_ENCRYPTION_ALGORITHM_NULL, - IPSEC_ENCRYPTION_ALGORITHM_DES_EDE3_CBC, - IPSEC_ENCRYPTION_ALGORITHM_AES_CBC - }) - - public @interface IpsecEncryptionAlgorithmType {} - - /** IPSec Encryption algorithm is NULL. see Annex H of TS 33.203 */ - public static final int IPSEC_ENCRYPTION_ALGORITHM_NULL = 0; - - /** IPSec Encryption algorithm is DES_EDE3_CBC. see Annex H of TS 33.203 */ - public static final int IPSEC_ENCRYPTION_ALGORITHM_DES_EDE3_CBC = 1; - - /** IPSec Encryption algorithm is AES_CBC. see Annex H of TS 33.203 */ - public static final int IPSEC_ENCRYPTION_ALGORITHM_AES_CBC = 2; - - /** - * List of supported IPSEC encryption algorithms. - * - *
Possible values are, - * {@link IPSEC_ENCRYPTION_ALGORITHM_NULL}, - * {@link IPSEC_ENCRYPTION_ALGORITHM_DES_EDE3_CBC}, - * {@link IPSEC_ENCRYPTION_ALGORITHM_AES_CBC} - */ - public static final String KEY_IPSEC_ENCRYPTION_ALGORITHMS_INT_ARRAY = - KEY_PREFIX + "ipsec_encryption_algorithms_int_array"; - - /** - * Expiry timer for IMS Registration in seconds. - *
Reference: RFC 3261 Section 20.19. - */ - public static final String KEY_REGISTRATION_EXPIRY_TIMER_SEC_INT = - KEY_PREFIX + "registration_expiry_timer_sec_int"; - - /** Registration Retry Base-time as per RFC 5626 Section 4.5. */ - public static final String KEY_REGISTRATION_RETRY_BASE_TIMER_MILLIS_INT = - KEY_PREFIX + "registration_retry_base_timer_millis_int"; - - /** Registration Retry max-time as per RFC 5626 Section 4.5. */ - public static final String KEY_REGISTRATION_RETRY_MAX_TIMER_MILLIS_INT = - KEY_PREFIX + "registration_retry_max_timer_millis_int"; - - /** - * Flag indicating whether subscription to registration event package - * is supported or not. - */ - public static final String KEY_REGISTRATION_EVENT_PACKAGE_SUPPORTED_BOOL = - KEY_PREFIX + "registration_event_package_supported_bool"; - - /** - * Expiry timer for SUBSCRIBE in seconds. - *
Reference: RFC 3261 Section 20.19. - */ - public static final String KEY_REGISTRATION_SUBSCRIBE_EXPIRY_TIMER_SEC_INT = - KEY_PREFIX + "registration_subscribe_expiry_timer_sec_int"; - - /** @hide */ - @IntDef({ - GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_WIFI, - GEOLOCATION_PIDF_FOR_EMERGENCY_ON_WIFI, - GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_CELLULAR, - GEOLOCATION_PIDF_FOR_EMERGENCY_ON_CELLULAR - }) - - public @interface GeolocationPidfAllowedType {} - - /** - * Indicates geolocation PIDF XML needs to be included for - * normal/non-emergency call scenario on WiFi - * - *
Geolocation for normal/non-emergency call should only include - * country code. - */ - public static final int GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_WIFI = 1; - - /** - * Indicates geolocation PIDF XML needs to be included for emergency - * call scenario on WiFi - */ - public static final int GEOLOCATION_PIDF_FOR_EMERGENCY_ON_WIFI = 2; - - /** - * Indicates geolocation PIDF XML needs to be included for normal/non-emergency - * call scenario on Cellular - * - *
Geolocation for normal/non-emergency call should only include - * country code. - */ - public static final int GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_CELLULAR = 3; - - /** - * Indicates geolocation PIDF XML needs to be included for emergency - * call scenario on Cellular - */ - public static final int GEOLOCATION_PIDF_FOR_EMERGENCY_ON_CELLULAR = 4; - - /** - * List of cases where geolocation PIDF XML needs to be included in the - * SIP REGISTER over WiFi and Cellular. - * - *
Possible values are, - * {@link GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_WIFI}, - * {@link GEOLOCATION_PIDF_FOR_EMERGENCY_ON_WIFI}, - * {@link GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_CELLULAR}, - * {@link GEOLOCATION_PIDF_FOR_EMERGENCY_ON_CELLULAR} - * - *
An empty array indicates geolocation PIDF XML should not be included in - * the SIP REGISTER over WiFi and Cellular. - */ - public static final String KEY_GEOLOCATION_PIDF_IN_SIP_REGISTER_SUPPORT_INT_ARRAY = - KEY_PREFIX + "geolocation_pidf_in_sip_register_support_int_array"; - - /** - * List of cases where geolocation PIDF XML needs to be included in the - * SIP INVITE over WiFi and Cellular. - * - *
Possible values are, - * {@link GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_WIFI}, - * {@link GEOLOCATION_PIDF_FOR_EMERGENCY_ON_WIFI}, - * {@link GEOLOCATION_PIDF_FOR_NON_EMERGENCY_ON_CELLULAR}, - * {@link GEOLOCATION_PIDF_FOR_EMERGENCY_ON_CELLULAR} - * - *
An empty array indicates geolocation PIDF XML should not be included - * in the SIP INVITE over WiFi and Cellular. - */ - public static final String KEY_GEOLOCATION_PIDF_IN_SIP_INVITE_SUPPORT_INT_ARRAY = - KEY_PREFIX + "geolocation_pidf_in_sip_invite_support_int_array"; - - /** - * Specifies the IMS User Agent in template format. - * - *
Example: #MANUFACTURER#_#MODEL#_Android#AV#_#BUILD#". - * IMS Stack should internally substitute the tokens with the - * values from the respective android properties. - * - *
List of allowed tokens and the corresponding android properties are, - *
Vendor IMS Stack should strip any whitespace characters present - * in the android properties values before replacing the token. - * - *
An empty string is invalid as per IR92 section 2.6. This key is - * considered invalid if the format is violated. If the key is invalid or - * not configured, IMS stack should use internal default values. - */ - public static final String KEY_IMS_USER_AGENT_STRING = - KEY_PREFIX + "ims_user_agent_string"; - - /** @hide */ - @IntDef({ - NETWORK_TYPE_HOME, - NETWORK_TYPE_ROAMING - }) - - public @interface NetworkType {} - - /** Indicates HOME Network. */ - public static final int NETWORK_TYPE_HOME = 0; - - /** Indicates Roaming Network. */ - public static final int NETWORK_TYPE_ROAMING = 1; - - /** @hide */ - @IntDef({ - RTCP_INACTIVITY_ON_HOLD, - RTCP_INACTIVITY_ON_CONNECTED, - RTP_INACTIVITY_ON_CONNECTED, - E911_RTCP_INACTIVITY_ON_CONNECTED, - E911_RTP_INACTIVITY_ON_CONNECTED - }) - - public @interface MediaInactivityReason {} - - /** RTCP inactivity occurred when call is on HOLD. */ - public static final int RTCP_INACTIVITY_ON_HOLD = 0; - - /** RTCP inactivity occurred when call is connected. */ - public static final int RTCP_INACTIVITY_ON_CONNECTED = 1; - - /** RTP inactivity occurred when call is connected. */ - public static final int RTP_INACTIVITY_ON_CONNECTED = 2; - - /** E911 RTCP inactivity occurred when call is connected. */ - public static final int E911_RTCP_INACTIVITY_ON_CONNECTED = 3; - - /** E911 RTP inactivity occurred when call is connected. */ - public static final int E911_RTP_INACTIVITY_ON_CONNECTED = 4; - private Ims() {} private static PersistableBundle getDefaults() { @@ -5235,2159 +4826,6 @@ public class CarrierConfigManager { "+g.gsma.rcs.botversion=\"#=1,#=2\"", "+g.gsma.rcs.cpimext"}); - defaults.putBoolean(KEY_GRUU_ENABLED_BOOL, true); - defaults.putBoolean(KEY_SIP_OVER_IPSEC_ENABLED_BOOL, true); - defaults.putBoolean(KEY_KEEP_PDN_UP_IN_NO_VOPS_BOOL, false); - defaults.putBoolean(KEY_REGISTRATION_EVENT_PACKAGE_SUPPORTED_BOOL, true); - - defaults.putInt(KEY_SIP_TIMER_T1_MILLIS_INT, 2000); - defaults.putInt(KEY_SIP_TIMER_T2_MILLIS_INT, 16000); - defaults.putInt(KEY_SIP_TIMER_T4_MILLIS_INT, 17000); - defaults.putInt(KEY_SIP_TIMER_B_MILLIS_INT, 128000); - defaults.putInt(KEY_SIP_TIMER_C_MILLIS_INT, 210000); - defaults.putInt(KEY_SIP_TIMER_D_MILLIS_INT, 130000); - defaults.putInt(KEY_SIP_TIMER_F_MILLIS_INT, 128000); - defaults.putInt(KEY_SIP_TIMER_H_MILLIS_INT, 128000); - defaults.putInt(KEY_SIP_TIMER_J_MILLIS_INT, 128000); - defaults.putInt(KEY_SIP_SERVER_PORT_NUMBER_INT, 5060); - defaults.putInt(KEY_REQUEST_URI_TYPE_INT, REQUEST_URI_FORMAT_SIP); - defaults.putInt(KEY_SIP_PREFERRED_TRANSPORT_INT, PREFERRED_TRANSPORT_DYNAMIC_UDP_TCP); - defaults.putInt(KEY_IPV4_SIP_MTU_SIZE_CELLULAR_INT, 1500); - defaults.putInt(KEY_IPV6_SIP_MTU_SIZE_CELLULAR_INT, 1500); - defaults.putInt(KEY_REGISTRATION_EXPIRY_TIMER_SEC_INT, 600000); - defaults.putInt(KEY_REGISTRATION_RETRY_BASE_TIMER_MILLIS_INT, 30000); - defaults.putInt(KEY_REGISTRATION_RETRY_MAX_TIMER_MILLIS_INT, 1800000); - defaults.putInt(KEY_REGISTRATION_SUBSCRIBE_EXPIRY_TIMER_SEC_INT, 600000); - - defaults.putIntArray( - KEY_IPSEC_AUTHENTICATION_ALGORITHMS_INT_ARRAY, - new int[] { - IPSEC_AUTHENTICATION_ALGORITHM_HMAC_MD5, - IPSEC_AUTHENTICATION_ALGORITHM_HMAC_SHA1 - }); - defaults.putIntArray( - KEY_IPSEC_ENCRYPTION_ALGORITHMS_INT_ARRAY, - new int[] { - IPSEC_ENCRYPTION_ALGORITHM_NULL, - IPSEC_ENCRYPTION_ALGORITHM_DES_EDE3_CBC, - IPSEC_ENCRYPTION_ALGORITHM_AES_CBC - }); - defaults.putIntArray( - KEY_IMS_PDN_ENABLED_IN_NO_VOPS_SUPPORT_INT_ARRAY, - new int[] { - }); - defaults.putIntArray( - KEY_GEOLOCATION_PIDF_IN_SIP_REGISTER_SUPPORT_INT_ARRAY, - new int[] { - GEOLOCATION_PIDF_FOR_EMERGENCY_ON_WIFI - }); - defaults.putIntArray( - KEY_GEOLOCATION_PIDF_IN_SIP_INVITE_SUPPORT_INT_ARRAY, - new int[] { - GEOLOCATION_PIDF_FOR_EMERGENCY_ON_WIFI - }); - - defaults.putString(KEY_PHONE_CONTEXT_DOMAIN_NAME_STRING, ""); - defaults.putString(KEY_IMS_USER_AGENT_STRING, - "#MANUFACTURER#_#MODEL#_Android#AV#_#BUILD#"); - - return defaults; - } - } - - /** - * IMS Voice configs. This groups the configs required for IMS Voice - VoNR/VoLTE - * - *
Reference: IR.92 - */ - public static final class ImsVoice { - private ImsVoice() {} - - /** Prefix of all imsvoice.KEY_* constants. */ - public static final String KEY_PREFIX = "imsvoice."; - - /** - * Flag specifying whether VoLTE should be available when on - * roaming network. - * - *
If {@code false}: hard disabled. - * If {@code true}: then depends on availability, etc. - */ - public static final String KEY_CARRIER_VOLTE_ROAMING_AVAILABLE_BOOL = - KEY_PREFIX + "carrier_volte_roaming_available_bool"; - - /** - * Flag specifying whether to send vertical caller id service codes - * (*67 and *82) in the dialed string in the SIP:INVITE. - * - *
If {@code true}, vertical caller id service codes *67 and *82 - * will be sent in the dialed string in the SIP:INVITE. - * If {@code false}, *67 and *82 will be removed. - */ - public static final String KEY_INCLUDE_CALLER_ID_SERVICE_CODES_IN_SIP_INVITE_BOOL = - KEY_PREFIX + "include_caller_id_service_codes_in_sip_invite_bool"; - - /** - * Flag indicating whether Multi-end point setting is enabled or not. - */ - public static final String KEY_MULTIENDPOINT_SUPPORTED_BOOL = - KEY_PREFIX + "multiendpoint_supported_bool"; - - /** - * Flag indicating whether Supported header field with the option tag - * 'timer' is enabled or not. - * - *
If {@code true}, session timer support is available.{@code false} otherwise. - * - * Reference: RFC 4028 Section 3 - */ - public static final String KEY_SESSION_TIMER_SUPPORTED_BOOL = - KEY_PREFIX + "session_timer_supported_bool"; - - /** - * Session-expires header field expressed in seconds as per - * RFC 4028 Section 3. - * - *
This establishes the upper bound for the session refresh interval. - */ - public static final String KEY_SESSION_EXPIRES_TIMER_SEC_INT = - KEY_PREFIX + "session_expires_timer_sec_int"; - - /** - * Indicates the minimum value for the session interval in seconds. - * Represented as min-SE header field as per RFC 4028 Section 3. - * - *
This establishes the lower bound for the session refresh interval. - */ - public static final String KEY_MINIMUM_SESSION_EXPIRES_TIMER_SEC_INT = - KEY_PREFIX + "minimum_session_expires_timer_sec_int"; - - /** @hide */ - @IntDef({ - SESSION_REFRESHER_TYPE_UNKNOWN, - SESSION_REFRESHER_TYPE_UAC, - SESSION_REFRESHER_TYPE_UAS - }) - - public @interface SessionRefresherType {} - - /** - * Session Refresher entity is unknown. This means UE does not include the - * "refresher" parameter in the Session-Expires header field of - * the SIP INVITE request. - */ - public static final int SESSION_REFRESHER_TYPE_UNKNOWN = 0; - - /** - * Session Refresher entity is User Agent Client (UAC). - * - *
Type of "refresher" parameter in the Session-Expires header field - * of the SIP INVITE request is UAC. - */ - public static final int SESSION_REFRESHER_TYPE_UAC = 1; - - /** - * Session Refresher entity is User Agent Server (UAS). - * - *
Type of "refresher" parameter in the Session-Expires header field - * of the SIP INVITE request is UAS. - */ - public static final int SESSION_REFRESHER_TYPE_UAS = 2; - - /** - * Session Refresher entity as per RFC 4028 and IR.92 Section 2.2.8. - * - *
This determines, - * a) whether to include the "refresher" parameter - * b) Type of refresher" parameter - * in the Session-Expires header field of the SIP INVITE request. - * - *
Possible values are, - * {@link #SESSION_REFRESHER_TYPE_UNKNOWN}, - * {@link #SESSION_REFRESHER_TYPE_UAC}, - * {@link #SESSION_REFRESHER_TYPE_UAS} - */ - public static final String KEY_SESSION_REFRESHER_TYPE_INT = - KEY_PREFIX + "session_refresher_type_int"; - - /** - * Flag indicating whether PRACK must be enabled for all 18x messages. - * - *
If {@code false}, only 18x responses with SDP are sent reliably. - * If {@code true}, SIP 18x responses (other than SIP 183 response) - * are sent reliably. - */ - public static final String KEY_PRACK_SUPPORTED_FOR_18X_BOOL = - KEY_PREFIX + "prack_supported_for_18x_bool"; - - /** @hide */ - @IntDef({ - CONFERENCE_SUBSCRIBE_TYPE_IN_DIALOG, - CONFERENCE_SUBSCRIBE_TYPE_OUT_OF_DIALOG - }) - - public @interface ConferenceSubscribeType {} - - /** - * The SIP SUBSCRIBE to conference state events is sent in the - * SIP INVITE dialog between the UE and the conference server. - * - *
Reference: IR.92 Section 2.3.3. - */ - public static final int CONFERENCE_SUBSCRIBE_TYPE_IN_DIALOG = 0; - - /** - * The SIP SUBSCRIBE to conference state events is sent out of - * the SIP INVITE dialog between the UE and the conference server. - * - *
Reference: IR.92 Section 2.3.3. - */ - public static final int CONFERENCE_SUBSCRIBE_TYPE_OUT_OF_DIALOG = 1; - - /** - * This is used to specify whether the SIP SUBSCRIBE to conference state events, - * is sent in or out of the SIP INVITE dialog between the UE and the - * conference server. - * - *
Reference: IR.92 Section 2.3.3. - * - *
Possible values are, - * {@link #CONFERENCE_SUBSCRIBE_TYPE_IN_DIALOG}, - * {@link #CONFERENCE_SUBSCRIBE_TYPE_OUT_OF_DIALOG} - * - * An empty array indicates SUBSCRIBE to conference event package - * is not required. - */ - public static final String KEY_CONFERENCE_SUBSCRIBE_TYPE_INT = - KEY_PREFIX + "conference_subscribe_type_int"; - - /** - * Flag specifying whether QoS preconditions are supported during call setup. - * - *
If {@code true}: QoS Preconditions are supported during call setup and - * 'precondition' tag is included in the SIP INVITE header and precondition - * parameters are sent in SDP as required. - *
If {@code false}: QoS Preconditions are not supported during call setup. - * - *
Reference: 3GPP TS 24.229 - */ - public static final String KEY_VOICE_QOS_PRECONDITION_SUPPORTED_BOOL = - KEY_PREFIX + "voice_qos_precondition_supported_bool"; - - /** - * Flag specifying whether voice is allowed on default bearer. - * - *
If {@code true}: voice packets can be sent on default bearer. {@code false} otherwise. - */ - public static final String KEY_VOICE_ON_DEFAULT_BEARER_SUPPORTED_BOOL = - KEY_PREFIX + "voice_on_default_bearer_supported_bool"; - - /** - * Specifies the dedicated bearer wait time during call establishment. - * - *
If dedicated bearer is not established within this time and if - * {@link #KEY_VOICE_ON_DEFAULT_BEARER_SUPPORTED_BOOL} is false, then call setup would fail. - *
If dedicated bearer is not established within this time and if - * {@link #KEY_VOICE_ON_DEFAULT_BEARER_SUPPORTED_BOOL} is true, then the media is allowed - * on default bearer. - */ - public static final String KEY_DEDICATED_BEARER_WAIT_TIMER_MILLIS_INT = - KEY_PREFIX + "dedicated_bearer_wait_timer_millis_int"; - - /** @hide */ - @IntDef({ - BASIC_SRVCC_SUPPORT, - ALERTING_SRVCC_SUPPORT, - PREALERTING_SRVCC_SUPPORT, - MIDCALL_SRVCC_SUPPORT - }) - - public @interface SrvccType {} - - /** - * Indicates support for basic SRVCC, typically 1 active call - * as detailed in IR.92 Section A.3. - */ - public static final int BASIC_SRVCC_SUPPORT = 0; - - /** - * SRVCC access transfer for calls in alerting phase as per 3GPP 24.237 - * and IR.64 Section 4.4. - * Media feature tag used: g.3gpp.srvcc-alerting. - */ - public static final int ALERTING_SRVCC_SUPPORT = 1; - - /** - * SRVCC access transfer for calls in pre-alerting phase as per 3GPP 24.237. - * Media feature tag used: g.3gpp.ps2cs-srvcc-orig-pre-alerting. - */ - public static final int PREALERTING_SRVCC_SUPPORT = 2; - - /** - * SRVCC access transfer for calls in mid-call phase as per 3GPP 24.237. - * and IR.64 Section 4.4. - *
This means UE supports the MSC server assisted mid-call feature. - * Media feature tag used: g.3gpp.mid-call. - */ - public static final int MIDCALL_SRVCC_SUPPORT = 3; - - /** - * List of different SRVCC types supported as defined in 3GPP 24.237. - * - *
Possible values are, - * {@link #BASIC_SRVCC_SUPPORT}, - * {@link #ALERTING_SRVCC_SUPPORT}, - * {@link #PREALERTING_SRVCC_SUPPORT}, - * {@link #MIDCALL_SRVCC_SUPPORT} - * - *
Reference: IR.64, 3GPP 24.237, 3GPP 23.216 - */ - public static final String KEY_SRVCC_TYPE_INT_ARRAY = - KEY_PREFIX + "srvcc_type_int_array"; - - /** - * Specifies the ringing timer for Mobile terminated calls. - * - *
Ringing timer starts when the device sends SIP 180 Ringing in - * response to a received SIP INVITE. If Ringing timer expires, - * the device sends SIP 486 response. - */ - public static final String KEY_RINGING_TIMER_MILLIS_INT = - KEY_PREFIX + "ringing_timer_millis_int"; - - /** - * Specifies the ringback timer for Mobile originated calls. - * - *
Ringback timer starts when the device receives SIP 180 Ringing - * in response to its SIP INVITE. If Ringback timer expires, - * the device sends SIP CANCEL. - */ - public static final String KEY_RINGBACK_TIMER_MILLIS_INT = - KEY_PREFIX + "ringback_timer_millis_int"; - - /** - * Specifies the timeout value for RTP inactivity for audio media. - *
On timer expiry, call will end. - * See {@link #KEY_AUDIO_INACTIVITY_CALL_END_REASONS_INT_ARRAY} for more - * details. - *
Value of 0 means this timer is not enabled. - */ - public static final String KEY_AUDIO_RTP_INACTIVITY_TIMER_MILLIS_INT = - KEY_PREFIX + "audio_rtp_inactivity_timer_millis_int"; - - /** - * Specifies the timeout value for RTCP inactivity for audio media. - *
On timer expiry, call will end. - * See {@link #KEY_AUDIO_INACTIVITY_CALL_END_REASONS_INT_ARRAY} for more - * details. - *
Value of 0 means this timer is not enabled. - */ - public static final String KEY_AUDIO_RTCP_INACTIVITY_TIMER_MILLIS_INT = - KEY_PREFIX + "audio_rtcp_inactivity_timer_millis_int"; - - /** - * Used to specify the conference factory URI. - * - *
If this is empty, then conference URI is generated from MCC/MNC as - * specified in clause 13.10 of 3GPP 23.003. - */ - public static final String KEY_CONFERENCE_FACTORY_URI_STRING = - KEY_PREFIX + "conference_factory_uri_string"; - - /** @hide */ - @IntDef({ - SESSION_REFRESH_METHOD_INVITE, - SESSION_REFRESH_METHOD_UPDATE_PREFERRED - }) - - public @interface SessionRefreshMethod {} - - /** - * SIP INVITE is used for Session Refresh - */ - public static final int SESSION_REFRESH_METHOD_INVITE = 0; - - /** - * Both SIP INVITE and UPDATE are used for session refresh. - * - *
SIP UPDATE will be used if UPDATE is in 'Allow' header. - * If UPDATE is not in 'Allow' header, then INVITE will be used. - */ - public static final int SESSION_REFRESH_METHOD_UPDATE_PREFERRED = 1; - - /** - * This is used to specify the method used for session refresh. - * - *
Possible values are, - * {@link #SESSION_REFRESH_METHOD_INVITE}, - * {@link #SESSION_REFRESH_METHOD_UPDATE_PREFERRED} - */ - public static final String KEY_SESSION_REFRESH_METHOD_INT = - KEY_PREFIX + "session_refresh_method_int"; - - /** - * Flag specifying whether the 'From' header field is used for determination of - * the originating party identity in Originating Identification Presentation(OIP) - * service. - * - *
If {@code true}: Indicates that the 'From' header field is used for - * determination of the originating party identity in OIP. - * {@code false} otherwise. - */ - public static final String KEY_OIP_SOURCE_FROM_HEADER_BOOL = - KEY_PREFIX + "oip_source_from_header_bool"; - - /** - * Specifies the timer value for INVITE to the first 1xx response - * (including 100 trying). If no response is received at timer expiry, - * call is redialed over CS. - * - *
Reference: 24.173 Table L.1 - */ - public static final String KEY_MO_CALL_REQUEST_TIMEOUT_MILLIS_INT = - KEY_PREFIX + "mo_call_request_timeout_millis_int"; - - /** - * List of various reasons of media inactivity for which - * voice/emergency call will end. - * - *
Possible values are, - * {@link Ims#RTCP_INACTIVITY_ON_HOLD}, - * {@link Ims#RTCP_INACTIVITY_ON_CONNECTED}, - * {@link Ims#RTP_INACTIVITY_ON_CONNECTED} - * {@link Ims#E911_RTCP_INACTIVITY_ON_CONNECTED}, - * {@link Ims#E911_RTP_INACTIVITY_ON_CONNECTED} - */ - public static final String KEY_AUDIO_INACTIVITY_CALL_END_REASONS_INT_ARRAY = - KEY_PREFIX + "audio_inactivity_call_end_reasons_int_array"; - - /** - * Specifies the AS (Application Specific) SDP modifier for audio media. - * - *
This value is expressed in kilobits per second. - * Reference: RFC 3556 Section 2. - */ - public static final String KEY_AUDIO_AS_BANDWIDTH_KBPS_INT = - KEY_PREFIX + "audio_as_bandwidth_kbps_int"; - - /** - * Specifies the RS SDP modifier for audio media. This indicates the RTCP - * bandwidth allocated to active data senders for audio media. - * - *
This value is expressed in bits per second. - * Reference: RFC 3556 Section 2. - */ - public static final String KEY_AUDIO_RS_BANDWIDTH_BPS_INT = - KEY_PREFIX + "audio_rs_bandwidth_bps_int"; - - /** - * Specifies the RR SDP modifier for audio media. This indicates the RTCP - * bandwidth allocated to receivers for audio media. - * - *
This value is expressed in bits per second. - * Reference: RFC 3556 Section 2. - */ - public static final String KEY_AUDIO_RR_BANDWIDTH_BPS_INT = - KEY_PREFIX + "audio_rr_bandwidth_bps_int"; - - /** - * Specifies the Audio Codec capability. This contains a list of payload types - * representing different audio codec instances. - * - *
The priority of the codecs is EVS, AMRWB, AMRNB, DTMF WB, DTMF NB - * from highest to lowest. In each individual codec, the priority is determined - * by the order of the payload types from highest to lowest. - * - *
Possible keys in this bundle are, - *
To specify payload descriptions for each of the audio payload types, see - *
Payload type is an integer in dynamic payload type range 96-127 - * as per RFC RFC 3551 Section 6. - */ - public static final String KEY_EVS_PAYLOAD_TYPE_INT_ARRAY = - KEY_PREFIX + "evs_payload_type_int_array"; - - /** - * A list of integers representing the different payload types - * in AMR-WB codec in priority order from highest to lowest. - *
Payload type is an integer in dynamic payload type range 96-127 - * as per RFC RFC 3551 Section 6. - */ - public static final String KEY_AMRWB_PAYLOAD_TYPE_INT_ARRAY = - KEY_PREFIX + "amrwb_payload_type_int_array"; - - /** - * A list of integers representing the different payload types - * in AMR-NB codec in priority order from highest to lowest. - *
Payload type is an integer in dynamic payload type range 96-127 - * as per RFC RFC 3551 Section 6. - */ - public static final String KEY_AMRNB_PAYLOAD_TYPE_INT_ARRAY = - KEY_PREFIX + "amrnb_payload_type_int_array"; - - /** - * A list of integers representing the different payload types - * in DTMF WB codec in priority order from highest to lowest. - *
Payload type is an integer in dynamic payload type range 96-127 - * as per RFC RFC 3551 Section 6. - */ - public static final String KEY_DTMFWB_PAYLOAD_TYPE_INT_ARRAY = - KEY_PREFIX + "dtmfwb_payload_type_int_array"; - - /** - * A list of integers representing the different payload types - * in DTMF NB codec in priority order from highest to lowest. - *
Payload type is an integer in dynamic payload type range 96-127 - * as per RFC RFC 3551 Section 6. - */ - public static final String KEY_DTMFNB_PAYLOAD_TYPE_INT_ARRAY = - KEY_PREFIX + "dtmfnb_payload_type_int_array"; - - /** @hide */ - @IntDef({ - BANDWIDTH_EFFICIENT, - OCTET_ALIGNED - }) - - public @interface AmrPayloadFormat {} - - /** AMR NB/WB Payload format is bandwidth-efficient. */ - public static final int BANDWIDTH_EFFICIENT = 0; - - /** AMR NB/WB Payload format is octet-aligned. */ - public static final int OCTET_ALIGNED = 1; - - /** - * Specifies the payload format of the AMR-NB/AMR-WB codec. - * - *
Possible values are, - * {@link #BANDWIDTH_EFFICIENT}, - * {@link #OCTET_ALIGNED} - - *
If value is not specified, payload format is - * {@link #BANDWIDTH_EFFICIENT}. - * - *
Reference: RFC 4867 Section 8.1. - */ - public static final String KEY_AMR_CODEC_ATTRIBUTE_PAYLOAD_FORMAT_INT = - KEY_PREFIX + "amr_codec_attribute_payload_format_int"; - - /** - * Restricts the active mode set to a subset of all modes in the codec. - * - *
This attribute is optional. If value is set, then session mode - * set is restricted to the modes specified in this list. If this value - * is not specified, then all available modes in the codec are allowed. - * This attribute is applicable for AMR-WB, AMR-NB, - * and EVS codec (operating in AMR-WB IO Mode). - * - *
Possible values are subset of, - * [0,1,2,3,4,5,6,7,8] - AMRWB with the modes representing nine speech codec modes - * with bit rates of 6.6, 8.85, 12.65, 14.25, 15.85, 18.25, 19.85, 23.05, 23.85 kbps. - * [0,1,2,3,4,5,6,7] - AMRNB with the modes representing eight speech codec modes - * with bit rates of 4.75, 5.15, 5.90, 6.70, 7.40, 7.95, 10.2, 12.2 kbps. - * - *
If value is not specified, then it means device supports all - * modes in the codec but not included in SDP. - * - *
Reference: RFC 4867 Section 8.1, 3GPP 26.445 A.3.1 - */ - public static final String KEY_AMR_CODEC_ATTRIBUTE_MODESET_INT_ARRAY = - KEY_PREFIX + "amr_codec_attribute_modeset_int_array"; - - /** - * Specifies the codec attributes of different payload types in - * the AMR NarrowBand (AMR-NB) codec. - * - *
The keys in this bundle are payload types specified - * in {@link #KEY_AMRNB_PAYLOAD_TYPE_INT_ARRAY}. - * - *
Codec attributes allowed as part of AMR-NB codec bundle are, - *
If this bundle is not configured and AMRNB payload type is added - * in {@link #KEY_AMRNB_PAYLOAD_TYPE_INT_ARRAY}, then default - * values as in the individual codec attribute to be used - * for that payload type. - */ - public static final String KEY_AMRNB_PAYLOAD_DESCRIPTION_BUNDLE = - KEY_PREFIX + "amrnb_payload_description_bundle"; - - /** - * Specifies the codec attributes of different payload types in - * the AMR WideBand (AMR-WB) codec. - * - *
The keys in this bundle are payload types specified - * in {@link #KEY_AMRWB_PAYLOAD_TYPE_INT_ARRAY}. - * - *
Codec attributes allowed as part of AMR-NB codec bundle are, - *
If this bundle is not configured and AMRWB payload type is added - * in {@link #KEY_AMRWB_PAYLOAD_TYPE_INT_ARRAY}, then default - * values as in the individual codec attribute to be used - * for that payload type. - */ - public static final String KEY_AMRWB_PAYLOAD_DESCRIPTION_BUNDLE = - KEY_PREFIX + "amrwb_payload_description_bundle"; - - /** @hide */ - @IntDef({ - EVS_OPERATIONAL_MODE_PRIMARY, - EVS_OPERATIONAL_MODE_AMRWB_IO - }) - - public @interface EvsOperationalMode {} - - /** Indicates the EVS primary mode. 3GPP 26.445 Section 3.1 */ - public static final int EVS_OPERATIONAL_MODE_PRIMARY = 0; - - /** Indicates the EVS AMR-WB IO mode. 3GPP 26.445 Section 3.1 */ - public static final int EVS_OPERATIONAL_MODE_AMRWB_IO = 1; - - /** - * Specifies if the EVS mode used is EVS primary mode - * or EVS AMR-WB IO mode. - * - *
Possible values are, - * {@link #EVS_OPERATIONAL_MODE_PRIMARY}, - * {@link #EVS_OPERATIONAL_MODE_AMRWB_IO} - * - *
If this is not present, then {@link EVS_OPERATIONAL_MODE_PRIMARY} is used. - *
Reference: 3GPP 26.445 Section 3.1. - */ - public static final String KEY_EVS_CODEC_ATTRIBUTE_MODE_SWITCH_INT = - KEY_PREFIX + "evs_codec_attribute_mode_switch_int"; - - /** @hide */ - @IntDef({ - EVS_ENCODED_BW_TYPE_NB, - EVS_ENCODED_BW_TYPE_WB, - EVS_ENCODED_BW_TYPE_SWB, - EVS_ENCODED_BW_TYPE_FB, - EVS_ENCODED_BW_TYPE_NB_WB, - EVS_ENCODED_BW_TYPE_NB_WB_SWB, - EVS_ENCODED_BW_TYPE_NB_WB_SWB_FB, - EVS_ENCODED_BW_TYPE_WB_SWB, - EVS_ENCODED_BW_TYPE_WB_SWB_FB - }) - - public @interface EvsEncodedBwType {} - - /** - * EVS encoded Bandwidth is Narrow Band (NB). - * Reference: 3GPP 26.441 Table 1. - */ - public static final int EVS_ENCODED_BW_TYPE_NB = 0; - - /** - * EVS encoded Bandwidth is Wide Band (WB). - * Reference: 3GPP 26.441 Table 1. - */ - public static final int EVS_ENCODED_BW_TYPE_WB = 1; - - /** - * EVS encoded Bandwidth is Super WideBand (SWB). - * Reference: 3GPP 26.441 Table 1. - */ - public static final int EVS_ENCODED_BW_TYPE_SWB = 2; - - /** - * EVS encoded Bandwidth is Full Band (FB). - * Reference: 3GPP 26.441 Table 1. - */ - public static final int EVS_ENCODED_BW_TYPE_FB = 3; - - /** - * EVS encoded Bandwidth is in the range NB,WB. - * Reference: 3GPP 26.441 Table 1. - */ - public static final int EVS_ENCODED_BW_TYPE_NB_WB = 4; - - /** - * EVS encoded Bandwidth is in the range NB,WB,SWB. - * Reference: 3GPP 26.441 Table 1. - */ - public static final int EVS_ENCODED_BW_TYPE_NB_WB_SWB = 5; - - /** - * EVS encoded Bandwidth is in the range NB,WB,SWB,FB. - * Reference: 3GPP 26.441 Table 1. - */ - public static final int EVS_ENCODED_BW_TYPE_NB_WB_SWB_FB = 6; - - /** - * EVS encoded Bandwidth is in the range WB,SWB. - * Reference: 3GPP 26.441 Table 1. - */ - public static final int EVS_ENCODED_BW_TYPE_WB_SWB = 7; - - /** - * EVS encoded Bandwidth is in the range WB,SWB,FB. - * Reference: 3GPP 26.441 Table 1. - */ - public static final int EVS_ENCODED_BW_TYPE_WB_SWB_FB = 8; - - /** - * Specifies the EVS codec encoding bandwidth options. - * - * Possible values are, - * {@link #EVS_ENCODED_BW_TYPE_NB}, - * {@link #EVS_ENCODED_BW_TYPE_WB}, - * {@link #EVS_ENCODED_BW_TYPE_SWB}, - * {@link #EVS_ENCODED_BW_TYPE_FB}, - * {@link #EVS_ENCODED_BW_TYPE_NB_WB}, - * {@link #EVS_ENCODED_BW_TYPE_NB_WB_SWB}, - * {@link #EVS_ENCODED_BW_TYPE_NB_WB_SWB_FB}, - * {@link #EVS_ENCODED_BW_TYPE_WB_SWB}, - * {@link #EVS_ENCODED_BW_TYPE_WB_SWB_FB} - * - * If this key is not specified, then the behavior is same as - * value {@link #EVS_ENCODED_BW_TYPE_NB_WB_SWB} - * - *
Reference: 3GPP 26.441 Table 1. - */ - public static final String KEY_EVS_CODEC_ATTRIBUTE_BANDWIDTH_INT = - KEY_PREFIX + "evs_codec_attribute_bandwidth_int"; - - /** @hide */ - @IntDef({ - EVS_PRIMARY_MODE_BITRATE_5_9_KBPS, - EVS_PRIMARY_MODE_BITRATE_7_2_KBPS, - EVS_PRIMARY_MODE_BITRATE_8_0_KBPS, - EVS_PRIMARY_MODE_BITRATE_9_6_KBPS, - EVS_PRIMARY_MODE_BITRATE_13_2_KBPS, - EVS_PRIMARY_MODE_BITRATE_16_4_KBPS, - EVS_PRIMARY_MODE_BITRATE_24_4_KBPS, - EVS_PRIMARY_MODE_BITRATE_32_0_KBPS, - EVS_PRIMARY_MODE_BITRATE_48_0_KBPS, - EVS_PRIMARY_MODE_BITRATE_64_0_KBPS, - EVS_PRIMARY_MODE_BITRATE_96_0_KBPS, - EVS_PRIMARY_MODE_BITRATE_128_0_KBPS - }) - - public @interface EvsPrimaryModeBitRate {} - - /** EVS primary mode with bitrate 5.9 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_5_9_KBPS = 0; - - /** EVS primary mode with bitrate 7.2 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_7_2_KBPS = 1; - - /** EVS primary mode with bitrate 8.0 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_8_0_KBPS = 2; - - /** EVS primary mode with bitrate 9.6 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_9_6_KBPS = 3; - - /** EVS primary mode with bitrate 13.2 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_13_2_KBPS = 4; - - /** EVS primary mode with bitrate 16.4 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_16_4_KBPS = 5; - - /** EVS primary mode with bitrate 24.4 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_24_4_KBPS = 6; - - /** EVS primary mode with bitrate 32.0 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_32_0_KBPS = 7; - - /** EVS primary mode with bitrate 48.0 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_48_0_KBPS = 8; - - /** EVS primary mode with bitrate 64.0 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_64_0_KBPS = 9; - - /** EVS primary mode with bitrate 96.0 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_96_0_KBPS = 10; - - /** EVS primary mode with bitrate 128.0 kbps */ - public static final int EVS_PRIMARY_MODE_BITRATE_128_0_KBPS = 11; - - /** - * Specifies the range of source codec bit-rate for EVS Primary mode - * in the session. This is expressed in kilobits per second and - * applicable for both the send and the receive directions. - * - *
The range is specified as integer aray of size 2, - * represented as [low, high], where low <= high - * - *
Possible values for low and high are, - * {@link #EVS_PRIMARY_MODE_BITRATE_5_9_KBPS}, - * {@link #EVS_PRIMARY_MODE_BITRATE_7_2_KBPS}, - * {@link #EVS_PRIMARY_MODE_BITRATE_8_0_KBPS}, - * {@link #EVS_PRIMARY_MODE_BITRATE_9_6_KBPS}, - * {@link #EVS_PRIMARY_MODE_BITRATE_13_2_KBPS}, - * {@link #EVS_PRIMARY_MODE_BITRATE_16_4_KBPS}, - * {@link #EVS_PRIMARY_MODE_BITRATE_24_4_KBPS}, - * {@link #EVS_PRIMARY_MODE_BITRATE_32_0_KBPS}, - * {@link #EVS_PRIMARY_MODE_BITRATE_48_0_KBPS}, - * {@link #EVS_PRIMARY_MODE_BITRATE_64_0_KBPS}, - * {@link #EVS_PRIMARY_MODE_BITRATE_96_0_KBPS}, - * {@link #EVS_PRIMARY_MODE_BITRATE_128_0_KBPS} - * - * If this key is not specified, then the behavior is same as - * value {@link #EVS_PRIMARY_MODE_BITRATE_24_4_KBPS} - * - *
Reference: 3GPP 26.445 Section A.3.1 - */ - public static final String KEY_EVS_CODEC_ATTRIBUTE_BITRATE_INT_ARRAY = - KEY_PREFIX + "evs_codec_attribute_bitrate_int_array"; - - /** - * Specifies the Channel aware mode (ch-aw-recv) for the receive direction. - * This is applicable for EVS codec. - * - *
Permissible values are -1, 0, 2, 3, 5, and 7. - * If this key is not specified, then the behavior is same as value 0 - * (channel aware mode disabled). - *
If this key is configured, then device is expected to send - * this parameter in the SDP offer. - * - *
Reference: 3GPP TS 26.445 section 4.4.5, 3GPP 26.445 Section A.3.1 - */ - public static final String KEY_EVS_CODEC_ATTRIBUTE_CH_AW_RECV_INT = - KEY_PREFIX + "evs_codec_attribute_ch_aw_recv_int"; - - /** - * Specifies whether to limit the session to header-full format. - * This applies to both directions in the session. This attribute - * is applicable for EVS codec. - * - *
Permissible values are 0, 1 - * If hf-only is 1, only Header-Full format is used and hf-only is - * included in the SDP. - *
If hf-only is 0, both Compact and Header-Full formats are used - * and hf-only is included in the SDP. - *
If this key is not present, then both Compact - * and Header-Full formats are used and hf-only is not included in - * the SDP. - *
If this key is configured, then device is expected to send - * this parameter in the SDP offer if operator required it. - * - *
Reference: 3GPP 26.445 Section A.3.1. - */ - public static final String KEY_EVS_CODEC_ATTRIBUTE_HF_ONLY_INT = - KEY_PREFIX + "evs_codec_attribute_hf_only_int"; - - /** - * Specifies whether DTX (Discontinuous transmission) is enabled - * or not. This applies to both directions in the session. - * This attribute is applicable for EVS codec and can be used - * in both EVS Primary mode and EVS AMR-WB IO mode. - * - *
If {@code true}: Indicates DTX is enabled. - * If {@code false}: Indicates DTX is disabled. - * - *
If this is not present, then default value of {@code true} - * will apply. - *
Reference: 3GPP TS 26.445 Section A.3.1. - */ - public static final String KEY_EVS_CODEC_ATTRIBUTE_DTX_BOOL = - KEY_PREFIX + "evs_codec_attribute_dtx_bool"; - - /** - * This is used if further restriction is required on DTX in the - * receive direction. This attribute is applicable for EVS codec - * and can be used in both EVS Primary mode and EVS AMR-WB IO mode. - * - *
If this value is true or not present, then DTX setting is - * dependent on {@link #KEY_EVS_CODEC_ATTRIBUTE_DTX_BOOL}. - * - *
If this is not present, then default value of {@code true} - * will apply. - * - *
Reference: 3GPP TS 26.445 Section A.3.1. - */ - public static final String KEY_EVS_CODEC_ATTRIBUTE_DTX_RECV_BOOL = - KEY_PREFIX + "evs_codec_attribute_dtx_recv_bool"; - - /** - * Specifies the number of audio channels. - * If this is not present, then default value of 1 will apply. - * - *
Reference: RFC 3551 - */ - public static final String KEY_EVS_CODEC_ATTRIBUTE_CHANNELS_INT = - KEY_PREFIX + "evs_codec_attribute_channels_int"; - - /** - * Indicates whether the Codec Mode Request (CMR) is supported - * for the session. - * This attribute is applicable for EVS codec in Primary Mode only. - * - *
Possible values are -1, 0, 1. If this key is not present, - * then behavior as per value 0 is applicable. - * - *
Reference: 3GPP 26.445 Section A.3.1, 3GPP 26.114 Table 6.2a - */ - public static final String KEY_EVS_CODEC_ATTRIBUTE_CMR_INT = - KEY_PREFIX + "codec_attribute_cmr_int"; - - /** - * Specifies the number of frame-blocks. This indicates the frame-block period - * at which codec mode changes are allowed for the sender. This attribute is - * applicable for EVS codec in AMR-WB IO mode and AMR-WB. - * - *
Possible values are 1, 2. - * If the key is not present, behavior as per value 1 is applicable and this - * parameter is not included in SDP. - * - *
Reference: RFC 4867 Section 8.1. - */ - public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_PERIOD_INT = - KEY_PREFIX + "codec_attribute_mode_change_period_int"; - - /** - * Specifies if the client is capable to transmit with a restricted mode - * change period. This attribute is applicable for EVS codec in - * AMR-WB IO mode and AMR-WB. - * - *
Possible values are 1, 2. If this key is not present, - * then behavior as per value 1 is applicable and this - * parameter is not included in SDP. - * - *
Reference: RFC 4867 Section 8.1. - */ - public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_CAPABILITY_INT = - KEY_PREFIX + "codec_attribute_mode_change_capability_int"; - - /** - * Specifies the allowed mode changes for the sender in the active mode set. - * This attribute is applicable for EVS codec in AMR-WB IO mode - * and AMR-WB. - * - *
Possible values are 0, 1. If value is 1, then the sender should only - * perform mode changes to the neighboring modes in the active codec mode set. - * If value is 0, then mode changes between any two modes - * in the active codec mode set is allowed. - * If the key is not present, behavior as per value 0 is applicable and this - * parameter is not included in SDP. - * - *
Reference: RFC 4867 Section 8.1. - */ - public static final String KEY_CODEC_ATTRIBUTE_MODE_CHANGE_NEIGHBOR_INT = - KEY_PREFIX + "codec_attribute_mode_change_neighbor_int"; - - /** - * Specifies the codec attributes of different payload types in - * the EVS codec. - * - *
The keys in this bundle are payload types specified - * in {@link #KEY_EVS_PAYLOAD_TYPE_INT_ARRAY}. - * - *
Codec attributes allowed as part of EVS codec are, - *
If {@code true}: SMS over IMS support available. - * {@code false}: otherwise. - */ - public static final String KEY_SMS_OVER_IMS_SUPPORTED_BOOL = - KEY_PREFIX + "sms_over_ims_supported_bool"; - - /** - * Flag specifying whether to allow SMS CSFB in case of - * SMS over PS failure. - * - *
If {@code true}: allow SMS CSFB in case of SMS over PS failure. - * {@code false} otherwise. - */ - public static final String KEY_SMS_CSFB_RETRY_ON_FAILURE_BOOL = - KEY_PREFIX + "sms_csfb_retry_on_failure_bool"; - - /** @hide */ - @IntDef({ - SMS_FORMAT_3GPP, - SMS_FORMAT_3GPP2 - }) - - public @interface SmsFormat {} - - /** SMS format is 3GPP. */ - public static final int SMS_FORMAT_3GPP = 0; - - /** SMS format is 3GPP2. */ - public static final int SMS_FORMAT_3GPP2 = 1; - - /** - * Specifies the SMS over IMS format. - * - *
Possible values are, - * {@link #SMS_FORMAT_3GPP}, - * {@link #SMS_FORMAT_3GPP2} - */ - public static final String KEY_SMS_OVER_IMS_FORMAT_INT = - KEY_PREFIX + "sms_over_ims_format_int"; - - /** - * List of different RAT technologies on which SMS over IMS - * is supported. - * - *
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_SMS_OVER_IMS_SUPPORTED_RATS_INT_ARRAY = - KEY_PREFIX + "sms_over_ims_supported_rats_int_array"; - - private static PersistableBundle getDefaults() { - PersistableBundle defaults = new PersistableBundle(); - defaults.putBoolean(KEY_SMS_OVER_IMS_SUPPORTED_BOOL, true); - defaults.putBoolean(KEY_SMS_CSFB_RETRY_ON_FAILURE_BOOL, true); - - defaults.putInt(KEY_SMS_OVER_IMS_FORMAT_INT, SMS_FORMAT_3GPP); - - defaults.putIntArray( - KEY_SMS_OVER_IMS_SUPPORTED_RATS_INT_ARRAY, - new int[] { - AccessNetworkType.EUTRAN, - AccessNetworkType.IWLAN - }); - - return defaults; - } - } - - /** - * IMS RTT configs. This groups the configs specific for text media, - * RTT (Real Time Text). - */ - public static final class ImsRtt { - private ImsRtt() {} - - /** Prefix of all imsrtt.KEY_* constants. */ - public static final String KEY_PREFIX = "imsrtt."; - - /** - * Flag specifying whether text media is allowed on default bearer. - * - *
If {@code true}: text media can be sent on default bearer. - * {@code false} otherwise. - */ - public static final String KEY_TEXT_ON_DEFAULT_BEARER_SUPPORTED_BOOL = - KEY_PREFIX + "text_on_default_bearer_supported_bool"; - - /** - * Flag specifying whether QoS preconditions are supported for text. - * - *
If {@code true}: QoS Preconditions are supported. - * {@code false} otherwise. - *
Reference: 3GPP TS 24.229 - */ - public static final String KEY_TEXT_QOS_PRECONDITION_SUPPORTED_BOOL = - KEY_PREFIX + "text_qos_precondition_supported_bool"; - - /** - * Specifies the AS (Application Specific) SDP modifier for text media. - * - *
Expressed in kilobits per second as per RFC 3556 Section 2. - */ - public static final String KEY_TEXT_AS_BANDWIDTH_KBPS_INT = - KEY_PREFIX + "text_as_bandwidth_kbps_int"; - - /** - * Specifies the RS (RTCP bandwidth-Sender) SDP modifier for text media. - * - *
This indicates the RTCP bandwidth allocated to active data senders - * for text media. - * - *
Expressed in bits per second as per RFC 3556 Section 2. - */ - public static final String KEY_TEXT_RS_BANDWIDTH_BPS_INT = - KEY_PREFIX + "text_rs_bandwidth_bps_int"; - - /** - * Specifies the RR (RTCP bandwidth-Receiver) SDP modifier for - * text media. - * - *
This indicates the RTCP bandwidth allocated to receivers - * for text media. - * - *
Expressed in bits per second as per RFC 3556 Section 2. - */ - 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. - * - *
Possible values are, - *
Possible keys in this bundle are, - *
Payload type is an integer in dynamic payload type range 96-127 - * as per RFC RFC 3551 Section 6. - */ - public static final String KEY_T140_PAYLOAD_TYPE_INT = - KEY_PREFIX + "t140_payload_type_int"; - - /** Integer representing payload type for RED/redundancy codec. - *
Payload type is an integer in dynamic payload type range 96-127 - * as per RFC RFC 3551 Section 6. - */ - public static final String KEY_RED_PAYLOAD_TYPE_INT = - KEY_PREFIX + "red_payload_type_int"; - - private static PersistableBundle getDefaults() { - PersistableBundle defaults = new PersistableBundle(); - defaults.putBoolean(KEY_TEXT_ON_DEFAULT_BEARER_SUPPORTED_BOOL, false); - defaults.putBoolean(KEY_TEXT_QOS_PRECONDITION_SUPPORTED_BOOL, true); - - defaults.putInt(KEY_TEXT_AS_BANDWIDTH_KBPS_INT, 4); - 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( - KEY_RED_PAYLOAD_TYPE_INT, - 112); - - text_codec_capability_payload_types.putInt( - KEY_T140_PAYLOAD_TYPE_INT, - 111); - - defaults.putPersistableBundle( - KEY_TEXT_CODEC_CAPABILITY_PAYLOAD_TYPES_BUNDLE, - text_codec_capability_payload_types); - - return defaults; - } - } - - /** - * Emergency Call/E911. This groups the configs specific for emergency call - * over IMS. - * - *
Reference: 3GPP 24.229, 3GPP 23.167 Annex H, 3GPP 24.301. - */ - public static final class ImsEmergency { - private ImsEmergency() {} - - /** Prefix of all imsemergency.KEY_* constants. */ - public static final String KEY_PREFIX = "imsemergency."; - - /** - * Flag specifying whether UE would retry E911 call on - * IMS PDN if emergency PDN setup failed. - * - *
If {@code true}: Allow UE to retry emergency call on - * IMS PDN if emergency PDN setup failed.{@code false} otherwise. - */ - public static final String KEY_RETRY_EMERGENCY_ON_IMS_PDN_BOOL = - KEY_PREFIX + "retry_emergency_on_ims_pdn_bool"; - - /** - * Flag specifying whether UE should enter Emergency CallBack Mode(ECBM) - * after E911 call is ended. - * - *
If {@code true}: Enter ECBM mode after E911 call is ended. - * {@code false} otherwise. - */ - public static final String KEY_EMERGENCY_CALLBACK_MODE_SUPPORTED_BOOL = - KEY_PREFIX + "emergency_callback_mode_supported_bool"; - - /** - * Flag specifying whether QoS preconditions are supported for emergency - * call setup. - * - *
If {@code true}: QoS Preconditions are supported. - * {@code false} otherwise. - * - *
Reference: 3GPP TS 24.229 - */ - public static final String KEY_EMERGENCY_QOS_PRECONDITION_SUPPORTED_BOOL = - KEY_PREFIX + "emergency_qos_precondition_supported_bool"; - - /** - * List of different RAT technologies on which emergency call using IMS - * is supported. - * - *
Possible values are, - * {@link AccessNetworkConstants.AccessNetworkType#NGRAN} - * {@link AccessNetworkConstants.AccessNetworkType#EUTRAN} - * {@link AccessNetworkConstants.AccessNetworkType#IWLAN} - */ - public static final String KEY_EMERGENCY_OVER_IMS_SUPPORTED_RATS_INT_ARRAY = - KEY_PREFIX + "emergency_over_ims_supported_rats_int_array"; - - /** - * Specifies the maximum time from deciding that an emergency service is to - * be established until completion of the emergency registration procedure. - * Upon timer expiry, the UE considers the emergency REGISTER request or - * the emergency call attempt as failed. - */ - public static final String KEY_EMERGENCY_REGISTRATION_TIMER_MILLIS_INT = - KEY_PREFIX + "emergency_registration_timer_millis_int"; - - private static PersistableBundle getDefaults() { - PersistableBundle defaults = new PersistableBundle(); - defaults.putBoolean(KEY_RETRY_EMERGENCY_ON_IMS_PDN_BOOL, false); - defaults.putBoolean(KEY_EMERGENCY_CALLBACK_MODE_SUPPORTED_BOOL, false); - defaults.putBoolean(KEY_EMERGENCY_QOS_PRECONDITION_SUPPORTED_BOOL, true); - - defaults.putIntArray( - KEY_EMERGENCY_OVER_IMS_SUPPORTED_RATS_INT_ARRAY, - new int[] { - AccessNetworkType.EUTRAN, - AccessNetworkType.IWLAN - }); - - defaults.putInt(KEY_EMERGENCY_REGISTRATION_TIMER_MILLIS_INT, 20000); - - return defaults; - } - } - - /** - * IMS Video Telephony configs. This groups the configs that are specific for video call. - */ - public static final class ImsVt { - private ImsVt() {} - - /** Prefix of all imsvt.KEY_* constants. */ - public static final String KEY_PREFIX = "imsvt."; - - /** - * Flag specifying whether video media is allowed on default bearer. - * - *
If {@code true}: video media can be sent on default bearer. - * {@code false} otherwise. - */ - public static final String KEY_VIDEO_ON_DEFAULT_BEARER_SUPPORTED_BOOL = - KEY_PREFIX + "video_on_default_bearer_supported_bool"; - - /** - * Specifies the timeout value for no video RTP packets received. - *
On timer expiry, VT call can downgrade to voice call or end - * or continue depending on the operator requirement. - */ - public static final String KEY_VIDEO_RTP_INACTIVITY_TIMER_MILLIS_INT = - KEY_PREFIX + "video_rtp_inactivity_timer_millis_int"; - - /** - * Specifies the timeout value for no video RTCP packets received. - *
On timer expiry, VT call can downgrade to voice call or end - * or continue depending on the operator requirement. - */ - public static final String KEY_VIDEO_RTCP_INACTIVITY_TIMER_MILLIS_INT = - KEY_PREFIX + "video_rtcp_inactivity_timer_millis_int"; - - /** - * Specifies the AS (Application Specific) SDP modifier for video media. - * - *
Expressed in kilobits per second as per RFC 3556 Section 2. - */ - public static final String KEY_VIDEO_AS_BANDWIDTH_KBPS_INT = - KEY_PREFIX + "video_as_bandwidth_kbps_int"; - - /** - * Specifies the RS (RTCP bandwidth-Sender) SDP modifier for video media. - * - *
This indicates the RTCP bandwidth allocated to active data senders - * for video media. - * - *
Expressed in bits per second as per RFC 3556 Section 2. - */ - public static final String KEY_VIDEO_RS_BANDWIDTH_BPS_INT = - KEY_PREFIX + "video_rs_bandwidth_bps_int"; - - /** - * Specifies the RR (RTCP bandwidth-Receiver) SDP modifier - * for video media. - * - *
This indicates the RTCP bandwidth allocated to receivers - * for video media. - * - *
Expressed in bits per second as per RFC 3556 Section 2. - */ - public static final String KEY_VIDEO_RR_BANDWIDTH_BPS_INT = - KEY_PREFIX + "video_rr_bandwidth_bps_int"; - - /** - * Specifies the differentiated services code point (DSCP) value - * for Video RTP. - * - *
Reference: RFC 4594 Section 1.4.4 - */ - public static final String KEY_VIDEO_RTP_DSCP_INT = - KEY_PREFIX + "video_rtp_dscp_int"; - - /** - * Flag specifying whether QoS preconditions are supported for Video. - * - *
If {@code true}: QoS Preconditions are supported. - * {@code false} otherwise. - *
Reference: 3GPP TS 24.229 - */ - public static final String KEY_VIDEO_QOS_PRECONDITION_SUPPORTED_BOOL = - KEY_PREFIX + "video_qos_precondition_supported_bool"; - - /** - * Specifies the Video Codec capability. This contains a list of - * payload types representing different Video codec instances. - - *
Possible key(s) in this bundle are, - *
To specify payload descriptions for each of the payload types, see - *
Payload type is an integer in dynamic payload type range 96-127 - * as per RFC RFC 3551 Section 6. - */ - public static final String KEY_H264_PAYLOAD_TYPE_INT_ARRAY = - KEY_PREFIX + "h264_payload_type_int_array"; - - /** - * Specifies the codec attributes of different payload types - * representing H264 video codec instances. - * - *
The allowed payload types of the video codecs are specified in, - * {@link #KEY_H264_PAYLOAD_TYPE_INT_ARRAY}. - * - *
Codec attributes allowed as part of H264 codec bundle are, - *
If this bundle is not configured and - * {@link #KEY_H264_PAYLOAD_TYPE_INT_ARRAY} is not empty, - * then default values as in the individual codec attributes to - * be used for that payload type. - *
If the codec attributes in a particular codec instance bundle - * is not valid together, then that codec instance should not be used. - */ - public static final String KEY_H264_PAYLOAD_DESCRIPTION_BUNDLE = - KEY_PREFIX + "h264_payload_description_bundle"; - - /** - * Specifies the packetization mode of the video codec. - * - *
Permissible values are 0 (Single NAL unit mode), - * 1(Non-interleaved mode). - * - *
If this key is not specified or invalid, then the following - * default value to be used. - *
Reference: RFC 6184 Section 5.4 - */ - public static final String KEY_VIDEO_CODEC_ATTRIBUTE_PACKETIZATION_MODE_INT = - KEY_PREFIX + "video_codec_attribute_packetization_mode_int"; - - /** - * Specifies the maximum frame rate the offerer wishes to receive. - * This gives the maximum video frame rate in frames/sec. - * - *
If this key is not specified or invalid, then the following - * default value to be used. - *
Reference: RFC 4566 Section 6, 3GPP 26.114 Section 6.2.3.2 - */ - public static final String KEY_VIDEO_CODEC_ATTRIBUTE_FRAME_RATE_INT = - KEY_PREFIX + "video_codec_attribute_frame_rate_int"; - - /** - * Specifies the maximum resolution allowed for the video codec - * instance. - * - *
This is specified as an array of two integers, with - * index 0 : Width, - * index 1 : Height - * - *
If this key is not specified or invalid as per the video codec, - * then the following default value to be used. - *
Reference: RFC 4566 Section 6, 3GPP 26.114 Section 6.2.3.2 - * - */ - public static final String KEY_VIDEO_CODEC_ATTRIBUTE_RESOLUTION_INT_ARRAY = - KEY_PREFIX + "video_codec_attribute_resolution_int_array"; - - /** - * Specifies the profile level id of the H264 video codec. - * This value is represented as "profile-level-id" in the SDP offer - * as per RFC 6184 Section 8.1. - * - *
If this key is not specified or invalid as per the video codec, - * then default value of 42C00C to be used. - * - *
Reference: RFC 6184 Section 8.1, ITU-T Recommendation H.264 - */ - public static final String KEY_H264_VIDEO_CODEC_ATTRIBUTE_PROFILE_LEVEL_ID_STRING = - KEY_PREFIX + "h264_video_codec_attribute_profile_level_id_string"; - - private static PersistableBundle getDefaults() { - PersistableBundle defaults = new PersistableBundle(); - defaults.putBoolean(KEY_VIDEO_ON_DEFAULT_BEARER_SUPPORTED_BOOL, false); - defaults.putBoolean(KEY_VIDEO_QOS_PRECONDITION_SUPPORTED_BOOL, true); - - defaults.putInt(KEY_VIDEO_RTP_INACTIVITY_TIMER_MILLIS_INT, 0); - defaults.putInt(KEY_VIDEO_RTCP_INACTIVITY_TIMER_MILLIS_INT, 0); - - defaults.putInt(KEY_VIDEO_AS_BANDWIDTH_KBPS_INT, 960); - defaults.putInt(KEY_VIDEO_RS_BANDWIDTH_BPS_INT, 8000); - defaults.putInt(KEY_VIDEO_RR_BANDWIDTH_BPS_INT, 6000); - defaults.putInt(KEY_VIDEO_RTP_DSCP_INT, 40); - - PersistableBundle video_codec_capability_payload_types = new PersistableBundle(); - - video_codec_capability_payload_types.putIntArray( - KEY_H264_PAYLOAD_TYPE_INT_ARRAY, - new int[] { 99, 100 }); - - defaults.putPersistableBundle( - KEY_VIDEO_CODEC_CAPABILITY_PAYLOAD_TYPES_BUNDLE, - video_codec_capability_payload_types); - - PersistableBundle all_h264_payload_bundles = new PersistableBundle(); - - /* Setting default codec attributes for individual H264 profiles*/ - - /* For H264 profile-level-id: 42C00C, frame rate:15, Resolution: 240x320 */ - PersistableBundle h264_bundle_instance1 = new PersistableBundle(); - all_h264_payload_bundles.putPersistableBundle( - "99", /* Same value of payload type as in KEY_H264_PAYLOAD_TYPE_INT_ARRAY */ - h264_bundle_instance1); - - /* For H264 profile-level-id: 42C00C, packetisation mode:0, frame rate:15, - * Resolution: 240x320 */ - PersistableBundle h264_bundle_instance2 = new PersistableBundle(); - h264_bundle_instance2.putInt( - KEY_VIDEO_CODEC_ATTRIBUTE_PACKETIZATION_MODE_INT, - 0); - - all_h264_payload_bundles.putPersistableBundle( - "100", /* Same value of payload type as in KEY_H264_PAYLOAD_TYPE_INT_ARRAY */ - h264_bundle_instance2); - - defaults.putPersistableBundle( - KEY_H264_PAYLOAD_DESCRIPTION_BUNDLE, - all_h264_payload_bundles); - - return defaults; - } - } - - /** - * WiFi Calling. This groups the configs specific for Voice over WiFi/WFC call. - */ - public static final class ImsWfc { - private ImsWfc() {} - - /** Prefix of all imswfc.KEY_* constants. */ - public static final String KEY_PREFIX = "imswfc."; - - /** - * List of MDNs for which Geo-location PIDF XML with country info - * needs to included for normal calls involving short code. - */ - public static final String KEY_PIDF_SHORT_CODE_STRING_ARRAY = - KEY_PREFIX + "pidf_short_code_string_array"; - - /** - * Flag specifying whether emergency call over VoWiFi is requested over - * emergency PDN or IMS PDN. - * - *
If {@code false}: E911 call uses IMS PDN for E911 call over VoWiFi. - * If {@code true}: E911 call uses Emergency PDN for E911 call over VoWiFi. - */ - public static final String KEY_EMERGENCY_CALL_OVER_EMERGENCY_PDN_BOOL = - KEY_PREFIX + "emergency_call_over_emergency_pdn_bool"; - - - private static PersistableBundle getDefaults() { - PersistableBundle defaults = new PersistableBundle(); - - defaults.putBoolean(KEY_EMERGENCY_CALL_OVER_EMERGENCY_PDN_BOOL, false); - defaults.putStringArray(KEY_PIDF_SHORT_CODE_STRING_ARRAY, new String[] {}); - - return defaults; - } - } - - /** - * IMS supplementary services configs. This groups the configs required for - * supplementary services (SS) like XCAP over UT, - * Unstructured Supplementary Service Data(USSD). - */ - public static final class ImsSs { - private ImsSs() {} - - /** Prefix of all imsss.KEY_* constants. */ - public static final String KEY_PREFIX = "imsss."; - - /** - * Flag that controls whether XCAP over UT status need to be - * dependent on IMS registration. - * - *
If {@code true}: XCAP over UT status need to be - * dependent on IMS registration. - * {@code false} otherwise. - */ - public static final String KEY_UT_REQUIRES_IMS_REGISTRATION_BOOL = - KEY_PREFIX + "ut_requires_ims_registration_bool"; - - /** - * Flag that controls whether Circuit Switched Fallback (CSFB) - * option is available when XCAP over UT fails. - * - *
If {@code false}: XCAP over UT only with no CSFB option. - * If XCAP over UT fails, return error. - * if {@code true}, Use CSFB if XCAP over UT fails. - */ - public static final String KEY_USE_CSFB_ON_XCAP_OVER_UT_FAILURE_BOOL = - KEY_PREFIX + "use_csfb_on_xcap_over_ut_failure_bool"; - - /** - * Flag that controls whether XCAP over UT is enabled or not - * when PS data is turned off. - * - *
If {@code true}: XCAP over UT is enabled when PS data is off. - * {@code false}: Otherwise. - * - * Reference: IR.92 Section 5.5.1 - */ - public static final String KEY_UT_SUPPORTED_WHEN_PS_DATA_OFF_BOOL = - KEY_PREFIX + "ut_supported_when_ps_data_off_bool"; - - /** - * Flag that controls whether network initiated USSD over IMS is - * supported by the UE. - * - *
If {@code true}: Support Available.{@code false}: Otherwise. - * Reference: 3GPP 24.390. - */ - public static final String KEY_NETWORK_INITIATED_USSD_OVER_IMS_SUPPORTED_BOOL = - KEY_PREFIX + "network_initiated_ussd_over_ims_supported_bool"; - - /** - * Specifies the 'XCAP over UT' IP Type when device is - * on Home Network. - * - *
Possible values are, - * {@link Ims#IP_TYPE_IPV4V6}, - * {@link Ims#IP_TYPE_IPV4}, - * {@link Ims#IP_TYPE_IPV6} - * - * If key is invalid or not configured, the default value - * {@link Ims#IP_TYPE_IPV4V6} will apply. - */ - public static final String KEY_UT_IPTYPE_HOME_INT = - KEY_PREFIX + "ut_iptype_home_int"; - - /** - * Specifies the 'XCAP over UT' IP Type when device is roaming. - * - *
Possible values are, - * {@link Ims#IP_TYPE_IPV4V6}, - * {@link Ims#IP_TYPE_IPV4}, - * {@link Ims#IP_TYPE_IPV6} - - * If key is invalid or not configured, the default value - * {@link #IP_TYPE_IPV4V6} will apply. - */ - public static final String KEY_UT_IPTYPE_ROAMING_INT = - KEY_PREFIX + "ut_iptype_roaming_int"; - - /** - * Specifies the XCAP Application Server fully qualified domain name (FQDN). - *
Reference: 24.623 Section 5.2.3. - */ - public static final String KEY_UT_AS_SERVER_FQDN_STRING = - KEY_PREFIX + "ut_as_server_fqdn_string"; - - /** - * Specifies the XCAP Application Server Remote port. - * As XCAP is a usage of HTTP, the default value is same as HTTP, i.e. 80. - */ - public static final String KEY_UT_AS_SERVER_PORT_INT = - KEY_PREFIX + "ut_as_server_port_int"; - - /** - * Specifies the preferred transport to be used for XCAP over UT. - * - *
Possible values are, - * {@link Ims#PREFERRED_TRANSPORT_TCP}, - * {@link Ims#PREFERRED_TRANSPORT_TLS} - * - *
If key is invalid or not configured, the default value - * {@link Ims#PREFERRED_TRANSPORT_TCP} will apply. - */ - public static final String KEY_UT_TRANSPORT_TYPE_INT = - KEY_PREFIX + "ut_transport_type_int"; - - /** @hide */ - @IntDef({ - SUPPLEMENTARY_SERVICE_CW, - SUPPLEMENTARY_SERVICE_CF_ALL, - SUPPLEMENTARY_SERVICE_CF_CFU, - SUPPLEMENTARY_SERVICE_CF_ALL_CONDITONAL_FORWARDING, - SUPPLEMENTARY_SERVICE_CF_CFB, - SUPPLEMENTARY_SERVICE_CF_CFNRY, - SUPPLEMENTARY_SERVICE_CF_CFNRC, - SUPPLEMENTARY_SERVICE_CF_CFNL, - SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIP, - SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIP, - SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIR, - SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIR, - SUPPLEMENTARY_SERVICE_CB_ALL, - SUPPLEMENTARY_SERVICE_CB_OBS, - SUPPLEMENTARY_SERVICE_CB_BAOC, - SUPPLEMENTARY_SERVICE_CB_BOIC, - SUPPLEMENTARY_SERVICE_CB_BOIC_EXHC, - SUPPLEMENTARY_SERVICE_CB_IBS, - SUPPLEMENTARY_SERVICE_CB_BAIC, - SUPPLEMENTARY_SERVICE_CB_BIC_ROAM, - SUPPLEMENTARY_SERVICE_CB_ACR, - SUPPLEMENTARY_SERVICE_CB_BIL - }) - - public @interface SsType {} - - /** Communication Waiting (CW) support as per 3GPP 24.615. */ - public static final int SUPPLEMENTARY_SERVICE_CW = 0; - - /** - * Call Diversion - All call forwarding support as per 3GPP 24.604. - * - *
This value is associated with MMI support service code 002 - * as indicated in TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CF_ALL = 1; - - /** - * Call Diversion - All Unconditional call forwarding support (CFU) as - * per 3GPP 24.604. - * - *
This value is associated with MMI support service code 21 - * as indicated in TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CF_CFU = 2; - - /** - * Call Diversion - All conditional call forwarding support as - * per 3GPP 24.604. - * - *
This value is associated with MMI support service code 004 - * as indicated in TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CF_ALL_CONDITONAL_FORWARDING = 3; - - /** - * Call Diversion - Call forwarding on mobile subscriber busy (CFB) - * support as per 3GPP 24.604. - * - *
This value is associated with MMI support service code 67 - * as indicated in TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CF_CFB = 4; - - /** - * Call Diversion - Call forwarding on no reply (CFNRY) - * support as per 3GPP 24.604. - * - *
This value is associated with MMI support service code 61 - * as indicated in TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CF_CFNRY = 5; - - /** - * Call Diversion - Call forwarding on mobile subscriber not reachable - * (CFNRC) support as per 3GPP 24.604. - * - *
This value is associated with MMI support service code 62 - * as indicated in TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CF_CFNRC = 6; - - /** - * Communication Forwarding on Not Logged-in (CFNL). - * support as per 3GPP 24.604 Section 4.2.1.7 - * - */ - public static final int SUPPLEMENTARY_SERVICE_CF_CFNL = 7; - - /** - * Originating Identification Presentation (OIP) support - * as per 3GPP 24.607. - * - */ - public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIP = 8; - - /** - * Terminating Identification Presentation (TIP) support - * as per 3GPP 24.608. - */ - public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIP = 9; - - /** - * Originating Identification Restriction (OIR) support - * as per 3GPP 24.607. - */ - public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIR = 10; - - /** - * Terminating Identification Restriction (TIR) support - * as per 3GPP 24.608. - */ - public static final int SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIR = 11; - - /** - * Call Barring - All barring services, - * This value is associated with MMI support service code 330 - * as indicated TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CB_ALL = 12; - - /** - * Call Barring - Outgoing barring services, - * This value is associated with MMI support service code 333 - * as indicated TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CB_OBS = 13; - - /** - * Call Barring - Barring of all outgoing calls (BAOC) - * support as per 3GPP TS 24.611. - * - *
This value is associated with MMI support service code 33 - * as indicated TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CB_BAOC = 14; - - /** - * Call Barring - Barring of outgoing international calls - * (BOIC) support as per 3GPP TS 24.611. - * - *
This value is associated with MMI support service code 331 - * as indicated TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CB_BOIC = 15; - - /** - * Call Barring - Barring of outgoing international calls - * except those directed to the home PLMN country (BOIC-EXHC) support - * as per 3GPP TS 24.611. - * - *
This value is associated with MMI support service code 332 - * as indicated TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CB_BOIC_EXHC = 16; - - /** - * Call Barring - Incoming barring services, - * This value is associated with MMI support service code 353 - * as indicated TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CB_IBS = 17; - - /** - * Call Barring - Barring of all incoming calls (BAIC) - * support as per 3GPP TS 24.611. - * - *
This value is associated with MMI support service code 35 - * as indicated TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CB_BAIC = 18; - - /** - * Call Barring - Barring of incoming calls when roaming outside - * the home PLMN country (BIC-ROAM) support as per 3GPP TS 24.611. - * - *
This value is associated with MMI support service code 351 - * as indicated TS 22.030 Table B.1 - */ - public static final int SUPPLEMENTARY_SERVICE_CB_BIC_ROAM = 19; - - /** - * Call Barring - Anonymous Call Rejection/Barring of all anonymous - * incoming number support as per 3GPP TS 24.611. - */ - public static final int SUPPLEMENTARY_SERVICE_CB_ACR = 20; - - /** - * Call Barring - Barring list of incoming numbers support. - */ - public static final int SUPPLEMENTARY_SERVICE_CB_BIL = 21; - - /** - * List of UT services that are Server based. - * - *
Possible values are, - *
Possible values are, - *
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_XCAP_OVER_UT_SUPPORTED_RATS_INT_ARRAY = - KEY_PREFIX + "xcap_over_ut_supported_rats_int_array"; - - private static PersistableBundle getDefaults() { - PersistableBundle defaults = new PersistableBundle(); - defaults.putBoolean(KEY_UT_REQUIRES_IMS_REGISTRATION_BOOL, true); - 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.putInt(KEY_UT_IPTYPE_HOME_INT, Ims.IP_TYPE_IPV4V6); - defaults.putInt(KEY_UT_IPTYPE_ROAMING_INT, Ims.IP_TYPE_IPV4V6); - defaults.putInt(KEY_UT_AS_SERVER_PORT_INT, 80); - defaults.putInt(KEY_UT_TRANSPORT_TYPE_INT, Ims.PREFERRED_TRANSPORT_TCP); - - defaults.putIntArray( - KEY_UT_SERVER_BASED_SERVICES_INT_ARRAY, - new int[] { - SUPPLEMENTARY_SERVICE_CW, - SUPPLEMENTARY_SERVICE_CF_ALL, - SUPPLEMENTARY_SERVICE_CF_CFU, - SUPPLEMENTARY_SERVICE_CF_CFNRC, - SUPPLEMENTARY_SERVICE_CF_ALL_CONDITONAL_FORWARDING, - SUPPLEMENTARY_SERVICE_CF_CFB, - SUPPLEMENTARY_SERVICE_CF_CFNRY, - SUPPLEMENTARY_SERVICE_CF_CFNL, - SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIP, - SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIP, - SUPPLEMENTARY_SERVICE_IDENTIFICATION_OIR, - SUPPLEMENTARY_SERVICE_IDENTIFICATION_TIR, - SUPPLEMENTARY_SERVICE_CB_ALL, - SUPPLEMENTARY_SERVICE_CB_OBS, - SUPPLEMENTARY_SERVICE_CB_IBS, - SUPPLEMENTARY_SERVICE_CB_BAOC, - SUPPLEMENTARY_SERVICE_CB_BOIC, - SUPPLEMENTARY_SERVICE_CB_BOIC_EXHC, - SUPPLEMENTARY_SERVICE_CB_BAIC, - SUPPLEMENTARY_SERVICE_CB_BIC_ROAM, - SUPPLEMENTARY_SERVICE_CB_ACR, - SUPPLEMENTARY_SERVICE_CB_BIL - }); - defaults.putIntArray( - KEY_UT_TERMINAL_BASED_SERVICES_INT_ARRAY, - new int[] {}); - - defaults.putIntArray( - KEY_XCAP_OVER_UT_SUPPORTED_RATS_INT_ARRAY, - new int[] { - AccessNetworkType.EUTRAN, - AccessNetworkType.IWLAN - }); - defaults.putString(KEY_UT_AS_SERVER_FQDN_STRING, ""); - - return defaults; - } - } - - /** - * This groups the BSF (BootStrapping Function) related configs. - * Reference: 3GPP TS 24.109. - */ - public static final class Bsf { - private Bsf() {} - - /** Prefix of all bsf.KEY_* constants. */ - public static final String KEY_PREFIX = "bsf."; - - /** Specifies the fully qualified domain name (FQDN) of BSF Server - * as per 3GPP 24.109. - */ - public static final String KEY_BSF_SERVER_FQDN_STRING = - KEY_PREFIX + "bsf_server_fqdn_string"; - - /** - * Specifies the port number of the BSF server as per 3GPP 24.109. - * This is usually default port number of HTTP, i.e. 80. - */ - public static final String KEY_BSF_SERVER_PORT_INT = - KEY_PREFIX + "bsf_server_port_int"; - - /** - * Specifies the transport type used in communication with - * BSF server. - * - *
Possible values are, - * {@link Ims#PREFERRED_TRANSPORT_TCP}, - * {@link Ims#PREFERRED_TRANSPORT_TLS} - * - *
If key is invalid or not configured, the default value - * {@link Ims#PREFERRED_TRANSPORT_TCP} will apply. - */ - public static final String KEY_BSF_TRANSPORT_TYPE_INT = - KEY_PREFIX + "bsf_transport type_int"; - - private static PersistableBundle getDefaults() { - PersistableBundle defaults = new PersistableBundle(); - - defaults.putInt(KEY_BSF_SERVER_PORT_INT, 80); - defaults.putInt(KEY_BSF_TRANSPORT_TYPE_INT, Ims.PREFERRED_TRANSPORT_TCP); - defaults.putString(KEY_BSF_SERVER_FQDN_STRING, ""); - return defaults; } } @@ -8724,14 +6162,6 @@ public class CarrierConfigManager { }); sDefaults.putBoolean(KEY_SUPPORT_WPS_OVER_IMS_BOOL, true); sDefaults.putAll(Ims.getDefaults()); - sDefaults.putAll(ImsVoice.getDefaults()); - sDefaults.putAll(ImsSms.getDefaults()); - sDefaults.putAll(ImsRtt.getDefaults()); - sDefaults.putAll(ImsEmergency.getDefaults()); - sDefaults.putAll(ImsVt.getDefaults()); - sDefaults.putAll(ImsWfc.getDefaults()); - sDefaults.putAll(ImsSs.getDefaults()); - sDefaults.putAll(Bsf.getDefaults()); sDefaults.putAll(Iwlan.getDefaults()); sDefaults.putStringArray(KEY_CARRIER_CERTIFICATE_STRING_ARRAY, new String[0]); sDefaults.putBoolean(KEY_FORMAT_INCOMING_NUMBER_TO_NATIONAL_FOR_JP_BOOL, false);