Lab: SCORM

SCORM API Wrappers for Flash ActionScript

Current versions:

  • ActionScript 2.0: SCORM.as v1.1 (April 23, 2008)
  • ActionScript 3.0: SCORM.as v1.1 (April 23, 2008)

Downloads & Examples:

  • All downloads (including examples) are located at the downloads page.

Having a problem with the classes or example files? Visit the eLearning Technology and Development Google Group.

 

LMS compatibility

The example files have been successfully tested on a variety of LMSs. If you've tested the files on an LMS not listed here, please let me know.

LMS SCORM 1.2 Example SCORM 2004 Example Notes
ADL Test Suites Works as intended Works as intended SCORM 1.2 Conformance Test Suite v1.2.7
SCORM 2004 3rd Ed. Conformance Test Suite v1.0.2
SumTotal TotalLMS 7.6 Works as intended Works as intended  
Moodle 1.8 Works as intended Works as intended The manifest for the original SCORM 2004 example needed to be cleaned up before working in Moodle.
Ilias 3.9.3 Works as intended Works as intended Ilias loads SCORM 1.2 courses using the SCORM 2004 RTE and the ADL SCORM 1.2-2004 wrapper.
Pathlore 6.5 Not verified Not verified  

General Notes:

  • These wrappers are designed to be SCORM version-neutral (they work with both SCORM 1.2 and SCORM 2004). They also require the pipwerks SCORM API JavaScript wrapper in the course's HTML file. The wrapper can be downloaded from the downloads page.
  • These classes uses ExternalInterface. Testing in a local environment will FAIL unless you set your Flash Player settings to allow local SWFs to execute ExternalInterface commands. Change your security settings using this link.
  • These works are licensed under the Creative Commons Attribution 3.0 Unported License.
  • Use at your own risk! These classes are provided as-is with no implied warranties or guarantees.

ActionScript 2.0 SCORM API wrapper notes:

  • FLAs published using this file must be published using AS2.
  • This class uses ExternalInterface: SWFs published using this class will only work in Flash Player 8 or higher.

ActionScript 3.0 SCORM API wrapper notes:

  • FLAs published using this file must be published using AS3; SWFs published using this class will only work in Flash Player 9 or higher.

Relationships/Mapping

The following table of methods (functions) assumes you have declared the SCORM instance using the variable name scorm:

var scorm:SCORM = new SCORM();

Note about syntax:

  • You may replace scorm with any variable name you wish, such as var myScormData:SCORM = new SCORM();. I just think it's easier to stick to the acronym scorm.
  • You cannot use the variable name SCORM (all uppercase) in AS3, such as
    var SCORM:SCORM = new SCORM();
    Doing so will return an error. Using scorm (all lowercase) works fine.
Public method SCORM 1.2 API Equivalent SCORM 2004 API Equivalent Returns
scorm.connect() API.LMSInitialize("") API.Initialize("") Boolean
scorm.disconnect() API.LMSFinish("") API.Terminate("") Boolean
scorm.get(parameter:String) API.LMSGetValue(parameter) API.GetValue(parameter) String
scorm.set(parameter:String, value:String) API.LMSSetValue(parameter, value) API.SetValue(parameter, value) Boolean
scorm.save() API.LMSCommit("") API.Commit("") Boolean
scorm.debugMode(boolean)
(sets mode)
n/a.
debugMode provides a clean method for viewing debugging messages in your format of choice. Just edit the class's private __debugMode function as needed.
n/a.
debugMode provides a clean method for viewing debugging messages in your format of choice. Just edit the class's private __debugMode function as needed.
none
scorm.debugMode
(returns current mode)
n/a n/a Boolean