/******************************************************************************* * Software Name : RCS IMS Stack * * Copyright (C) 2010 France Telecom S.A. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ******************************************************************************/ package com.orangelabs.rcs.provider.settings; import android.net.ConnectivityManager; import android.net.Uri; /** * RCS settings data constants * * @author jexa7410 */ public class RcsSettingsData { /** * Database URI */ static final Uri CONTENT_URI = Uri.parse("content://com.orangelabs.rcs.settings/settings"); /** * Column name */ static final String KEY_ID = "_id"; /** * Column name */ static final String KEY_KEY = "key"; /** * Column name */ static final String KEY_VALUE = "value"; // --------------------------------------------------------------------------- // Constants // --------------------------------------------------------------------------- /** * Default group chat conference URI */ public static final String DEFAULT_GROUP_CHAT_URI = "sip:foo@bar"; /** * Boolean value "true" */ public static final String TRUE = Boolean.toString(true); /** * Boolean value "false" */ public static final String FALSE = Boolean.toString(false); /** * GIBA authentication */ public static final String GIBA_AUTHENT = "GIBA"; /** * HTTP Digest authentication */ public static final String DIGEST_AUTHENT = "DIGEST"; /** * Any access */ public static final int ANY_ACCESS = -1; /** * Mobile access */ public static final int MOBILE_ACCESS = ConnectivityManager.TYPE_MOBILE; /** * Wi-Fi access */ public static final int WIFI_ACCESS = ConnectivityManager.TYPE_WIFI; /** * File type for certificate */ public static final String CERTIFICATE_FILE_TYPE = ".crt"; /** * No auto config mode */ public static final int NO_AUTO_CONFIG = 0; /** * HTTPS auto config mode */ public static final int HTTPS_AUTO_CONFIG = 1; /** * File transfer over MSRP */ public static final String FT_PROTOCOL_MSRP = "MSRP"; /** * File transfer over HTTP */ public static final String FT_PROTOCOL_HTTP = "HTTP"; // --------------------------------------------------------------------------- // UI settings // --------------------------------------------------------------------------- /** * Activate or not the RCS service */ public static final String SERVICE_ACTIVATED = "ServiceActivated"; /** * Ringtone which is played when a social presence sharing invitation is received */ public static final String PRESENCE_INVITATION_RINGTONE = "PresenceInvitationRingtone"; /** * Vibrate or not when a social presence sharing invitation is received */ public static final String PRESENCE_INVITATION_VIBRATE = "PresenceInvitationVibrate"; /** * Ringtone which is played when a content sharing invitation is received */ public static final String CSH_INVITATION_RINGTONE = "CShInvitationRingtone"; /** * Vibrate or not when a content sharing invitation is received */ public static final String CSH_INVITATION_VIBRATE = "CShInvitationVibrate"; /** * Make a beep or not when content sharing is available during a call */ public static final String CSH_AVAILABLE_BEEP = "CShAvailableBeep"; /** * Ringtone which is played when a file transfer invitation is received */ public static final String FILETRANSFER_INVITATION_RINGTONE = "FileTransferInvitationRingtone"; /** * Vibrate or not when a file transfer invitation is received */ public static final String FILETRANSFER_INVITATION_VIBRATE = "FileTransferInvitationVibrate"; /** * Ringtone which is played when a chat invitation is received */ public static final String CHAT_INVITATION_RINGTONE = "ChatInvitationRingtone"; /** * Vibrate or not when a chat invitation is received */ public static final String CHAT_INVITATION_VIBRATE = "ChatInvitationVibrate"; /** * Send or not the displayed notification */ public static final String CHAT_DISPLAYED_NOTIFICATION = "ChatDisplayedNotification"; /** * Predefined freetext */ public static final String FREETEXT1 = "Freetext1"; /** * Predefined freetext */ public static final String FREETEXT2 = "Freetext2"; /** * Predefined freetext */ public static final String FREETEXT3 = "Freetext3"; /** * Predefined freetext */ public static final String FREETEXT4 = "Freetext4"; /** * Battery level minimum */ public static final String MIN_BATTERY_LEVEL = "MinBatteryLevel"; // --------------------------------------------------------------------------- // Service settings // --------------------------------------------------------------------------- /** * Max photo-icon size */ public static final String MAX_PHOTO_ICON_SIZE = "MaxPhotoIconSize"; /** * Max length of the freetext */ public static final String MAX_FREETXT_LENGTH = "MaxFreetextLength"; /** * Max number of participants in a group chat */ public static final String MAX_CHAT_PARTICIPANTS = "MaxChatParticipants"; /** * Max length of a chat message */ public static final String MAX_CHAT_MSG_LENGTH = "MaxChatMessageLength"; /** * Max length of a group chat message */ public static final String MAX_GROUPCHAT_MSG_LENGTH = "MaxGroupChatMessageLength"; /** * Idle duration of a chat session */ public static final String CHAT_IDLE_DURATION = "ChatIdleDuration"; /** * Max size of a file transfer */ public static final String MAX_FILE_TRANSFER_SIZE = "MaxFileTransferSize"; /** * Warning threshold for file transfer size */ public static final String WARN_FILE_TRANSFER_SIZE = "WarnFileTransferSize"; /** * Max size of an image share */ public static final String MAX_IMAGE_SHARE_SIZE = "MaxImageShareSize"; /** * Max duration of a video share */ public static final String MAX_VIDEO_SHARE_DURATION = "MaxVideoShareDuration"; /** * Max number of simultaneous chat sessions */ public static final String MAX_CHAT_SESSIONS = "MaxChatSessions"; /** * Max number of simultaneous file transfer sessions */ public static final String MAX_FILE_TRANSFER_SESSIONS = "MaxFileTransferSessions"; /** * Max number of simultaneous IP call sessions */ public static final String MAX_IP_CALL_SESSIONS = "MaxIpCallSessions"; /** * Activate or not SMS fallback service */ public static final String SMS_FALLBACK_SERVICE = "SmsFallbackService"; /** * Auto accept file transfer invitation */ public static final String AUTO_ACCEPT_FILE_TRANSFER = "AutoAcceptFileTransfer"; /** * Auto accept chat invitation */ public static final String AUTO_ACCEPT_CHAT = "AutoAcceptChat"; /** * Auto accept group chat invitation */ public static final String AUTO_ACCEPT_GROUP_CHAT = "AutoAcceptGroupChat"; /** * Display a warning if Store & Forward service is activated */ public static final String WARN_SF_SERVICE = "StoreForwardServiceWarning"; /** * Define when the chat receiver sends the 200 OK back to the sender */ public static final String IM_SESSION_START = "ImSessionStart"; /** * Max entries for chat log */ public static final String MAX_CHAT_LOG_ENTRIES = "MaxChatLogEntries"; /** * Max entries for richcall log */ public static final String MAX_RICHCALL_LOG_ENTRIES = "MaxRichcallLogEntries"; /** * Max entries for IP call log */ public static final String MAX_IPCALL_LOG_ENTRIES = "MaxIpcallLogEntries"; /** * Max length of a geolocation label */ public static final String MAX_GEOLOC_LABEL_LENGTH = "MaxGeolocLabelLength"; /** * Geolocation expiration time */ public static final String GEOLOC_EXPIRATION_TIME = "GeolocExpirationTime"; /** * Minimum storage capacity */ public static final String MIN_STORAGE_CAPACITY = "MinStorageCapacity"; /** * Convergent messaging UX option */ public static final String CONVERGENT_MESSAGING_UX = "ConvergentMessagingUx"; // --------------------------------------------------------------------------- // User profile settings // --------------------------------------------------------------------------- /** * IMS username or username part of the IMPU (for HTTP Digest only) */ public static final String USERPROFILE_IMS_USERNAME = "ImsUsername"; /** * IMS display name */ public static final String USERPROFILE_IMS_DISPLAY_NAME = "ImsDisplayName"; /** * IMS home domain */ public static final String USERPROFILE_IMS_HOME_DOMAIN = "ImsHomeDomain"; /** * IMS private URI or IMPI (for HTTP Digest only) */ public static final String USERPROFILE_IMS_PRIVATE_ID = "ImsPrivateId"; /** * IMS password (for HTTP Digest only) */ public static final String USERPROFILE_IMS_PASSWORD = "ImsPassword"; /** * IMS realm (for HTTP Digest only) */ public static final String USERPROFILE_IMS_REALM = "ImsRealm"; /** * P-CSCF or outbound proxy address for mobile access */ public static final String IMS_PROXY_ADDR_MOBILE = "ImsOutboundProxyAddrForMobile"; /** * P-CSCF or outbound proxy port for mobile access */ public static final String IMS_PROXY_PORT_MOBILE = "ImsOutboundProxyPortForMobile"; /** * P-CSCF or outbound proxy address for Wi-Fi access */ public static final String IMS_PROXY_ADDR_WIFI = "ImsOutboundProxyAddrForWifi"; /** * P-CSCF or outbound proxy port for Wi-Fi access */ public static final String IMS_PROXY_PORT_WIFI = "ImsOutboundProxyPortForWifi"; /** * XDM server address & port */ public static final String XDM_SERVER = "XdmServerAddr"; /** * XDM server login (for HTTP Digest only) */ public static final String XDM_LOGIN= "XdmServerLogin"; /** * XDM server password (for HTTP Digest only) */ public static final String XDM_PASSWORD = "XdmServerPassword"; /** * File transfer HTTP server address & port */ public static final String FT_HTTP_SERVER = "FtHttpServerAddr"; /** * File transfer HTTP server login */ public static final String FT_HTTP_LOGIN= "FtHttpServerLogin"; /** * File transfer HTTP server password */ public static final String FT_HTTP_PASSWORD = "FtHttpServerPassword"; /** * File transfer default protocol */ public static final String FT_PROTOCOL = "FtProtocol"; /** * IM conference URI for group chat session */ public static final String IM_CONF_URI = "ImConferenceUri"; /** * End user confirmation request URI for terms and conditions */ public static final String ENDUSER_CONFIRMATION_URI = "EndUserConfReqUri"; /** * Country code */ public static final String COUNTRY_CODE = "CountryCode"; /** * Country area code */ public static final String COUNTRY_AREA_CODE = "CountryAreaCode"; /** * Msisdn */ public static final String MSISDN = "MSISDN"; // --------------------------------------------------------------------------- // Stack settings // --------------------------------------------------------------------------- /** * Polling period used before each IMS service check (e.g. test subscription state for presence service) */ public static final String IMS_SERVICE_POLLING_PERIOD = "ImsServicePollingPeriod"; /** * Default SIP port */ public static final String SIP_DEFAULT_PORT = "SipListeningPort"; /** * Default SIP protocol for mobile */ public static final String SIP_DEFAULT_PROTOCOL_FOR_MOBILE = "SipDefaultProtocolForMobile"; /** * Default SIP protocol for Wi-Fi */ public static final String SIP_DEFAULT_PROTOCOL_FOR_WIFI = "SipDefaultProtocolForWifi"; /** * TLS Certifcate root */ public static final String TLS_CERTIFICATE_ROOT = "TlsCertificateRoot"; /** * TLS Certifcate intermediate */ public static final String TLS_CERTIFICATE_INTERMEDIATE = "TlsCertificateIntermediate"; /** * SIP transaction timeout used to wait a SIP response */ public static final String SIP_TRANSACTION_TIMEOUT = "SipTransactionTimeout"; /** * Default TCP port for MSRP session */ public static final String MSRP_DEFAULT_PORT = "DefaultMsrpPort"; /** * Default UDP port for RTP session */ public static final String RTP_DEFAULT_PORT = "DefaultRtpPort"; /** * MSRP transaction timeout used to wait MSRP response */ public static final String MSRP_TRANSACTION_TIMEOUT = "MsrpTransactionTimeout"; /** * Registration expire period */ public static final String REGISTER_EXPIRE_PERIOD = "RegisterExpirePeriod"; /** * Registration retry base time */ public static final String REGISTER_RETRY_BASE_TIME = "RegisterRetryBaseTime"; /** * Registration retry max time */ public static final String REGISTER_RETRY_MAX_TIME = "RegisterRetryMaxTime"; /** * Publish expire period */ public static final String PUBLISH_EXPIRE_PERIOD = "PublishExpirePeriod"; /** * Revoke timeout */ public static final String REVOKE_TIMEOUT = "RevokeTimeout"; /** * IMS authentication procedure for mobile access */ public static final String IMS_AUTHENT_PROCEDURE_MOBILE = "ImsAuhtenticationProcedureForMobile"; /** * IMS authentication procedure for Wi-Fi access */ public static final String IMS_AUTHENT_PROCEDURE_WIFI = "ImsAuhtenticationProcedureForWifi"; /** * Activate or not Tel-URI format */ public static final String TEL_URI_FORMAT = "TelUriFormat"; /** * Ringing session period. At the end of the period the session is cancelled */ public static final String RINGING_SESSION_PERIOD = "RingingPeriod"; /** * Subscribe expiration timeout */ public static final String SUBSCRIBE_EXPIRE_PERIOD = "SubscribeExpirePeriod"; /** * "Is-composing" timeout for chat service */ public static final String IS_COMPOSING_TIMEOUT = "IsComposingTimeout"; /** * SIP session refresh expire period */ public static final String SESSION_REFRESH_EXPIRE_PERIOD = "SessionRefreshExpirePeriod"; /** * Activate or not permanent state mode */ public static final String PERMANENT_STATE_MODE = "PermanentState"; /** * Activate or not the traces */ public static final String TRACE_ACTIVATED = "TraceActivated"; /** * Logger trace level */ public static final String TRACE_LEVEL = "TraceLevel"; /** * Activate or not the SIP trace */ public static final String SIP_TRACE_ACTIVATED = "SipTraceActivated"; /** * SIP trace file */ public static final String SIP_TRACE_FILE = "SipTraceFile"; /** * Activate or not the media trace */ public static final String MEDIA_TRACE_ACTIVATED = "MediaTraceActivated"; /** * Capability refresh timeout used to avoid too many requests in a short time */ public static final String CAPABILITY_REFRESH_TIMEOUT = "CapabilityRefreshTimeout"; /** * Capability refresh timeout used to decide when to refresh contact capabilities */ public static final String CAPABILITY_EXPIRY_TIMEOUT = "CapabilityExpiryTimeout"; /** * Polling period used to decide when to refresh contacts capabilities */ public static final String CAPABILITY_POLLING_PERIOD = "CapabilityPollingPeriod"; /** * CS video capability */ public static final String CAPABILITY_CS_VIDEO = "CapabilityCsVideo"; /** * Image sharing capability */ public static final String CAPABILITY_IMAGE_SHARING = "CapabilityImageShare"; /** * Video sharing capability */ public static final String CAPABILITY_VIDEO_SHARING = "CapabilityVideoShare"; /** * IP voice call capability */ public static final String CAPABILITY_IP_VOICE_CALL = "CapabilityIPVoiceCall"; /** * IP video call capability */ public static final String CAPABILITY_IP_VIDEO_CALL = "CapabilityIPVideoCall"; /** * Instant Messaging session capability */ public static final String CAPABILITY_IM_SESSION = "CapabilityImSession"; /** * Group Instant Messaging session capability */ public static final String CAPABILITY_IM_GROUP_SESSION = "CapabilityImGroupSession"; /** * File transfer capability */ public static final String CAPABILITY_FILE_TRANSFER = "CapabilityFileTransfer"; /** * File transfer via HTTP capability */ public static final String CAPABILITY_FILE_TRANSFER_HTTP = "CapabilityFileTransferHttp"; /** * Presence discovery capability */ public static final String CAPABILITY_PRESENCE_DISCOVERY = "CapabilityPresenceDiscovery"; /** * Social presence capability */ public static final String CAPABILITY_SOCIAL_PRESENCE = "CapabilitySocialPresence"; /** * Geolocation push capability */ public static final String CAPABILITY_GEOLOCATION_PUSH = "CapabilityGeoLocationPush"; /** * File transfer thumbnail capability */ public static final String CAPABILITY_FILE_TRANSFER_THUMBNAIL = "CapabilityFileTransferThumbnail"; /** * File transfer Store & Forward */ public static final String CAPABILITY_FILE_TRANSFER_SF = "CapabilityFileTransferSF"; /** * Group chat Store & Forward */ public static final String CAPABILITY_GROUP_CHAT_SF = "CapabilityGroupChatSF"; /** * RCS extensions capability */ public static final String CAPABILITY_RCS_EXTENSIONS = "CapabilityRcsExtensions"; /** * Instant messaging is always on (Store & Forward server) */ public static final String IM_CAPABILITY_ALWAYS_ON = "ImAlwaysOn"; /** * SIP Automata capability (@see RFC3840) */ public static final String CAPABILITY_SIP_AUTOMATA = "CapabilitySipAutomata"; /** * File transfer always on (Store & Forward server) */ public static final String FT_CAPABILITY_ALWAYS_ON = "FtAlwaysOn"; /** * Instant messaging use report */ public static final String IM_USE_REPORTS = "ImUseReports"; /** * Network access authorized */ public static final String NETWORK_ACCESS = "NetworkAccess"; /** * SIP stack timer T1 */ public static final String SIP_TIMER_T1 = "SipTimerT1"; /** * SIP stack timer T2 */ public static final String SIP_TIMER_T2 = "SipTimerT2"; /** * SIP stack timer T4 */ public static final String SIP_TIMER_T4 = "SipTimerT4"; /** * Enable SIP keep alive */ public static final String SIP_KEEP_ALIVE = "SipKeepAlive"; /** * SIP keep alive period */ public static final String SIP_KEEP_ALIVE_PERIOD = "SipKeepAlivePeriod"; /** * RCS APN */ public static final String RCS_APN = "RcsApn"; /** * RCS operator */ public static final String RCS_OPERATOR = "RcsOperator"; /** * GRUU support */ public static final String GRUU = "GRUU"; /** * IMEI used as device ID */ public static final String USE_IMEI_AS_DEVICE_ID = "ImeiDeviceId"; /** * CPU always_on support */ public static final String CPU_ALWAYS_ON = "CpuAlwaysOn"; /** * Auto configuration mode */ public static final String AUTO_CONFIG_MODE = "Autoconfig"; /** * Provisioning terms accepted */ public static final String PROVISIONING_TERMS_ACCEPTED = "ProvisioningTermsAccepted"; /** * Provisioning version */ public static final String PROVISIONING_VERSION = "ProvisioningVersion"; /** * Provisioning version */ public static final String PROVISIONING_TOKEN = "ProvisioningToken"; /** * Secondary provisioning address */ public static final String SECONDARY_PROVISIONING_ADDRESS = "SecondaryProvisioningAddress"; /** * Use only the secondary provisioning address */ public static final String SECONDARY_PROVISIONING_ADDRESS_ONLY = "SecondaryProvisioningAddressOnly"; /** * Directory path for photos */ public static final String DIRECTORY_PATH_PHOTOS = "DirectoryPathPhotos"; /** * Directory path for videos */ public static final String DIRECTORY_PATH_VIDEOS = "DirectoryPathVideos"; /** * Directory path for files */ public static final String DIRECTORY_PATH_FILES = "DirectoryPathFiles"; /** * Secure MSRP over Wi-Fi */ public static final String SECURE_MSRP_OVER_WIFI = "SecureMsrpOverWifi"; /** * Secured RTP over Wi-Fi */ public static final String SECURE_RTP_OVER_WIFI = "SecureRtpOverWifi"; /** * Key and associated values for GSMA release of the device as provisioned by the network */ public static final String KEY_GSMA_RELEASE = "GsmaRelease"; public static final String VALUE_GSMA_REL_ALBATROS = "0"; public static final String VALUE_GSMA_REL_BLACKBIRD = "1"; public static final String VALUE_GSMA_REL_CRANE = "2"; /** * Authorization for user to use best effort IP Voice Call service /depending on network */ public static final String BE_IPVOICECALL_AUTH = "beIPVoiceCallAuth"; /** * Authorization for user to use best effort IP Video Call service /depending on network */ public static final String BE_IPVIDEOCALL_AUTH = "beIPVideoCallAuth"; /** * Authorization for device in RCS-AA mode to initiate IP Voice Call even if remote doesn't show its voice service capabilities */ public static final String IPVOICECALL_BREAKOUT ="beIPCallBreakOut"; /** * Authorization for device in RCS-CS mode to initiate IP Voice Call even if remote doesn't show its voice service capabilities */ public static final String IPVOICECALL_BREAKOUT_CS ="beIPCallBreakOutCS"; /** * Authorization for device in RCS-CS mode to upgrade to video a CS call */ public static final String IPVIDEOCALL_UPGRADE_FROM_CS="beIPVideoCallUpgradeFromCS"; /** * Authorization for device in RCS-AA or RCS-CS mode to upgrade to video even if no answer to capability request (fails with 480 or 408 error) */ public static final String IPVIDEOCALL_UPGRADE_ON_CAPERROR = "beIPVideoCallUpgradeOnCapError"; /** * Authorization for device in RCS-CS mode to upgrade to video without first tearing down CS call */ public static final String IPVIDEOCALL_UPGRADE_ATTEMPT_EARLY = "beIPVideoCallUpgradeAttemptEarly"; /** * label to be used when presenting to user the option for initiating an end-to-end ip call */ public static final String IPCALL_E2E_LABEL = "e2eIPCallLabel"; /** * label to be used when presenting to user the option for initiating a breakout ip call */ public static final String IPCALL_BREAKOUT_LABEL = "breakoutIPCallLabel"; /** * parameter to control whether "end-to-end ip call" button is presented to user (case false) or breakout button (case true) */ public static final String IPCALL_E2E_VOICECAPABILITYHANDLING = "e2eVoiceCapabilityHandling"; /** * Key to enable TCP fallback according to RFC3261 chapter 18.1.1 */ public static final String KEY_TCP_FALLBACK = "TcpFallback"; }