8. Device Status
Heartbeats are system messages generated periodically by every user device.
Overview
Device Status (Former Heartbeats) is a system message that the SDK generates in the background and transfers to the Damoov platform. The average period of heartbeats is around 2 hours, but it depends on the stability of the internet connection. Heartbeats provide an SDK status and system information such as permissions statuses and device information.
API reference
JSON Data Format
{
"Result": [
{
"UserId": "736cbd83-a937-4889-ae79-af2d5b63d63d",
"Heartbeat Date": "2020-12-03T06:24:14.9145253",
"WiFi Enabled": true,
"GPS Enabled": true,
"Mobile Data Enabled": false,
"Latitude": 43.4650551,
"Longitude": 40.9211685,
"Extended Data": {
"Application": "v1.5.4.20201230.0001 (com.raxel.coreproduct)",
"Device Has Been Rooted (Android)": "0",
"Device Model": "iPhone8,4",
"Device OS Version": "iOS 14.0.1",
"GPS Permission Granted": "Always",
"JailBreak (iOS)": "0",
"Low Power Mode": "false",
"Low Precise Location (iOS)": "false",
"Motion & Fitness Permission Granted (iOS)": "YES",
"Motion Activity Permission Granted (Android)": "false",
"SDK Version": "RPSDK v5.9.0.204 - 2020-11-30T13:52:27+0300"
}
},
{
"UserId": "736cbd83-a937-4889-ae79-af2d5b63d63d",
"Heartbeat Date": "2020-12-03T06:24:14.9145253",
"WiFi Enabled": true,
"GPS Enabled": true,
"Mobile Data Enabled": false,
"Latitude": 43.4650551,
"Longitude": 40.9211685,
"Extended Data": {
"Application": "v1.5.4.20201230.0001 (com.raxel.coreproduct)",
"Device Has Been Rooted (Android)": "0",
"Device Model": "iPhone8,4",
"Device OS Version": "iOS 14.0.1",
"GPS Permission Granted": "Always",
"JailBreak (iOS)": "0",
"Low Power Mode": "false",
"Low Precise Location (iOS)": "false",
"Motion & Fitness Permission Granted (iOS)": "YES",
"Motion Activity Permission Granted (Android)": "false",
"SDK Version": "RPSDK v5.9.0.204 - 2020-11-30T13:52:27+0300"
}
}
],
"Status": 200,
"Title": "",
"Errors": []
}
Description
Note: some fields are actual numbers and booleans, while others are strings that represent a number of a boolean. Make sure to access properly in your code.
| Field | Short description |
|---|---|
UserID(string containing 16 bytes in ASCII hex format) | User's DeviceToken |
Heartbeat Date(ISO 8601 string) | Date when this heartbeat was recorded. |
WiFi Enabled(boolean) | True if WiFi is enabled on the device. |
GPS Enabled(boolean) | True if GPS is enabled on the device. |
Mobile Data Enabled(boolean) | True if Mobile Data enabled on the device. |
Latitude(number) | Latitude where this heartbeat was recorded (or last known latitude) |
Longitude(number) | Longitude where this heartbeat was recorded (or last known longitude) |
Application(string) | Application |
Device Has Been Rooted (Android)(string) | "1" if it is an Android device that has been rooted. |
Device Model(string) | Device Model (e.g., iPhone8,4) |
Device OS Version(string) | Device OS Version (e.g. iOS 14.0.1) |
GPS Permissions Granted(string) | Type of permission the device has to access the GPS sensor:alwayswhen using |
JailBreak (iOS)(string containing number) | "1", if it is an iOS device that has been jailbroken (hacked) |
Low Power Mode | "false", if low power mode is not active (required for accurate tracking) |
Low Precise location (iOS) | "false" if low precision location is not active (required for tracking) |
| Motion & Fitness Permission Granted (iOS) | "YES", if this is an iOS device and permission is granted (required for accurate tracking)Note: This permits access to the acceleration sensors required for detection of harsh braking, sharp cornering, etc. |
| Motion Activity Permission Granted (Android) | "true", if this is an Android device and permission to access Motion Activity has been granted. |
DataHub
Heartbeat information is available in the following workspaces:
Updated almost 4 years ago
