Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New: Added support for the cmi5 specification (Resolves #124) #127

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

kaveritekawade
Copy link

Resolves #124

New

Addition of cmi5 specification support to enable Adapt courses to meet the MUST requirements outlined in the official cmi5 specification documentation for an AU.

  • Update to the properties schema to include a cmi5 option under the _specification configuration, along with relevant help text updates.
  • Post-build actions include the deletion of tincan.xml and the creation/editing of a valid cmi5.xml file.
  • A course can be published as a valid cmi5 package, which can be uploaded to a cmi5 conformant LMS.

When the course is launched from the LMS, the course will now:

  • Read the launch parameters in the URL
  • Fetch an authentication token for the session
  • Setup the configuration for the xapiWrapper library (used to communicate to the LRS)
  • Retrieve the user's learning preferences stored on the LRS
  • Send a valid cmi5 defined xAPI statements.

Testing

  1. Build an adapt course with the adapt-contrib-xapi extension enabled and _specification set to cmi5 .
  2. Publish a valid cmi5 package, which can be uploaded to a cmi5 conformant LMS.
  3. When the course is launched from the LMS, the course will send valid cmi5 defined xAPI statements.

@kaveritekawade kaveritekawade marked this pull request as ready for review February 19, 2024 05:40
@joe-allen-89 joe-allen-89 requested review from danielghost and removed request for danielghost February 19, 2024 12:20
Copy link
Member

@oliverfoster oliverfoster left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code-wise, this looks exceptional. Thank you.

js/CMI5.js Outdated Show resolved Hide resolved
js/CMI5.js Outdated Show resolved Hide resolved
js/CMI5.js Outdated Show resolved Hide resolved
js/CMI5.js Outdated Show resolved Hide resolved
js/CMI5.js Outdated Show resolved Hide resolved
js/CMI5.js Outdated Show resolved Hide resolved
@kaveritekawade
Copy link
Author

The changes have been implemented in accordance with the feedback provided on the pull request.

@kaveritekawade
Copy link
Author

Hi @oliverfoster, are there any updates on the review process for this PR?

@oliverfoster
Copy link
Member

I have asked people to review it alas no-one has. @cahirodoherty-learningpool @danielghost have you any interest in cmi5? This pr could do with a review if you have time please.

Co-authored-by: Cahir O'Doherty <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Needs Reviewing
Development

Successfully merging this pull request may close these issues.

Support cmi5 specification
4 participants