Identify slides related to a module in a multi-module course.

Apr 17, 2024

Hi,

I am creating a course using articulate storyline that contains multiple modules where each module can contain multiple slides. I am using the xApi format to publish the course. I am trying to track module wise progression using custom xApi statement triggers to track progress and time spent with the slideid when a user interacts with a slide. So to display module-wise progression, I need to specify which slide is related to which module.

For example, I have a course that is divided into 10 modules. The first module contains 2 slides, the second module contains 5 slides, etc. So my question is, after publishing the course in xApi format, how can I identify which slides relate to which module? 
Any help would be much appreciated.

1 Reply
Sam Hill

Hi there, could you use the Storyline variables Project.SceneNumber and Scene.SlideNumber to identify the currect slide by Scene and Scene Slide Number?

You would first create your own variables in Storyline, for example SceneNumber and assign Project.SceneNumber to that variable each time a slide loads, do the same with Scene.SlideNumber and assign it to SlideNumber each time the slide loads. You can then access both of these variable via JavaScript to use as you need, for example

var player = GetPlayer();

const scene = player.GetVar('SceneNumber');
const slide = player.GetVar('SlideNumber');

const location = "Scene_"+scene+"_Slide_"+slide;

If you need a better label than a number, you could create an array of Scene names, and use the scene number to get the name, for example:

const scenes = ['Introduction','How to do this', 'How to do that'];

const location = scenes[Number(scene)-1]+": "+slide;

If scene is 1 and slide is "1", this would give you "Introduction: 1"

Let me know if anything is not clear.