Forum Discussion
SetStatus not working for SCORM 1.2 completion - Storyline 360 HTML5 Output
Hello everyone,
I'm in the process of upgrading some courses to Storyline 360 to utilize the HTML5 improvements. Due to the complexity of certain courses, we've found that the best method of setting course completion on LMS has been using JavaScript via SetStatus("completed");
However, it seems that SetStatus("completed"); is not working for my SCORM 1.2 courses on SCORM Cloud when using HTML5 output. The completion status remains incomplete after the JavaScript trigger has been executed.
I tried it again using the Flash output and it worked correctly. Once the trigger was executed, the course was properly marked as completed.
In my past experience, SetStatus worked well for both Flash and HTML5 with Storyline 2, so this seems to be specific to Storyline 360.
Does anyone have more information on this issue, and perhaps a workaround to get it working correctly for HTML5?
Thanks,
Matt
- RussellAmund102Community Member
Hi, I know this an older thread. So I checked the release notes and saw there was a fix for this for Storyline 360 back in February. Will this fix also be implemented in Storyline 3? I checked the release notes but did not see it listed. Unfortunately my company restricts the use of cloud based software because of proprietary data security issues so using Storyline 360 is not an option. I tried the suggestions listed in this thread but none of them are working. Any updates or workarounds for Storyline 3 you can provide would be greatly appreciated.
Hi Russell,
In Storyline 3 Update 3, we restored compatibility with Storyline 360 files that had text-to-speech narration, random number variables, and course completion triggers.
Course completion triggers are not a feature of Storyline 3.
A user in another forum thread shared this solution as well if you'd like to check it out.
- SameekshaMis875Community Member
Hi everyone,
I am working on a storyline 360 course and I am trying to create a popup when the internet connection is lost. Currently learners are able to move to the next slides even when the connection is lost and when they close the course window they don't see the completed status. I have tried calling LMSCommit from storyline 360 however that doesn't work. Has anyone worked on this before?
Sam
- JenniferDixeyCommunity Member
Hi Sameeksha,
I know this was a while back, but I'm curious if you ever made that popup when the connection is lost work?
~ Jennifer
Hey, Jennifer. Just in case Sameeksha is no longer subscribed to this discussion, feel free to use the Contact Me option in their profile!
- MateuszSzuterCommunity Member
Hello there,
Well yes, it's a bit shame that Scorm 1.2 manual set completion status is still overriden by default Storyline exit behaviour.
It's a shame, because there's a really simple workaround.
Javascript piece is standard, you put it under "execute javascript":var player = GetPlayer();
function findLMSAPI(win) {
if (win.hasOwnProperty("GetStudentID")) return win;
else if (win.parent == win) return null;
else return findLMSAPI(win.parent);
}
var lmsAPI = findLMSAPI(this);
lmsAPI.SetScore(player.GetVar("points"), 100, 0);
SCORM_CallLMSSetValue("cmi.core.lesson_status", "completed")This one reports both score and status as completed. In score there's variable passed.
But we all know that bit of code and it sadly doesn't work.
Workaroung is simple.
Publish your course with slide tracking option*.
Go to published course folder, open lms/lms.js
find line 78, and more particulary this piece of code (btw if you are not familiar with javascript, the // means comment, script will ignore that part, it's for your info use only):case "BW_ClosePlayer":
// This is an important milestone, save the data
- my info: that's original comment of devsReportStatus();
my info: that-s line 78 which you are looking forLMSCommit();
lmsAPI.ConcedeControl()
my info: yup, there's colon missing by devs themselves.break;
So you probably guessed it already, you just put // before ReportStatus(); function. It will stop storyline from reporting completion status to the LMS. Since we are doing it manually, it's perfectly fine for us.
* - I can't remember now, but if there is a scenario, that you want to put your manual status on the last slide (like 20 of 20) and you have option to track by slide numbers, it will still override the completion status. You can bypass this in one of two ways:
1. Just add somehwere blank slide that will not be visited by learner (nice if you have one, big course)
2. After publishing, go to html5/data/js/data.js, find "viewThreshold":x, and substitue your definied earlier slide number by any greater value. This way storyline will never reach the final slide to report status. - chrisyakushCommunity Member
Hey all,
is it safe to assume based on this thred if im using storyline 3, and publish to scorm 1.2 with HTML 5....it wont record as completed in my LMS?
i am running into that issue where im publishing the course, and then in the LMS and on Cloud its saying i got 90% but marking me incomplete.
Hi Chris!
We might have to change a few settings around because this is not expected behavior when publishing to Scorm 1.2.
To see if this issue should be resolved in the course or LMS, I'd test the course in SCORM cloud.
Here are the steps to test your file in SCORM cloud!
Please let me know if you have any questions.
- MateuszSzuterCommunity Member
Have you read my post Chris? I'm finely publishing in SL3 to SCORM 1.2 and keep completed status :)