Retrieve the course progress without SCORM

Nov 03, 2022

Hi folks,

I have a landing page through which ~10 Storyline courses (html export, no scorm) can be opened in a popup window. This landing page connects to a LMS via SCORM 1.2. After all courses have been finished, a "completed" is passed to the LMS.

After a Storyline course in a popup window has been closed, I send the learning progress to the opener page. At the moment I'm doing that with a script that crawls the DOM for li-items in the menu and checks if it also contains a span-tag with the .visitedIcon class. Not the prettiest method. But this way I can calculate what percentage of the slides in the course have already been viewed. If all pages are visited, I send a completed to the opener page and update the status there. The problem here is that I don't know which page in the course is marked as "optional" (excluded in tracking) in Storyline. ALL pages must always be viewed for the Completed status to be passed. In order to restore the learning progress of the Storyline courses even if the browser cache is cleared, I also store the keys and values from the local storage in the suspend_data SCORM variable. As soon as a course is called again, I rewrite the local storage.

Is there any way to retrieve the current learning progress, or at least the status (In progress, completed) without SCORM? I tried using GetPlayer().GetVar('Project.Progress'), but I cannot access those internal variables. I even tried adding functions to the user.js, but this also doesn't work.

The LMS does not support multi-SCORM either, which means I can't go that route. xAPI etc. is also not possible, only SCORM 1.2.

Any ideas...?

2 Replies