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

Add score and status submission events to SCORM activity

XMLWordPrintable

    • Icon: Improvement Improvement
    • Resolution: Fixed
    • Icon: Minor Minor
    • 3.1
    • 2.7.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("")

      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.

            matteo Matteo Scaramuccia
            benrj Ben Johnson
            Dan Marsden Dan Marsden
            David Monllaó David Monllaó
            Rajesh Taneja Rajesh Taneja
            Votes:
            2 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Resolved:

                Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.