The Support Application generates different events, with each event containing specific data points. Some data points are common to all events
Each of the events have the following common data points.
|time||Date||The date / time the event was generated|
|orgId||String||The organization Id that the device belongs to|
|event||String||The event name|
|deviceId||String||The device serial Number|
||Key / Value pairs of user application settings. Ie: StoreNumber, User Id, etc.|
Device Activity details
Some events contain additional device details. These details include the following points: Battery, Network, GPS (location), ScreenState, Foreground APP, and Additional Details (optional).
|technology||String||battery tech, ex: Li-ion|
|connectionState||String||If charging, how is the battery connected: USB, Wireless, etc|
|health||String||The health of the battery, as detected by the OS. Good, Bad, etc.|
|serialNumber||String||The Battery serial Number|
|status||String||Battery status, charging or discharging|
|temperature||double||Current battery temperature|
|charge||double||Current charge on battery|
|connectionSubType||String||battery tech, ex: Li-ion|
|connectType||String||How connected (wifi|
|connected||boolean||connected (1) or not connected (0)|
|ipAddress||String||AP Ip Address|
|isRoaming||boolean||Is the device roaming.|
|rssi||int||RSSI value, indicates Signal Strength|
|hiddenSSID||boolean||Is the SSID Hidden|
GPS / Location
|gpsEnabled||boolean||Is GPS Location enabled|
|netEnabled||boolean||Is Network Location enabled|
|passiveEnabled||boolean||Is Passive Location enabled|
|gpsLat||String||Latitude according to GPS Location|
|gpsLong||String||Longitude according to GPS Location|
|netLat||String||Latitude according to Network Location|
|netLong||String||Longitude according to Network Location|
|passiveLat||String||Latitude according to Passive Location|
|passiveLong||String||Longitude according to Passive Location|
|foregroundApp||String||Package / Application that is currently in the foreground when event generated|
|screenState||String||Screen ON or OFF|
|details||Hash Map||Key / value pairs of different data points. Most likely from other applications.|
|permissionsAppUsage||Boolean||1 or 0 to indicate if the Optiko Agent as permissions to use AppUsage data. If the field does not exist, then device does not support application usage permissions.|
The following details the different events that are supported.
Event indicating the Charging / Discharging. When a device stops charging (removed from Cradle), this event will be generated indicating the duration of the Charge, begining/ ending Charge, and Rate of Charge per hour. Once the device is begins to charge (placed on Cradle), an event will be generate indicating the Discharge of the battery (duration, beginning/ending charge, rate per hour of discharge).
Use "type" field to determine if a "charge" or "discharge" event session.
|type||String||indicates either a CHARGE or DISCHARGE session|
|startTime||Date/Time||Start Date/Time of session|
|endTime||Date/Time||Ending Date/Time of session|
|duration||long||Length, in seconds, of the session|
|startCharge||long||Charge value at the beginning of session|
|endCharge||long||Charge value at the end of session|
|ratePerHour||double||Rate per hour of the charge or discharge|
|projectedHour||long||Projected number of hours to discharge or charge the device|
Event indicates a change in SSID / BSSID. Then event is generated when a Connection Change event occurs.
|startTime||Date/Time||Start Date/time of the connection|
|endTime||Date/Time||Date/Time when connection lost|
|duration||long||Duration, in seconds, of the connection|
|minRssi||long||Minimum Rssi value duration connection|
|maxRssi||long||Maximum Rssi value duration connection|
|avgRssi||double||Average Rssi value duration connection|
|ssid||String||SSID of the Connection|
|bssid||String||BSSID of the Connection|
Event indicates the usage of an application. The event is generated when the user changes to another application, and will log the details of the previous application.
- User is in Launcher, logs in.
- User opens an application A (calculator, or any other app). Uses the app for at least a few seconds.
- User goes back to Launcher. The agent should generate an appusage event for the application that was previously opened.
|startTime||Date/Time||Calculated start time of the application launch|
|endTime||Date/Time||Date/Time when application went into background|
|duration||long||Length of time, in seconds, that the application was in the foreground|
|screenOnDuration||long||Length of time, in seconds, that the screen was on while application in foreground|
|packageName||String||Name of the package representing the application|
Event indicates an Exception occurred within the Optiko Agent.
|stackTrace||String||The stack trace of the error|
Event indicates the device just booted up. Will start tracking the Settings.
|devicesetting||Object||Collection of Settings information. devMode, adbEnabled, usb, rootAccess, disabledlockScreen|
|devicedetails||Object||Collection of OS related information. os, build, kernel, type|
Event is fired to let the server know that this device is still active. Occurs every 15-30 minutes (configurable).
Event indicates the battery has cycled.
Event gives a list of installed user applications. Generate on initial run of of Optiko Silent Init
|appdetails||Array List||Array of objects contain "label", "name" and "ver" of packages installed.|
Event indicates the package / application has been removed from the system.
|appdetail||Contains the name of the Package.|
Event indicates the package / application has been Added to the system.
|appdetail||contains package Label, Name and the Version|
To indicate that memory is getting low. onLowMemory at application level.
To indicate that battery is getting low. System typically invokes when battery level gets below 15%.
If any of the Android Settings (USB, Root Access, etc) change from the BOOT of the device, then this event will be sent out.
This event is generated when one of four locations are over 80% used. This usage is check on device Boot, when an application is installed or removed, on request (via SilentInitActivity), and on a timer.
Event indicates information concerning logs, storage information, device settings, and device information.
Tracks information of current network connection.
|detailedState||String||Reports the current fine-grained state of the network.|
|extraInfo||String||Report the extra information about the network state, if any was provided by the lower networking layers.|
|isAvailable||Boolean||Indicates whether network connectivity is possible.|
|isFailover||Boolean||Indicates whether the current attempt to connect to the network resulted from the ConnectivityManager trying to fail over to this network following a disconnect from another network.|
|isConnected||Boolean||Indicates whether network connectivity exists and it is possible to establish connections and pass data.|
|isRoaming||Boolean||Indicates whether the device is currently roaming on this network. When true, it suggests that use of data on this network may incur extra costs.|
|networkType||Integer||Reports the type of network (mobile, wifi, wimax, ethernet, bluetooth)|
|state||String||Reports the current coarse-grained state of the network.|
|subtype||Integer||Return a network-type-specific integer describing the subtype of the network.|
|subtypeName||String||Return a human-readable name describing the subtype of the network.|
|typeName||String||Return a human-readable name describe the type of the network, for example "WIFI" or "MOBILE".|
|reason||String||Report the reason an attempt to establish connectivity failed, if one is available.|
|connected||boolean||Indicates whether network connectivity exists and it is possible to establish connections and pass data.|
|hiddenSSID||boolean||true if this network does not broadcast its SSID, so an SSID-specific probe request must be used for scans.|
|bssid||String||Return the basic service set identifier (BSSID) of the current access point. The BSSID may be null if there is no network currently connected.|
|linkSpeed||Integer||Returns the current link speed in Mbps|
|networkId||Integer||Each configured network has a unique small integer ID, used to identify the network when performing operations on the supplicant.|
|ssid||String||Returns the service set identifier (SSID) of the current 802.11 network.|
|roaming||Boolean||Indicates whether the device is currently roaming on this network. When true, it suggests that use of data on this network may incur extra costs.|
|rssi||Integer||Returns the received signal strength indicator of the current 802.11 network, in dBm.|
|macAddress||String||Returns device"s mac address|
|connectSubtype||String||Return a human-readable name describing the subtype of the network.|
|ipAddress||String||Return device"s IP address|
|frequency||int||Returns the current frequency in MHz|
|gateway||String||Returns the gateway address|
|dns1||String||Domain Name Server name|
|dns2||String||Alternate Domain Name Server name|
|proxy||String||Defines the http proxy configuration|
|savedNetworks||ArrayList\<String\>||List of SSIDs of saved networks|
link properties information
Describes the properties of a network link. A link represents a connection to a network. It may have multiple addresses and multiple gateways, multiple dns servers but only one http proxy and one network interface.
|dnsServer||List\<InetAddress\>||List of IP address of DNS servers|
|domains||String||The DNS domains search path set for this link|
|proxyHost||String||The host of the proxy|
|proxyPort||int||The port of the proxy|
|proxyExclusionList||String||List of hosts for which the proxy is ignored|
|interfaceName||String||Interface name for this link|
|linkAddresses||ArrayList\<LinkInformation\>||List of LinkInformation that contains: host InetAddress, host flags, host scope|
|routes||ArrayList\<RouteInformation\>||List of information of all routes set to this link|
|bssid||String||bssid of current network|
Event indicates a warning or error with a device license.
A custom application log used by individual applications to indicate an action has occurred.
This event is generated when the Find Device processing is occuring.
Indicates a device has shutdown normally.