Offline CMI Player
Technical Details
OFFLINE CONTENT PLAYER
Agenda
Offline Player Overview
Offline Player Details
Integration with LMS
Usage Scenarios
2
Offline Player Overview
OFFLINE CONTENT PLAYER
Objectives of Offline Player
Enable existing courseware to play and
record data when not connected to the
web
Provide un-compromised Learning
Experience for…
Traveling executives, support engineers
and home users
4
OFFLINE CONTENT PLAYER
Offline Player Components
Un-Installer
Player & Course Setup Components
Packager, Downloader, Installer
Course Playing and Tracking Components Synchronizer
Authenticator, Launcher and Tracker
Synchronization & Un-installer Components Tracker
Synchronizer and Un-installer
Launcher
Authenticator
Installer
Player Component
Downloader
LMS Component
Packager Player/LMS Component
(Requires LMS Integration)
5
Offline Player Details
OFFLINE CONTENT PLAYER
Details of Offline Playing
Runs on a workstation (offline)
Uses standard mechanism to communicate with downloaded AICC Assignable
Units
Saves downloaded course structure/manifest files and content files in its offline
data store
Stores student information and performance data in encrypted format in its data
store
Workstation (Offline)
Assignable
Offline Player Assignable
Unit /
Unit
SCOs /
AUs
SCOs
Course Content
Structure Files
Offline Data
Student Student Store
Information Performance
(Encrypted) (Encrypted)
7
Integration with LMS
OFFLINE CONTENT PLAYER
Integration with LMS
Standardized content (data model), format (XML) and mechanism
(HOCP – HTTP Offline CMI Protocol) required for integration
Online Workstation (Offline)
LMS/CMI Offline Player
Course Content
Structure Files
Online
Database Student Student
Information Performance
9
OFFLINE CONTENT PLAYER
Integration Requirements
Content: A well-defined data model, is used
for initializing and updating student and
course information between Offline Player
and LMS
Format: XML, is used as the data exchange
format between LMS and Offline Player
Mechanism: HOCP is used as the
communication protocol between LMS and
Offline Player
10
OFFLINE CONTENT PLAYER
Data Model Elements
Student Course
Student.ID Course.ID
Student.Login ID Course.Version
Student.Information Course.Package Path
Version Course.Status
Student.Password Course.Lesson Progress
Student.Name Course.Lesson
Student.Machine ID Progress.Date
Student.Information Course.Lesson
Demographics Progress.AU Information
Preferences Course.Lesson Progress.
AU ID
Course.Lesson
Progress.AU Version
AICC CMI Spec Data
11
OFFLINE CONTENT PLAYER
HOCP Commands
GetStudent: request for student
information from LMS
GetCourseProgress: request for course
progress information from LMS
PutCourseProgess: provide progress
information to LMS
12
Usage Scenarios
OFFLINE CONTENT PLAYER
Scenario: Download
Learner connects to the “LMS”
Logs in with valid credentials
“LMS” provides a link to “Download Utility” for
downloading course(s) to the local workstation
LMS launches the “Download Utility” as a AICC
HOCP AU
Using AICC HOCP commands “Download Utility”
queries the “LMS” for student information and
course information
The “Download Utility” stores the information
returned by the LMS and stores it into the data
store of Offline Player 14
OFFLINE CONTENT PLAYER
Scenario: Synchronization
Learner connects to the “LMS”
Logs in with valid credentials
“LMS” invokes the “Synchronization Utility” behind
the scenes (or) provides a link to the learner to
launch the “Synchronization Utility”
“Synchronization Utility” checks for offline progress-
tracking information
Using AICC HOCP commands “Synchronization
Utility” communicates offline progress-tracking
information to the “LMS”
15
OFFLINE CONTENT PLAYER
Thank You
Next Step…
Download and evaluate Offline Player-v1.5
(Beta)
For more details contact
offlineplayer@harbinger-systems.com
16
OFFLINE CONTENT PLAYER
Offline CMI Architecture
Controllers
• Controls Behavior using model APIs
Models
• Selects resultant views
Encapsulates physical representation
• Allows customization through LMS
behavior model
Views
• Presentation customization is done Database
by views Data stored in XML files
• XML based customization
Advantages
Efficient modularity of the architecture
Allows any of the components to be easily swapped in and out
Allows easy customization and extension of views, controllers and
models
17