CMI 5 Working Group Meeting Minutes – December 6th - AICC/CMI-5_Spec_Current GitHub Wiki

cmi5 Working Group Meeting Minutes – December 6th

Attendees

  • Bill McDonald (Working Group Leader)
  • Florian Tolk (ADL)
  • Mark Grant (Independent)
  • Art Werkenthin (RISC, inc)
  • Dennis Hall (Learning Templates)
  • David Pesce (Exputo)
  • Henry Ryng (inXSOL)

Notes

The group updated the draft language for cmi5 Client Library Usage/best practices (for github.io site) as follows:

One HTML Example for each scenario.

  • Hello World
  • Simple Completed
  • Passed/Failed

How to use (Hello world -- Scenario #1)

  1. Include a reference to the ADL wrapper library. This is available from the ADL Github site - See https://github.com/adlnet/xAPIWrapper/tree/master/dist ).

<script src="Scripts/xapiwrapper.min.js"></script>

  1. Include a reference to cmi5Controller.js. This is available from the ADL Github site - See https://github.com/adlnet/cmi5-Client-Library/tree/master/Examples/Scripts

<script src="Scripts/cmi5Controller.js"></script>

  1. Include a reference to cmi5Wrapper.js. See https://github.com/adlnet/cmi5-Client-Library/tree/master/Examples/Scripts

<script src="Scripts/cmi5Wrapper.js"></script>

  1. Parse launch parameters passed on the URL Launch line and set properties of the cmi5 controller.

    cmi5Controller.setEndPoint(parse("endpoint"));

    cmi5Controller.setFetchUrl(parse("fetch"));

    cmi5Controller.setRegistration(parse("registration"));

    cmi5Controller.setActivityId(parse("activityid"));

    cmi5Controller.setActor(parse("actor"));

  2. Call the cmi5Controller.startUp() method. Two call back functions are passed:

    a. cmi5Ready......This function is called once the controller has fetched the authorization token, read the State document and the agent Profile.

    b. startUpError...This function is called if the startUp() method detects an error.

  3. Create the "cmi5Ready" function.

    c. Set Object Identifiers for your AU with cmi5Controller.setObjectProperties(langstring, actitityType, name, description)

    • The langstring used by the AU ( Example: "en-US" )

    • The actitityType (Example: "http://adlnet.gov/expapi/activities/assessment\")

    • The name of the AU (Example: "ADL AU Example 1")

    • The description of the AU (Example : "This is a simple of an AU.")

    d. Issue the initialized Statement

    e. SendStatement("Initialized");

  4. Create the "startUpError" function.

    f. Set your error handling according to your preferences (console, alert, etc)

  5. Add reference to FinishAU() in your UI for learner exit event.

⚠️ **GitHub.com Fallback** ⚠️