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
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.
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 hotspots
<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.
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.
MMS settings
<key>MMS</key> <dict> MMS SETTINGS GO HERE </dict>
<key>GroupModeEnabled</key> <false/>
Defines whether all group messages will be sent as MMS regardless of the presence of attachments.
<key>MMSC</key> <string>AAAAA</string>
AAAAA is the URL to the MMSC.
<key>MaxMessageSize</key> <integer>X</integer>
Maximum MMS size in bytes.
<key>MaxRecipients</key> <integer>X</integer>
???
<key>OnWhileRoaming</key> <true/>
If enabled, the Data Roaming switch doesn't apply to MMS.
<key>Proxy</key> <string>AA.AA.AA.AA:BB</string>
AA.AA.AA.AA:BB is an IP address or hostname with a specified port.
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.
FaceTime
<key>PhoneNumberRegistrationGatewayAddress</key> <string>AAAAA</string>
Phone number of the activation server. Defaults: ??? for U.S. & Canada, +447786205094 elsewhere.
Call forwarding popups
<key>ShowCallForwarded</key> <false/> <key>ShowCallForwarding</key> <false/>
TTY
<key>ShowTTY</key> <true/>
Enables software-side support (Settings>Phone>TTY) for aTTY cable.
Carrier Logos
<key>StatusBarImages</key> <array> PLACE ONE OR MORE OF THE FOLLOWING </array>
<dict> <key>AllowPrefixMatching</key> <false/>
If enabled, an * wildcard is applied to the end of the CarrierName property.
<key>CarrierName</key> <string>AAAA</string>
AAAA is the alpha tag broadcast from the network that will be replaced with the specified logos.
<key>DefaultImage</key> <string>Default_CARRIER_carriername.png</string>
Logo for the grey status bar.
<key>FullScreenOpaqueImage</key> <string>FSO_CARRIER_carriername.png</string>
Logo for the black status bar.
<key>StatusBarCarrierName</key> <string>O2-UK</string>
Used if the logos are not available/specified?
</dict>
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>901</string>
Number to call when in home country.
<key>RoamingVoicemailPilotNumber</key> <string>901</string>
Number to call when not in home country.
<key>VMSMFilterNumber</key> <string>901</string>
Text messages from this number will have the sender displayed as a localized "Voicemail".
To be continued...
<key>apns</key> <array> <dict> <key>apn</key> <string>idata.o2.co.uk</string> <key>password</key> <string>password</string> <key>signature</key> GeaLtsvOnXvW3kkgR1u9ZReIxNPSIi0U8VykiqShszVUkAdkGAhB 7V/fIvaaa5qAf1hpvSfsDRuzaVRUOkRMa0LiUqXh/1Cmor2LPFax RGO3UFinhsbprKNDMR45MJoT3wpFIRp2UPcRZz0fdq1+/WNAn1io 7ge1hjHQMAukpOM= <key>type-mask</key> <integer>7</integer> <key>username</key> <string>vertigo</string> </dict> <dict> <key>apn</key> <string>modem.o2.co.uk</string> <key>password</key> <string>password</string> <key>signature</key> Ne3oLHRBBGvdO13jct5HeubJOm6NNG5MV6GMVRo3WMqJY1DNhVVd WaI98TDYF9OEZg8IUydzGG4mtqV+dkS7KzjmPF99fQFIwyl5+ZZ1 86g9LFo8ctQMqFta5CjwSTjxr1JXJ61jGJw6EyydWvjHEsBIkIHy hHxtTuWwRF7WH78= <key>type-mask</key> <integer>48</integer> <key>username</key> <string>vertigo</string> </dict> <dict> <key>apn</key> <string>idata.o2.co.uk</string> <key>password</key> <string>password</string> <key>signature</key> YfgsdRCjHWkt1z2h9lGvckOn2wAgR0rEOZfdC7nfhjzvvylth6ZU X6j0cu72lwUH0q5cSXGJA/jB0m3j2wuzfm6eDf3rwVhnohCwfhFK S/zP53qpTfkGGeWPDjfO9n4mKYa9rKj7sAyOp9N3TFecQYvRfO36 o9PlHRjJIzEZw/Y= <key>type-mask</key> <integer>6</integer> <key>username</key> <string>vertigo</string> </dict> </array>
Visual VoiceMail
<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>IMAP</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>
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.
Others
<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/>
???