Uploaded image for project: 'OpenOLAT'
  1. OpenOLAT
  2. OO-5378

Replace SCORM engine with client side based implementation

    XMLWordPrintable

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 15.5.0
    • Component/s: SCORM runtime
    • Labels:
      None

      Description

      OpenOlat supports SCORM 1.2 for a long time. The implementation has several issues: 

      • The server side runtime is built on code that was originally designed to run on the client as a java applet
      • The source code for the implementation got lost over the years
      • The API adapter is very old and weakly tested
      • Recent changes in the Google Chrome regarding the behavior of XMLHttpRequest requires a complete rewrite of the API adapter
      • Workarounds for the Google Chrome problem we implemented so far are (OO-5097) only partially successful. More modules came to our attention that doe not run properly

      The only solution we see to fully resolve the Google Chrome problems is to switch to a client based SCORM engine. Luckily we found one that suits our needs: scorm-again

      See https://github.com/jcputney/scorm-again

      ToDo

      • Embed scorm-again in OpenOlat instead of the OpenOlat API adapter
      • Implement hooks required by scorm-again to handle retrieving and persisting of data
      • Work around OpenOlat specialities such as the "close on finish" option
      • Extend the implementation to accept longer suspend data as defined in the spec. Unfortunately there are many modules out there that do not respect the spec in this regards. 

       

      Side note

      As a benefit of using scorm-again the hope to support SCORM 2004 sometime becomes a real option as scorm-again can run also 2004 modules. However, the simple sequencing aspect of the 2004 spec still needs to be implemented on the server side. 

      Support for 2004 is not part of this issue, funding is required. 

       

       

        Figma for Jira By 42nd

          Attachments

            Activity

              People

              Assignee:
              srosse Stéphane Rossé
              Reporter:
              gnaegi Florian Gnägi
              Tester:
              Mandy Menzel
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - 0 minutes
                  0m
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 4 days
                  4d