• last updated 7 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Use a microseconds resolution to store the proctoring artifacts

  1. … 1 more file in changeset.
Subst commands as well, include the artifact is in the websocket message

Rename the file so it actually has an extension

Add extension to the filename so it is preserved

Provide an api to store proctoring artifacts, and a callback hook for postprocessing

  1. … 4 more files in changeset.
Introduce a data model for "proctoring artifacts", aka the pictures

and audios, which so far have only lived as files in the filesystem

named after a convention

The new datamodel allows to quickly and reliably retrieve the pictures

collected by proctoring and also provides for a technical space, in

form of a JSON metadata column, to store additional information coming

from e.g. postprocessing phases.

The idea is to use this feature to provide reviewing tools of proctoring results and allow for flexile downstream postprocessing.

The file naming convention has not been changed for the time being, so this would be

retro-compatible. However, integrators should start relying on the new

data model to retrieve pictures.

  1. … 8 more files in changeset.
Get the user_id directly

Not rely on a deprecated command to check for websockets, improve idiom

Prefer the more modern api and fallback on the old idiom to support older NaviServer versions

reduce verbosity

added support for optionally turning off proctoring recodings

This options is useful e.g. for e.g. mock exams to avoid privacy issues.

  1. … 10 more files in changeset.
Now that the proctoring display UI has been ported, notify by default new proctoring events via websockets

  1. … 2 more files in changeset.
Refactoring, as proctoring files are not only pictures, make api public, write automated test

  1. … 2 more files in changeset.
Implement a checksum + cache mechanism to check whether user is sending the same file multiple times:

this is needed to address the problem of timeouts, where the server might process a request even when the client has given up and rescheduled the upload. We now store the latest checksum that has been received and compare it with the new picture.

  1. … 2 more files in changeset.
Add a new flag to disable check on proctoring start/end time for applications that do not store this info in the package datamodel, improve doc

Fix typo again

Fix typo

An own package for proctoring support.

What is there

- adp includes implementing the main proctoring user interaction: desired page can be enclosed in an iframe that will send shaphots taken from browser's camera and microphone at random intervals. Various options can be specified, including custom UI messages and the include can be integrated in custom pages or as part xowiki/xowf object methods

- wizard-based step-by-step configuration of user's setup

- english and german localization

- default proctoring upload endpoints upon package mount

- configuration data-model and api

What is missing

- reporting UI includes (porting from downstream should come shortly)

- some message key is WU specific (but can be customized)

- further parameters/customization

- ...

  1. … 20 more files in changeset.
file proctoring-upload.tcl was initially added on branch oacs-5-10.

    • -0
    • +0
    ./proctoring-upload.tcl