|
|
# Stories
|
|
|
|
|
|
### Customer Service Operations
|
|
|
* 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
|
|
|
- enable Json / Cheerios format calls
|
|
|
|
|
|
* 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:
|
|
|
* FieldService messaging
|
|
|
Create an extensible mechanism to receive MQ messages from PlatformMQ, execute status checks & operations and return the results through the PlatformMQ
|
|
|
|
|
|
* MediaContentProvider
|
|
|
Work with Game/DIning teams to define
|
|
|
- insert/remove content, garbage collection, downstream notifications (more sophisticated than upkeep mgr)
|
|
|
|
|
|
* Software Download Manager / Installer
|
|
|
During the build process, manifest will be created (json) describing the deployment targets (sitehost, tablet, etc), the binary runtime artifacts and their binary runtime dependencies and content uri's.
|
|
|
- The installer will be responsible for double-checking the runtime dependency lists prior to installation to verify that when an apk is installed it will immediately be usable.
|
|
|
- get manifest declaration from runtime components and dependencies
|
|
|
- stop all runtime dependency apps
|
|
|
- up/downgrade apks to target version
|
|
|
- identify and launch startup tasks and services.
|
|
|
|
|
|
|
|
|
### Tablet Host Software
|
|
|
* Beacon / Tablet status
|
|
|
* UDP Connection
|
|
|
* MQ Broker for beacon / hive
|
|
|
* Spread ?
|
|
|
* Hive commands
|
|
|
- connect to Ops Web IF
|
|
|
- deliver to tablets
|
|
|
* SIteConnection
|
|
|
- UDP connection to transmit messages to and from game engines and game renderers.
|
|
|
* HTTP server to provide apks and content to tablet devices.
|
|
|
- configuration options, port mapping
|
|
|
- mechanism to work with file content providers (translate url's to content Uri's)
|
|
|
|
|
|
|
|
|
### Game Host
|
|
|
* insure that MediaContentProvider is capable and compliant with the needs of game host apps.
|
|
|
* provide notification methods to trigger packages when content changes.
|
|
|
|
|
|
[Development Stories](dev-stories) |
|
|
\ No newline at end of file |