2-Immerse Architecture and API Reference
Welcome to the 2-Immerse Architecture and API Reference. The diagram below shows the services and application stacks defined for the first version of the technical architecture. For simplicity, all services are shown here as hosted in the cloud, although the project will also enable a limited number of services to be hosted in the client environment (home/school/pub).
Key technical use cases illustrating how the services and client applications interact to realise system functionality are detailed here
The current list of DMApp components is here.
Click on the diagram or the lists below for more information about the API associated with each service or component.

| Service | Client | Cloud | Responsibility | API Consumers | Comments |
|---|---|---|---|---|---|
| Service Registry | X | X | Cisco (James) | Everyone | Could use Consul or SpringCloud open source implementations. |
| Device Discovery (inc. DIAL client and server) | X | IRT (Michael) BBC (Rajiv) | Web App | Includes native components in client and TV (server) – DIAL. | |
| UX Engine (integration) a) Timeline b) Layout c) Server-based Composition | X | X | a) CWI (Jack) b) Cisco (James) c) - | a) Layout (others tbd) b) Web App c) | We need to define format of timeline metadata and expression of layout. |
| Timeline Synchronisation a) In Home b) Between Home | X | X | a) BBC (Rajiv) b) Rajiv/Jack | a) Timeline, Web App, Server Comp. b) Timeline, Web App, Server Comp. | Wall clock sync will be handled by native component (DVB-CSS). |
| Content Protection/Licensing Service | X | BT (Jonathan) | N/A for home theatre trial | For the home theatre trial, this is only access control to content. Propose we use CENC and a key pre-loaded on the TV device. | |
| Identity Management and Authentication(+ registration web component) | X | BBC (Mark) | Web App, Session Service | Individual and Household identities are different and don’t necessarily have a fixed mapping. Includes user profile management | |
| Session Service | X | BBC (Mark) | Web App, all micro services | Single Sign-on, access token granting, resolving identity of signed-in user. | |
| Call Server (SIP) (+ WebRTC web component and native plugin) | X | BBC (Mark) | Lobby (possibly) | ||
| Analytics | X | BT (Ian) | None | Some real-time analytics may be provided in later use cases. | |
| Logging | X | BT (Ian) | Everyone | ||
| Origin Server/CDN | X | Cisco (James) | Web App, Server Comp., Timeline, Layout | All content and metadata will be delivered via the Origin Server/CDN. | |
| Lobby | X | BBC (Mark) | Web App | Lobby facilitates synchronisation between layout contexts. Context=group of devices in a home Synchronisation Context=group of multiple contexts | |
| Websocket Service | X | X | Cisco (James/Erik) | Clients and services that need push notifications | Push notifications will be sent to clients via Websocket service. |
| Shared State Service | X | Cisco (James/Erik) | Clients (components) and services that need shared state perisistence / notifications |
