• last updated 3 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Not rely on a deprecated command to check for websockets, improve idiom

Proctoring enforcing reform:

so far, to proctor applications that do not have a "single point of entry", such as e.g. dotlrn communities, we have integrated the lib/proctoring-enforce include into the website master template. Now we improve from this by introducing a callback mechanism that allows the single packages to decide if a request is "theirs to be proctored" or not.

  1. … 3 more files in changeset.
Allow to pass the doc array to the master (e.g. for the title)

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

reduce verbosity

fix typo

added support for optionally turning off proctoring recodings

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

  1. … 8 more files in changeset.
Improve doc, remove needless properties

file proctoring-configure.tcl was initially added on branch oacs-5-10.

    • -0
    • +0
    ./proctoring-configure.tcl
UI include to configure proctoring on an arbitrary ACS object, meant to be integrated downstream into custom UIs

  1. … 3 more files in changeset.
file proctoring-configure.adp was initially added on branch oacs-5-10.

    • -0
    • +0
    ./proctoring-configure.adp
Correct hash challenging:

actually, the hash sent by the browser changes based on the requested URL, so it does not make sense to set it directly.

  1. … 2 more files in changeset.
Avoid double encoding of base URL

Basic backend support for Safe Exam Browser (https://safeexambrowser.org/):

via the API is possible to associate a Safe Exam Browser configuration and its validation key to

the proctored object. The proctored page will then take care of enforcing that, if the safe exam

browser is in use, the supplied request header matches with the configuration and the URL.

When such match fails, we now return the configuration file to the browser, so that users can

open it and restart their session properly configured.

  1. … 7 more files in changeset.
Formatting change

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.
Some changes to allow including the UI in pages that need query parameters (e.g. the 'm' method)

Make proctoring-display provide a master, according to a parameter

Improve doc, bring param in the contract

Port of the downstream proctoring-display user interface, minus the WU-specific stuff, that we will maintain locally

file proctoring-display.adp was initially added on branch oacs-5-10.

    • -0
    • +0
    ./proctoring-display.adp
file proctoring-display.tcl was initially added on branch oacs-5-10.

    • -0
    • +0
    ./proctoring-display.tcl
added editor hints

improve spelling

  1. … 3 more files in changeset.
Allow in the include to selectively disable combinations of audio, camera and desktop recording (at least one stream needs to be enabled for proctoring to happen)

This allows to better tailor proctoring behavior to the user needs and privacy requirements

  1. … 2 more files in changeset.
Include the technical error message in the popup to the user when missing stream error occurs

  1. … 4 more files in changeset.
Allow to turn off the actual upload of proctored files e.g. to implement a test page or when proctoring should just be used as a deterrent

  1. … 1 more file in changeset.
Increase threshold to 5Kb