Skip to main content

Various backends for receiving edX LMS events.

Project description

PyPI CI Codecov Documentation Supported Python versions License

Various backends for retransmitting edX LMS events to external services.

Overview

event-routing-backends contains plugins for the event-tracking app that is installed as a part of edx-platform. It provides a backend that can take events and re-transmit them to external services. It also provides some new processers that can convert edx-platform events into other formats.

Currently work to support xAPI and Caliper event formats is in progress.

See OEP 26 for background; the xAPI and Caliper subdocuments in particular include a specification of how LMS events will be translated to the format of the respective protocols.

Documentation

Documentation for this repo is published to Read the Docs

License

The code in this repository is licensed under the AGPL 3.0 unless otherwise noted.

Please see LICENSE.txt for details.

How To Contribute

Contributions are very welcome. Please read How To Contribute for details. should be followed for all Open edX projects.

The pull request description template should be automatically applied if you are creating a pull request from GitHub. Otherwise you can find it at PULL_REQUEST_TEMPLATE.md.

The issue report template should be automatically applied if you are creating an issue on GitHub as well. Otherwise you can find it at ISSUE_TEMPLATE.md.

Reporting Security Issues

Please do not report security issues in public. Please email security@openedx.org.

Getting Help

If you’re having trouble, we have discussion forums at https://discuss.openedx.org where you can connect with others in the community.

Our real-time conversations are on Slack. You can request a Slack invitation, then join our community Slack workspace.

For more information about these options, see the Getting Help page.

Change Log

Unreleased

[7.0.2]

  • Ensure lists of answers in problem_check are properly serialized to JSON so they can be parsed downstream

    Note: Old events cannot be updated, the log must be replayed (if possible).

[7.0.1]

  • Do not send events for unknown courses

[7.0.0]

  • Multi-question problem_check tracking log statements will now be split into one xAPI statement for each question

[6.2.0]

  • Add support for completion events

[6.1.0]

  • Add support for exam attempts events

[6.0.0]

  • Do not send events for unknown users

[5.5.6]

  • upgrading deprecated djfernet with django-fernet-fields-v2

[5.4.0]

  • Add support for the edx.course.enrollment.mode_changed event

[5.3.1]

  • Allow External ID type to fall back to LTI on older versions of edx-platform to preserve backward compatibility

[5.3.0]

  • Use proper externalId types XAPI and CALIPER instead of LTI

  • Make user identifier in xAPI events configurable

  • Switch from edx-sphinx-theme to sphinx-book-theme since the former is deprecated

  • Make id of xAPI statements idempotent

[5.2.2]

  • Rename toggle_warnings to toggle_warning for consistency with setting_warning.

  • Added session id to all events

  • add support for video interaction events.

  • Replaced eventVersion with transformerVersion to include semantic version of event-routing-backend package.

[5.2.1]

  • Added video_complete event to xAPI backend and fixed broken links in documentation

[5.2.0]

  • Added Support for Django4 and used djfernet instead of django-fernet-fields

  • Removed Django22, 30 and 31 support

  • Constrained “click” to 7.1.2 as edx-celeryutils constraints the version to this package

[4.1.1]

  • Switched from jsonfield2 to jsonfield as the earlier one has archived and merged back in the latter one.

[4.1.0]

  • Added support for django3.0, 3.1 and 3.2

[4.0.1]

  • Change a noisy INFO log message in TransformerRegistry.register() to DEBUG and fix two logging typos.

[4.0.0]

  • Breaking change: Rename CaliperEnvelopProcessor to CaliperEnvelopeProcessor and rename module accordingly (typo fix)

[3.0.2]

[3.0.1]

This tag is a re-release of version 3.0.0. (Failed to bump internal version, though.)

[3.0.0]

  • Breaking change: Caliper and xAPI processors will reject events unless the CALIPER_EVENTS_ENABLED and XAPI_EVENTS_ENABLED Django settings are enabled, respectively.

[2.0.0]

(no changelog recorded)

[1.0.0] - 2020-11-09

  • Dropped support for Python 3.5

[0.2.0] - 2020-11-06

  • caliper transformer backend

  • event routing backend

[0.1.0] - 2020-09-22

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

edx-event-routing-backends-7.0.2.tar.gz (77.8 kB view details)

Uploaded Source

Built Distribution

edx_event_routing_backends-7.0.2-py2.py3-none-any.whl (103.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file edx-event-routing-backends-7.0.2.tar.gz.

File metadata

File hashes

Hashes for edx-event-routing-backends-7.0.2.tar.gz
Algorithm Hash digest
SHA256 2fd0af1062c0c6f56653af74d183acb516912481ade4f8ab77bbd742e836b235
MD5 aded310789f2e7e81c513abd64a8580f
BLAKE2b-256 8596ab3cd2de70e1bc65b38c5b23a2f082d4d41c80ed53b7388a862206b3a60b

See more details on using hashes here.

File details

Details for the file edx_event_routing_backends-7.0.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for edx_event_routing_backends-7.0.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 582d94d260eeee1a96e13a9fa6be84a555673b7d1e5dc54a346853e663dadca4
MD5 9b566fa68405f625bbe1e89fee2b1e39
BLAKE2b-256 e39578a4b77d5351d26e6748039fd72089aaaad51206145fa95c0b8aa2f6e8ce

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page