Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-48680

Add score and status submission events to SCORM activity

    XMLWordPrintable

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 2.7.1, 3.1
    • 3.1
    • SCORM
    • MOODLE_27_STABLE, MOODLE_31_STABLE
    • MOODLE_31_STABLE
    • m31_MDL-48680_Add_Score_Status_Events
    • Hide

      (difficulty: easy, requires teacher access to a course)

      1. Add a new SCORM activity using the Prodding SCO, the 1.2 package: http://www.ostyn.com/standards/scorm/samples/ProddingSCOPackageSCORM1.2.zip
      2. Enable API debugging, including debugging at DEVELOPER level
      3. Attend to it as a student using FF cleaning its cache first - Note: CR has sometime issues with giving the right room to visualize the SCO in the Moodle player - , the prodding SCO will appear. Select the Scripted test tab and run - i.e. press Play after copying - the script below:

        LMSInitialize("")
         
        // Could be: 0, 10, 100.
        LMSSetValue("cmi.core.score.raw","10")
        // Could be: incomplete, completed, failed, passed.
        LMSSetValue("cmi.core.lesson_status","completed")
         
        LMSFinish("")
        

      4. Ensure that everything is fine e.g. no debugging messages on the API logging windows; then go to the Activity logs
      5. Check for the scoreraw_submitted and status_submitted event being there and properly populated with correct details, with the event name linked to the user tracking report for that attempt.
      6. Re-enter with the same student, and submit a new Scripted test:
        1. changing "10" with "0" and then with "100"
        2. changing "completed" with "passed" and then with "failed". Even "incomplete" but the expected result will change: no related Submitted SCORM status will be recorded
        3. starting a new attempt - or deleting the current one(s) - and applying the script with the permutations above

      If you want to extend the test with SCORM 2004, download the SCORM 2004 package and use the Scripted test below, expecting now two status_submitted events:

      Initialize("")
       
      // Could be: 0, 10, 100.
      SetValue("cmi.score.raw","10")
      // Could be: incomplete, completed.
      SetValue("cmi.completion_status","completed")
      // Could be: passed, failed.
      SetValue("cmi.success_status","passed")
       
      Terminate("")
      

      Show
      (difficulty: easy, requires teacher access to a course) Add a new SCORM activity using the Prodding SCO , the 1.2 package: http://www.ostyn.com/standards/scorm/samples/ProddingSCOPackageSCORM1.2.zip Enable API debugging, including debugging at DEVELOPER level Attend to it as a student using FF cleaning its cache first - Note: CR has sometime issues with giving the right room to visualize the SCO in the Moodle player - , the prodding SCO will appear. Select the Scripted test tab and run - i.e. press Play after copying - the script below: LMSInitialize("")   // Could be: 0, 10, 100. LMSSetValue("cmi.core.score.raw","10") // Could be: incomplete, completed, failed, passed. LMSSetValue("cmi.core.lesson_status","completed")   LMSFinish("") Ensure that everything is fine e.g. no debugging messages on the API logging windows; then go to the Activity logs Check for the scoreraw_submitted and status_submitted event being there and properly populated with correct details, with the event name linked to the user tracking report for that attempt. Re-enter with the same student, and submit a new Scripted test : changing "10" with "0" and then with "100" changing "completed" with "passed" and then with "failed" . Even "incomplete" but the expected result will change: no related Submitted SCORM status will be recorded starting a new attempt - or deleting the current one(s) - and applying the script with the permutations above If you want to extend the test with SCORM 2004, download the SCORM 2004 package and use the Scripted test below, expecting now two status_submitted events: Initialize("")   // Could be: 0, 10, 100. SetValue("cmi.score.raw","10") // Could be: incomplete, completed. SetValue("cmi.completion_status","completed") // Could be: passed, failed. SetValue("cmi.success_status","passed")   Terminate("")

    Description

      It would be great if Moodle could fire an event whenever a SCORM activity was scored, completed (or passed). This would be similar to the already existing "attempt_submitted" trigger in the quiz module.

      This should be a quick add (will provide a patch/unified diff), and seems to be low risk.

      Attachments

        Issue Links

          Activity

            People

              matteo Matteo Scaramuccia
              benrj Ben Johnson
              Dan Marsden Dan Marsden
              David Monllaó David Monllaó
              Rajesh Taneja Rajesh Taneja
              Dan Marsden, Matteo Scaramuccia, Jake Dallimore, Mathew May, Mihail Geshoski
              Votes:
              2 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                23/May/16