Skip to content

Feature: Secured Device

Overview

This feature attempts to ensure that someone is always logged-in to the Launcher, otherwise the device must be cradled. When the user uncradles a device, the user is required to login within a timeout period, and if the user does not log in, an alarm will sound. To shut off the alarm, the user must login or cradle the device.

The feature can be enabled using unsecuredDeviceTimeoutInSecs within the Launcher "settings" configuration given that the value is greater than zero. There is also an additional feature where users are able to enable or disable a warning countdown alarm by using unsecuredDeviceEffects in the same Launcher "settings" configuration. When configuration setting is turned on, a countdown timer noise will play when 12 seconds or less or are left on the specificied timeout.

Flow

If unsecuredDeviceTimeoutInSecs is set to an integer greater than zero and the device is uncradled, the Launcher will initiate the Login screen. A Heads-Up notification will be posted that lets the user know that a login is required within a specfic amount of seconds before an alarm will sound. When the user fails to login within the specified timeout, the device shall max its volume and sound the alarm.

Once the alarm is triggered, a new Heads-Up notification will display instructing the user to either login or return the device to a cradle to cancel the alarm. If a user successfully logs in or if the device is cradled again, Launcher will cancel the timeout timer and dismiss any notifications. In the event of a reboot, the Launcher shall check if the device is uncradled after the boot event is received. If the device is uncradled on reboot, it shall begin the countdown process.

The following applog event details will also be sent to Support Agent if this feature is enabled:

  • When countdown starts:
    • tag = "secure-device"
    • message = "login initiated, countdown started"
  • When user logs in:
    • tag = "secure-device"
    • message = "login complete, alarm cancelled"
  • When user cradles device
    • tag = "secure-device"
    • message = "device cradled, alarm cancelled"
  • When timeout is reached:
    • tag = "secure-device"
    • message = "alarm triggered"

Technical Notes

Configuration:

unsecuredDeviceTimeoutInSecs: Indicates the number of seconds the device is given to be logged in or cradled before an indefinitely looping alarm sounds until the device is logged into or cradled.

unsecuredDeviceEffects: Indicates whether a warning countdown alarm should sound when 12 seconds or less are remaining on the timeout.

Example:

  "settings": {
    ...
    "unsecuredDeviceTimeoutInSecs": 30,
    "unsecuredDeviceEffects": true,
    ...
  }

Feature Introduced

Feature Introduced in Launcher 3.8.x.