Challenge Overview
Overview
The Hercules Player University apps are a suite of applications (web, iOS, and Android) that allow students on various Universities to get their content delivered over the IP network. This content includes linear (live TV) and “on demand” content from various providers.
This application is in production and working as expected. We are maintaining it and adding new features.
This module focuses on DRM provisioning, specifically this module will refactor the implementation of DRM provisioning in the Hercules Player University app JavaScript code, speed up the provisioning/de-provisioning process and implement the DRM token refresh feature.
This assembly will implement all changes to the DRM provisioning code.
DRMService
DRMService is the service that provides DRM related functions, it replaces the "Drm" class in the existing codebase.
Please refer to TCUML "DRM Service Class Diagram" for implementation details of the DRMService.
Dropping "Drm"
The "Drm" class in existing codebase (videoPlayer.js#1274-1735) will be dropped in this assembly.
Miscellaneous Changes
The exact code changes are provided in the forum.
Reviewers
Reviewers must test the following:
1) Provisioning / token acquisition
2) Token renewal
3) Deprovisioning
4) Playback with the XSCT token acquired
5) Once a user has logged in, they should no longer be prompted for login until:
a) The user clears their cache (saved token is destroyed)
b) The token cannot be renewed
Testing
Deliverables
Updated Source Code
Deployment Guide
Technology overview
JavaScript
jQuery 2.0.3
SWFObject 2.2
jQuery Mobile 1.3.2
Flash ActionScript 3
Existing Documents
Class Diagram
Sequence Diagrams
Application Design Specification
Assembly Specification
Final Submission Guidelines
Please see above