Webinars

Special Interest Groups

RDK-B Working Groups
RDK-V Working Groups
UI-UX Research and Development
DAC

Conferences

[Americas Summit]
[Euro Summit]
[Technology Summit]

Preferred Resources

Skip to end of metadata
Go to start of metadata

Whilst the Packager plugin and RDKShell DAC Integration is available in rdkservices, it should be considered beta quality and is under active development

Introduction

RDKShell currently has window management and key input handling capabilities but will soon have app lifecycle management capability added. It is also able to launch / suspend / resume / kill native apps, web apps, Thunder plugins and Lightning apps.

RDKShell will be extended to work with the OCIContainers plugin and the updated version of the "Packager" plugin when launching containerized native apps and plugins.

The "Packager" Thunder plugin is needed for managing OCI bundles; downloading, extracting, and  removing them.


Use Case

  • During startup, Resident app fetches a list of available apps in the appstore.
  • When the resident app (EPG, Receiver, ResApp etc) wants to launch "myApp"; it sends a launch request via JSON-RPC to RDKShell
  • RDKShell sends a query to Packager to see if "myApp" is already installed. If it's not installed, RDKShell sends an install command to Packager.
  • Packager provides the runtime configuration and the bundle info back to RDKShell
  • RDKShell then launches the app using OCIContainers JSON-RPC command.
  • RDKShell manages the lifecycle of the app via suspend/resume/kill commands provided by OCIContainers plugin

Sequence Diagram

RDKShell API

See RDK Shell

Packager API