Skip to content

gtoffoli/django-xapi-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

django-xapi-client

A set of functions to put, get and process xAPI statements.

This is a Django app for writing statements to, and reading statements from, an xAPI Learning Record Store (LRS) and supporting some processing on them.

This app was initially created by extracting some code from the CommonSpaces Platform, and was tested with the Learning Locker LRS. Now we have interfaced it also to TRAX LRS.

django-xapi-client relies on the Python implemetation of the xAPI protocol TinCanPython, developed by Rustici Sofware, as maintained by the OpenEdx project. It is still used as an extension of CommonSpaces inside a few Erasmus+ projects.

This client also implements:

  • a UI form for assisting a user in composing xAPI statements manually and sending them to an LRS, as a self-declaration of learning-related activities, possibly in informal learning contexts;
  • a UI form supporting the computation of the URL to be used for getting a Parameterized Learning Analytics Dashboard from Learning Locker.

As a Django app, django-xapi-client has to be configured with a set of context variables defined in the settings module of the main app, which, in our case. is commons (some of these are hidden in a private include file). They include

  • HAS_LRS - enabling / disabling the sending of the xAPI statements;
  • LRS_VERSION - eg. 1.0.1 or 1.0.3;
  • LRS_ENDPOINT - an url defined by the LRS, possibly in relation with a username;
  • LRS_USERNAME - mandatory if LRS_AUTH is not provided;
  • LRS_PASSWORD - mandatory if LRS_AUTH is not provided;
  • LRS_AUTH - if not provided, it is computed by TinCanPython.

About

A Django app defining a set of functions to put, get and process xAPI statements.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published