# Supported system attributes (entities and keys)

The SystemInfo Service API supports the following system attribute entities:

- `Battery`

- `Connectivity`

- `Device`

- `Display`

- `Features`

- `General`

- `Memory`

- `Network`

The following tables describe the system attributes supported by the SystemInfo Service API. Read the columns as follows:

- Key specifies the name of the system attribute key. Together with the entity, this specifies the system attribute; for example: `Battery - BatteryStrength`.

- Input specifies the system data type for an input value. The properties specified for a particular data type are used as the `SystemData` properties in method input. NA indicates that no input is applicable.

- Output specifies the system data type for an output value. The properties specified for a particular data type are used as the `ReturnValue` properties in method output.

- Value optionally describes the value or the value range of the system attribute, or provides an example value. This is used for both input, if valid, and output. For detailed information about system attribute values, see section System data types.

- GetInfo, SetInfo, and GetNotification indicate whether the system attribute supports the `GetInfo`, `SetInfo`, and `GetNotification` methods, respectively.

- GetInfo mode indicates whether the system attribute supports synchronous (Sync) or asynchronous (Async) `GetInfo` calls.

- Capability specifies the Symbian capabilities required of any process that loads the Web Runtime to invoke the SystemInfo Service API and access the system attribute.

The following table describes the `Battery` system attributes.

Table: Battery system attributes
Key | Input | Output | Value | GetInfo | SetInfo | GetNotification | GetInfo mode | Capability
--- | --- | --- | --- | --- | --- | --- | --- | ---
`BatteryStrength` | `Status` Threshold battery strength for notification request | `Status` | 0 - 100 % | X |  | X | Async | None
`ChargingStatus` | NA | `Status` | 0 - 1 | X |  | X | Sync | None

The following table describes the `Connectivity` system attributes.

Table: Connectivity system attributes
Key | Input | Output | Value | GetInfo | SetInfo | GetNotification | GetInfo mode | Capability
--- | --- | --- | --- | --- | --- | --- | --- | ---
`BlueTooth` | NA | `Status` | 0 - 1 | X |  | X | Sync | None
`InfraRed` | NA | `Status` | 0 - 1 | X |  | X | Sync | None
`ActiveConnections` | NA | `ConnectionList` |  | X |  |  | Async | None
`ConnectionStatus` | NA | `ConnectionInfo` |  |  |  | X |  | None
`WLanMacAddress` | NA | `StringData` | For example: `"00:18:0f:1e:96:a2"` | X |  |  | Sync | None

The following table describes the `Device` system attributes.

Table: Device system attributes
Key | Input | Output | Value | GetInfo | SetInfo | GetNotification | GetInfo mode | Capability
--- | --- | --- | --- | --- | --- | --- | --- | ---
`FirmwareVersion` | NA | `StringData` | For example: `"V 06.27.1.0_10-07-2006_RM170_NOKIA E50"` | X |  |  | Sync | None
`PlatformVersion` | NA | `Version` |  | X |  |  | Sync | None
`ProductType` | NA | `StringData` Note: If this is not specified for the device, `GetInfo` returns `"Unknown"` as `ProductType`. | For example: `"RM-160"` | X |  |  | Sync | None
`Manufacturer` |  | `StringData` | For example: `"Nokia"` | X |  |  | Sync | None
`MachineId` | NA | `Status` | For example: `101FB2B1` This is a unique ID. | X |  |  | Sync | None
`PhoneModel` | NA | `StringData` | For example: `"E50"`, `"N70"` | X |  |  | Sync | None
`IMEI` | NA | `StringData` |  | X |  |  | Sync | None

The following table describes the `Display` system attributes.

Table: Display system attributes
Key | Input | Output | Value | GetInfo | SetInfo | GetNotification | GetInfo mode | Capability
--- | --- | --- | --- | --- | --- | --- | --- | ---
`Brightness` | `Status` | `Status` | 5 - 95 % | X |  |  | Sync | None
`ScreenSaverTimeout` | `Status` | `Status` | 5 - 90 seconds | X |  |  | Sync | None
`UserInactivity` | `Status` Time in seconds | `Status` | 0 - 1 seconds |  |  | X |  | None
`KeyGuardTime` | `Status` | `Status` | 0 - 3600 seconds | X |  |  | Sync | None
`AutoLockTime` | `Status` | `Status` | 0 - 999 minutes | X |  |  | Sync | None
`AutoLockStatus` | NA | `Status` | 0 - 1 | X |  | X | Sync | None
`Wallpaper` | `StringData` |  | Full path and file name; for example: `"C://Data//Others//wallpaper.jpeg"` |  | X |  |  | None
`LightTimeout` | NA | `Status` | 5 - 60 seconds | X |  |  | Sync | None
`DisplayResolution` | NA | `Resolution` |  | X |  |  | Sync | None
`DisplayOrientation` | NA | `Status` | 0 - 3 | X |  |  | Sync | None

The following table describes the `Features` system attributes.

Table: Features system attributes
Key | Input | Output | Value | GetInfo | SetInfo | GetNotification | GetInfo mode | Capability
--- | --- | --- | --- | --- | --- | --- | --- | ---
`BlueTooth` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`InfraRed` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`CAMERA` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`MemoryCard` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`FMRADIO` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`QWERTY` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`WLAN` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`USB` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`Pen` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`LED` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`CoverUI` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`SideVolumeKeys` | NA | `Status` | 0 - 1 | X |  |  | Sync | None
`Vibra` | NA | `Status` | 0 - 1 | X |  |  | Sync | None

The following table describes the `General` system attributes.

Table: General system attributes
Key | Input | Output | Value | GetInfo | SetInfo | GetNotification | GetInfo mode | Capability
--- | --- | --- | --- | --- | --- | --- | --- | ---
`AccessoryStatus` | NA | `AccessoryInfo` |  |  |  | X |  | None
`ConnectedAccessories` | NA | `AccessoryList` |  | X |  |  | Sync | None
`InputLanguage` | `Status` | `Status` | S60 language enumeration | X | X | X | Sync | None
`SupportedLanguages` | NA | `LanguageList` | List of S60 language enumerations | X |  |  | Sync | None
`PredictiveText` | `Status` | `Status` | 0 - 1 | X | X | X | Sync | None
`VibraActive` | `Status` | `Status` | 0 - 1 | X | X | X | Sync | None
`AvailableUSBModes` | NA | `StringList` |  | X |  |  | Sync | None
`ActiveUSBMode` | NA | `StringData` |  | X |  |  | Sync | None
`FlipStatus` | NA | `Status` | 0 - 1 | X |  | X | Sync | None
`GripStatus` | NA | `Status` | 0 - 1 | X |  | X | Sync | None

The following table describes the `Memory` system attributes.

Table: Memory system attributes
Key | Input | Output | Value | GetInfo | SetInfo | GetNotification | GetInfo mode | Capability
--- | --- | --- | --- | --- | --- | --- | --- | ---
`ListDrives` | NA | `DriveList` |  | X |  |  | Sync | None
`DriveInfo` | `DriveInfo` | `DriveInfo` |  | X |  |  | Sync | None
`CriticalMemory` | `DriveInfo` For notification requests | `StringData` Specifies the drive; for example: `"C:\\"` |  |  |  | X |  | None
`MemoryCard` | NA | `Status` | 0 - 1 | X |  | X | Sync | None

The following table describes the `Network` system attributes.

Table: Network system attributes
Key | Input | Output | Value | GetInfo | SetInfo | GetNotification | GetInfo mode | Capability
--- | --- | --- | --- | --- | --- | --- | --- | ---
`SignalStrength` | `Status` Threshold dB for notification request | `Status` | 40 - 110 dB, where 40 is high | X |  | X | Async | None
`RegistrationStatus` | NA | `Status` | 0 - 6 | X |  | X | Sync | None
`NetworkMode` | NA | `Status` | 0 - 2 | X |  | X | Sync | None
`CurrentNetwork` | NA | `NetworkInfo` |  | X |  | X | Async | ReadUserData, Location
`LocationArea` | NA | `Status` |  |  |  | X |  | ReadUserData, Location
`CellID` | NA | `Status` |  |  |  | X |  | ReadUserData, Location