Skip to content

qualitus/LpEventReportQueue

Repository files navigation

LpEventReportQueue Plugin

Min ILIAS Version Recommended ILIAS Version Max ILIAS Version

PHP Version PHP Version Plugin Slot

Plugin Version

The LpEventReportQueue plugin tracks certain events and historizes them in a database queue. Entries in the queue can later be accessed via API by other Plugins (see below). Those Plugins are called Provider-Plugins, because they can transfer (=provide) the events to another system.

This approach decouples the collection and distribution of events into separate plugins (Queue + Provider). The Queue-Plugin can therefore be used in different contexts and even with multiple Providers at once.

Tracked events:

  • LearningProgress (no_attempted | in_progress | completed | failed)
    • updateStatus
  • Member (Administrator | Tutor | Member)
    • addParticipant
    • deleteParticipant
    • addToWaitingList
    • removeFromWaitingList
    • createAssignment
    • deleteAssignment
    • updateAssignment
  • Object
    • create
    • delete
    • toTrash
    • undelete
    • update
    • putObjectInTree

Table of Contents

Installation

  1. Clone from git or download and extract zip file
  2. Rename folder to LpEventReportQueue
  3. Copy folder to
    <ilias root path>/Customizing/global/plugins/Services/Cron/CronHook/
  4. Navigate in your ILIAS installation to Administration -> Plugins and execute
  5. Actions/Update
  6. Actions/Refresh Languages
  7. Actions/Activate

Composer

After the plugin files have been installed as described above, please install the composer dependencies:

cd Customizing/global/plugins/Services/Cron/CronHook/LpEventReportQueue
composer install --no-dev

Configuration

The confiugration for the plugin can be found here: Administration -> Plugins -> Actions -> Configure.

  • Select which user data should be persisted (e.g. firstname, lastname, or custom fields)
  • Select if events should be gathered for all repository objects, or courses only

Initialization

After installation of the plugin, the queue will be empty - even if there has already been learning activity. This means, the queue starts in an incomplete state which can be "repaired" by initialization of the queue. The initialization can only be started once and will approximate a sequence of events to match the current state of the system (learning progress, course memberships, etc.).

"better than nothing"

Please bear in mind, that this reconstruction will NOT match the actual history: event dates can be incorrect and intermediate steps can be missing.

Usage

After activation, this plugin will work in the background.

Dependencies

  • No dependencies

API Usage

Please read the README.md at: Customizing/global/plugins/Services/Cron/CronHook/LpEventReportQueue/classes/API/README.md

Troubleshooting

1. I cannot restart the queue initialization

This is correct. Once run, the queue cannot reinitialized. If you want to force a new initialization, you have to uninstall the plugin.
Caution: You may lose some data, because some informations are only available while an event happens.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5

Languages