Getting a Storyline course being viewed as a webobject, to trigger slide advance?

Apr 01, 2021

So I have some experience with getting Vimeo API to communicate to SL to auto advance when a slide is done.

But now, I have a storyline course within a storyline course.

I'd like the 'web object' storyline course, when the last slide completes, to trigger a slide advance in the main course. Basically, I have a bunch of courses, inside once single course - it's a long story.

I've tried a few scripts in these forums for html to trigger SL, but not quite getting it. 

I assume in the "web object" course, when the last slide's timeline ends, I'd have it execute a Javascript to set a variable that the main course can detect (via a trigger, when variable 'x' changes, advance slide). Just not sure what that looks like.

any help appreciated.

2 Replies
Dwayne Schamp

So, have you used the "player.Setvar("varname",var_value); in the embedded course, AND can you see that you can read that update from the host course? I've not done this, so not sure if that is even possible.

If you can update the host var from the embedded course:

  1. upon playing the embedded course, jump to a layer on that slide, do not pause the base layer
  2. have the layer set to 5 secs or so.
  3. Set a trigger on the layer that checks the var set by the embedded course, and advances if  TRUE.
  4. If not true, then use a trigger to jump back to the 0 second mark of the layer timeline and loop until the condition is met.

it makes sense in my head

Matt Garton

Thanks for the reply,

So I have this script, which is lifted from another post

function goSlide() {
var player = parent.GetPlayer();
player.SetVar("moveForward", 'yes');
}

Right now it's in my embedded course, and runs when the timeline ends
In the primary course, I have a trigger that says, basically, when "moveForward" changes, advance slide

But it's not working. The embed course slide ends, but the primary course doesn't advance.