The iPhone Wiki is no longer updated. Visit this article on The Apple Wiki for current information. |
Carrier.plist
This PLIST file is the core element of a carrier bundle, defining various settings.
Contents
- 1 Structure
- 1.1 Carrier Definition
- 1.2 APN editability
- 1.3 Wi-Fi hotspot preconfiguration
- 1.4 Data Roaming
- 1.5 MMS settings
- 1.6 Tethering
- 1.7 Service links
- 1.8 FaceTime
- 1.9 Call forwarding popups
- 1.10 TTY
- 1.11 International Assist (USA only)
- 1.12 Enable carrier selection
- 1.13 Carrier Logos
- 1.14 Stocks.app integration
- 1.15 Network time sync
- 1.16 Voicemail
- 1.17 APN settings
- 1.18 Visual VoiceMail
- 1.19 Whitelisted phone numbers
- 1.20 IPCC signature
- 1.21 Unknown / Engineering
Structure
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> ELEMENTS GO HERE </dict> </plist>
Carrier Definition
<key>CarrierName</key> <string>O2</string>
Sets the carrier name.
<key>SupportedSIMs</key> <array> <string>23410</string> </array>
Specifies a list of carriers for which the carrier bundle applies. AAA is an MCC, BB is the MNC.
May contain other values to tell apart MVNOs. Example: 23410_GID1-67FFFF
APN editability
<key>APNEditabilityTypemask</key> <integer>X</integer>
Restricts the following parameter to certain type masks.
<key>AllowEDGEEditing</key> <true/>
Enables the Settings>General>Network>Cellular Data Network menu.
Wi-Fi hotspot preconfiguration
<key>CaptiveSettingsBySSID</key> <dict> <key>BTOpenzone</key> <dict> <key>Bypass</key> <true/> </dict> </dict>
"BTOpenzone" is the name of an hotspot. Unknown usage and results.
<key>WISPrAccounts</key> <dict> <key>phone@attmobility.com</key> <dict> <key>AuthenticationRealm</key> <string>attmobilityiphone.com</string> <key>MatchingSSIDs</key> <dict> <key>attwifi</key> <array> <string>.att.com</string> <string>.att.net</string> <string>.sbc.com</string> <string>.wayport.net</string> </array> </dict> DICT CAN REPEAT <key>PasswordType</key> <string>AT&T</string> <key>SharedSecret</key> <string>a446649326d41d87dbb8caec8caf736a</string> </dict>
Data Roaming
<key>IntlDataRoamingSwitch</key> <true/>
Enables the Settings>General>Network>Data Roaming menu.
<key>IntlDataRoamingExceptions</key> <array> <string>AAABB</string> <string>AAABB</string> </array>
Specifies a list of carriers for which data roaming is toggled via the above mentioned switch even if they have the same MCC. AAA is an MCC, BB is the MNC.
<key>Show3GSwitch</key> <false/>
Hides 3G switch and forces UMTS to be enabled (for carriers with no 2G network, e.g. Hutchison (3) UK, SoftBank JP).
MMS settings
<key>ASCIIFileNameRequired</key> <true/> <key>MMS</key> <dict> <key>AllowReturnReports</key> <true/> <key>GroupModeAllowUserOverride</key> <true/> <key>GroupModeEnabled</key> <false/> <key>MMSC</key> <string>URL</string> <key>MaxMessageSize</key> <integer>FILESIZE (B)</integer> <key>MaxRecipients</key> <integer>NUMBER</integer> <key>OnWhileRoaming</key> <false/> <key>Proxy</key> <string>HOSTNAME-OR-IP:PORT</string> <key>ShowMMSEmailAddress</key> <true/> <key>Version</key> <string>1.2</string> <key>vCard21ExportModeEnabled</key> <true/> </dict>
ASCIIFileNameRequired
Not part of the MMS settings, but clearly has to do with attachments.
AllowReturnReports
???
GroupModeAllowUserOverride
Enables the setting of GroupModeEnabled
from the UI (Settings > Messages)
GroupModeEnabled
Defines whether all group messages will be sent as MMS regardless of the presence of attachments.
MMSC
URL to the MMSC.
MaxMessageSize
Maximum MMS size in bytes. Recommended: 300K or 100K
MaxRecipients
???
OnWhileRoaming
If enabled, the Data Roaming switch doesn't apply to MMS.
Proxy
Proxy server used for the MMS data connection.
ShowMMSEmailAddress
Enables a Settings>Messages>Email Address field.
Tethering
Tethering itself is enabled by the type-mask attribute of APN settings.
<key>MaxBluetoothModemConnections</key> <integer>X/integer>
Number of maximum simultaneous connected devices. Apple-recommended value: 3
<key>TetheringURL</key> <string>http://www.o2.co.uk/iphonehelp/modem</string>
Link for the "Set Up Internet Tethering" button
Service links
It is possible to create a submenu of Settings>Phone titled "CARRIER NAME Services" which can contain up to 5 phone numbers and an URL.
<key>MyAccountURL</key> <string>AAAAA</string> <key>MyAccountURLTitle</key> <string>AAAAA</string>
Website URL and link caption.
<key>Services</key> <array> <dict> <key>ServiceCode</key> <string>*225#</string> <key>ServiceName</key> <string>Check Bill Balance</string> </dict> REPEAT AS NEEDED </array>
<key>ShowServiceCodes</key> <false/>
Hides the numbers from the links created with the above structure.
<key>CustomerServicePhoneNumber</key> <string>611</string>
FaceTime
<key>PhoneNumberRegistrationGatewayAddress</key> <string>AAAAA</string>
Phone number of the activation server. Defaults: 28818773 for U.S. & Canada, +447786205094 elsewhere.
<key>RegistrationOptInRequired</key> <true/>
Ask before sending registration SMS
Call forwarding popups
<key>ShowCallForwarded</key> <false/> <key>ShowCallForwarding</key> <false/>
TTY
<key>ShowTTY</key> <true/>
Enables software-side support (Settings>Phone>TTY) for a TTY cable.
International Assist (USA only)
<key>ShowDialAssist</key> <true/>
Enable carrier selection
<key>OverrideCarrierMenuTo</key> <true/>
Enables Settings>Carrier even if the SIM disabled it
Carrier Logos
<key>StatusBarImages</key> <array> <dict> <key>AllowPrefixMatching</key> <false/> <key>CarrierName</key> <string>AAAA</string> <key>DefaultImage</key> <string>Default_CARRIER_carriername.png</string> <key>FullScreenOpaqueImage</key> <string>FSO_CARRIER_carriername.png</string> <key>StatusBarCarrierName</key> <string>O2-UK</string> </dict> PLACE MORE DICTs AS NEEDED </array>
AllowPrefixMatching
If enabled, an * wildcard is applied to the end of the CarrierName property.
CarrierName
AAAA is the alpha tag returned by the baseband corresponding to the current MCC and MNC that will be replaced with the specified logos.
DefaultImage
Logo for the grey status bar.
FullScreenOpaqueImage
Logo for the black status bar.
StatusBarCarrierName
Used if the logos are not available/specified?
Stocks.app integration
<key>StockSymboli</key> <array> <dict> <key>symbol</key> <string>^FTSE</string> </dict> <dict> <key>symbol</key> <string>^FTAS</string> </dict> </array>
^FTSE and ^FTAS are stocks that will be automatically added to the app.
Network time sync
<key>SupportsNITZ</key> <true/>
Enables time updates through the NITZ protocol.
Voicemail
<key>VoicemailPilotNumber</key> <string>PHONE NUMBER</string>
Number to call when in home country.
<key>RoamingVoicemailPilotNumber</key> <string>PHONE NUMBER</string>
Number to call when not in home country.
<key>VMSMFilterNumber</key> <string>PHONE NUMBER</string>
Text messages from this number will have the sender displayed as a localized "Voicemail".
<key>VMSMFilterMessage</key> <string>TEXT</string>
???
<key>VoicemailPasswordResetPhoneNumber</key> <string>PHONE NUMBER</string>
Not tested, but should be self explanatory.
APN settings
<key>apns</key> <array> <dict> <key>apn</key> <string>APN</string> <key>password</key> <string>PASSWORD</string> <key>signature</key> GeaLtsvOnXvW3kkgR1u9ZReIxNPSIi0U8VykiqShszVUkAdkGAhB 7V/fIvaaa5qAf1hpvSfsDRuzaVRUOkRMa0LiUqXh/1Cmor2LPFax RGO3UFinhsbprKNDMR45MJoT3wpFIRp2UPcRZz0fdq1+/WNAn1io 7ge1hjHQMAukpOM= <key>type-mask</key> <integer>VARIABLE</integer> <key>username</key> <string>USERNAME</string> </dict> REPEAT FOR OTHER APN SETTINGS AS NEEDED </array>
It should be self-explanatory. Signature check is there since iPhone OS 3.1; patches to disable it are available.
Visual VoiceMail
<key>VisualVoicemailServiceName</key> <string>none or IMAP or ACDS</string>
<key>VVMIgnoresIntlDataRoaming</key> <true/> <key>VVMNotificationFallbackTimeout</key> <integer>420</integer> <key>VVMRetryIntervals</key> <array> <integer>60</integer> <integer>60</integer> <integer>120</integer> <integer>120</integer> <integer>120</integer> <integer>300</integer> <integer>600</integer> <integer>600</integer> <integer>1800</integer> <integer>3600</integer> <integer>7200</integer> </array> <key>VisualVoicemailServiceName</key> <string>none or IMAP or ACDS</string> <key>com.apple.voicemail.imap</key> <dict> <key>AuthenticationScheme</key> <string>DIGEST-MD5</string> <key>BeaconAddress</key> <string>9011</string> <key>ClientManagesTrash</key> <false/> <key>DeliverLegacyNotificationsBeforeSetup</key> <true/> <key>GreetingNotification</key> <true/> <key>IdleConnectionTimeout</key> <integer>2</integer> <key>MaxGreetingDuration</key> <integer>60</integer> <key>MaxPINLength</key> <integer>10</integer> <key>MinPINLength</key> <integer>4</integer> <key>UsesMWI</key> <true/> <key>UsesSSL</key> <false/> </dict>
VVMIgnoresIntlDataRoaming
If enabled, the Data Roaming switch doesn't apply to VVM.
Whitelisted phone numbers
<key>e_only_whitelist</key> <array> <string>PHONE NUMBER</string> STRINGs MAY BE REPEATED </array>
This is actually pretty cool, since it enables you to call certain numbers without entering a passcode.
IPCC signature
<key>signature</key> dGZZA/uEGcfYuh99kHmgJHzrrGnOdzNbuAyFcM+ftaridECmtaInuEN6AtkHKle3/JFR yw466AFSMNZXqzrM6/elUZKu41DF0ZnIb6dHB3yiYZq39eAmch8Au+cAe3mtE52Lg4cU V7AbmAGHlg73N9GvGdRt7PE/gIuyRaM6+OU=
Always goes last. Only present in iOS 4.0 and above. Patches to bypass this check exist.
Unknown / Engineering
<key>DormancyInactivity</key> <integer>0</integer>
???
<key>ShowClass0SMSFromField</key> <true/>
A class 0 SMS is a "flash message" which isn't saved to SIM or disk.
<key>SupportsUserBusyCauseCode</key> <true/>
???
<key>SuspendFastDormancyAllowed</key> <true/>
???
<key>AllowEditingTestModeUI</key> <true/>
May be related to Field Test
<key>CheckSMSonSIM</key> <true/>
Load SMS from SIM card?
<key>RedialOnRadioResourceRelease2G</key> <false/>
???
<key>SyncSIMPhonebook</key> <true/>
Load Contacts from SIM card?
<key>RemoteDiagnosticsWWANAllowed</key> <true/>
Enabled on AT&T USA. Allows iOS Diagnositics to be run from Safari. Not true. It still works even if this isn't set, and this parameter existed even in iPhone OS 3.x -- this probably has to do with remote access. --Ryccardo 16:21, 14 January 2011 (UTC)