Thursday, February 11, 2010

Developing your own Captivate Playback Controller

Been working on a course that relies heavily on integrating Captivate demos into a large Flash based course environment. Was getting very frustrated at the limitations of the swf that Captivate exports and started wondering if there was a way to access variables within that swf file to control it's playback.

Sure enough thanks to an article at pipwerks about using Javascript to control captivate, I was then directed to the Captivate Giant Manual, which eventually gave me this list of variables that you can use to control a captivate swf if you load it into your flash movie:

set to 1 to go previous slide

set to 1 to go to next slide

set to 1 to pause the project

set to 1 to resume showing a paused project

set to 1 to rewind and stop the project

rset to 1 to rewind and play the project

go to a specific frame

set to 1 to exit

display the information window


total number of swf frames in the project (this is not the number of frames in the main Timeline, but the sum of
all slide frames)

number of slides in the project (including hidden slides)

current frame (goes from 1 to rdinfoFrameCount when you play the project)

slide currently playing (zero based)

number of slides in the project (not including hidden slides)

can be used to identify whether the SWF corresponds to the main Adobe Captivate project

Note: To control the project through the skin file, add the prefix cpSkinLoader_mc to the variables.

Friday, February 5, 2010

Internal or Offline Learner Tracking for Articulate Quizmaker

Based on a discussion at the eGuild, it seems there is a demand to setup Quizmaker for tracking users without using a LMS or any online solution.

The following is the beginning steps into creating your own custom tracking, this will show you how to extract users interactions from Quizmaker, from here you will need to use whatever technology (asp, php etc) to save the information.

I think that this solution is perfect for those who have no other option than to develop their own internal solution, and can not use third party web apps. For those who do not have this restriction, I highly recommend that you use Articulate Online. You can go swimming in JS and Server Side Languages all you want but you're not going to get as complete and detailed reports as Articulate Online can offer you.

Anyways, the solution:

1. Publish a Quiz for a LMS

2. In the main quiz folder remove everything except quiz.html, quiz.swf and the quiz_content folder.

3. Create a new javascript file named tracking.js

4. In that javascript write the following function:

function lms_DoFSCommand(command, args)
alert("command" + command);
alert("args" + args);

5. In quiz.html add this to the header:

<script LANGUAGE="JavaScript1.2" SRC="tracking.js" TYPE="text/javascript"></script>

You should now get Popups while you use the quiz, this shows you all the quiz interactions. From here you can parse and send this information to a flat file.