Stories
- Ops Web Interface
build a javascript or equiv web page with an MQ client subscribing to the MQ server.
Platform services:
-
SoftwareManifest Management
- add software artifacts, manage deploy sets, query for the deploySet for a DeviceHost
-
Configuration Management (handshake values for a DeviceHost)
Manage handshake values like the tablet does -
Credential management
Api to get associations of alias, key, allowed packages -
Content Management
- provide list of content to download and cache for local apks and venue devices. Like tablet content calls.
- associate name,value pair lists to each content item to provide info regarding usage and deployment
Device Host
-
Volley client
- create support library for platform REST calls and JSON result parsing
- incorporates jsonWebToken logic for Cheerios
- client implements generics to simplify and codify usage norms in apps
-
LockboxProvider : firmware specific storage for credentials and secrets to be securely distributed to appropriate apps.
Provisioning can occur before any targeted apps are installed on a device. Highly sensitive data must be stored in the event keydata is required to establish network connectivity (wifi certificates, pre-shared keys , etc). This provider is embedded in firmware and is responsible for securely storing and dispensing keys to the designated apps when they request them. This flow is designed to allow white-label deployments in addition to our internal deployment. -
DeviceAdmin : customization for the BridgeReceiver
BridgeReceiver is carrying forward the SERI model of interaction through Broadcasts. The broadcasts are not secured. Anyone through app or adb can send a broadcast and trigger our system level events. Broadcasts should be secured by permission or a calling package whitelist.- refactor to a secure calling model
-
Warehouse Setup/ copy
- update calls to download content and apks during provisioning or post provision stages
- ManagedProvisioning :
- wireless Out-of-Box configuration stage (Aurora mode)
- convert to use cheerios calls
BTHost / Core
-
MQ Client to Platform MQ Broker
ICC replacement connection. Use MQTT on the device-host side connecting to RabbitMQ on the datacenter side. -
ConfigurationProvider
- retrieve / store handshake settings
- retrieve / store secure configuration data (url's, etc)
- retrieve / store manifest/software installation details
-
Platform Upkeep Manager
Performs the work of downloading apps and content described in Configuration manifests. Prunes unneeded content and apps, caches preferred content and apps.-
Config/Software/Content : update/download/install/notify
-
Create cache mechanisms for content
-
Create cache mechanism for apks to enable branch switching in DEV mode
-
JobScheduler / tracker
Sets up and tracks periodic upkeep that should happen- Download manager tracking and pacing
-
-
Service tracker
Starts and tracks services that should be running on the system. Specify Categories for activities and Services that indicate the timeline for
Host Services:
- MediaContentProvider
- insert/remove content, garbage collection, downstream notifications (more sophisticated than upkeep mgr)
- Software Download Manager / Installer
- runtime dependency validation
Tablet Host Software
- Beacon / Tablet status
- UDP Connection
- MQ Broker
- Spread ?
- Hive commands
- connect to Ops Web IF
- deliver to tablets