Merge remote-tracking branch 'origin/dev-1.1.0' into development

Conflicts:
	pom.xml
This commit is contained in:
anhefti 2021-03-31 15:15:29 +02:00
commit 987abf6f5f
26 changed files with 171 additions and 38 deletions

View file

@ -23,6 +23,6 @@ This feature is currently in an experimental state and may be changed and / or e
.. toctree::
:maxdepth: 1
client_config
connection_config
exam_config
config_template

View file

@ -1,4 +1,4 @@
.. _client-configuration-label:
.. _connection-configuration-label:
Connection Configuration
====================

View file

@ -62,7 +62,7 @@ the pop-up shows the description and the status of the selected configuration.
.. note::
If there are no SEB exam configurations available for applying, the application will note this within a pop-up message.
In this case you can create a new one for this exam as described in :ref:`seb_restriction-label`
In this case you can create a new one for this exam as described in :ref:`sebRestriction-label`
.. image:: images/exam/addExamConfig.png
:align: center
@ -83,7 +83,7 @@ client that receives the encrypted SEB exam configuration will prompt the user f
Click the "OK" button on the pop-up to apply the selected SEB exam configuration. You will see the applied SEB exam configuration in the list.
If the automated SEB restriction feature is supported by the LMS of the exam, the application of a SEB exam configuration will automatically update
the SEB restriction details with the generated Config-Key. See :ref:`seb_restriction-label` for more information.
the SEB restriction details with the generated Config-Key. See :ref:`sebRestriction-label` for more information.
.. image:: images/exam/examWithConfig.png
:align: center
@ -101,7 +101,7 @@ For more information about the Config-Key its purpose and use, please visit the
To remove an already applied SEB exam configuration from the exam, select the SEB exam configuration in the table and use the "Delete Exam Configuration"
action form the right action pane. If the automated SEB restriction feature is supported by the LMS of the exam, the removal of a SEB exam configuration will
automatically update the SEB restriction details and remove the Config-Key form the restriction details. See :ref:`seb_restriction-label` for more information.
automatically update the SEB restriction details and remove the Config-Key form the restriction details. See :ref:`sebRestriction-label` for more information.
Once you have removed a SEB exam configuration from the exam you are able to apply another one to the exam.
You can navigate directly to the SEB exam configuration details page by double-click on the table entry of the SEB exam configuration. You will then
@ -109,19 +109,6 @@ see the details of the SEB exam configuration as well as a table of exams where
to apply one SEB exam configuration to one exam, there is only one entry and you can quickly navigate back to the exam be also double-click on the
table entry of the exam.
Other Features
--------------
Currently there are two other features that can be managed within the exam administration.
- **:ref:`exam-indicators-label`** : Define indicators to measure values for each connected SEB client when an exam is running. And
define thresholds for the indicators to show incidences.
- **:ref:`seb_restriction-label`** : If this feature is supported within the underling LMS of the exam, you are able to automatically
restrict the course or quiz on the LMS for SEB only access and may also be able to set the conditions and attributes for the restriction
as defined by the LMS.
Use Cases
---------
@ -163,3 +150,23 @@ your institution use the type information of the exam to set them into context.
- On the attachment dialog use the drop down selection to select the exam configuration you want to apply to the exam. The drop down selection shows the names of the available exam configurations and you can filter this names by start typing the name of the exam configuration you want to find in the input field of the selection.
- When you have selected a exam configuration the dialog shows you some additional information about the exam configuration.
- If you want or need to put an password protected encryption to the exam configuration for this exam you can do so by give the password for the encryption also within the attachment dialog. Be aware that every SEB client that will receive an encrypted exam configuration from the SEB Server will prompt the user to give the correct password. In most cases an encryption of the exam configuration is not needed, because a secure HTTPS connection form SEB client to SEB Server is already in place.
** Delete an exam**
If you have "Exam Administrator" privileges you are able to entirely delete an existing exam and its dependencies.
.. note::
Please be aware that deletion in this context means a fully removal of the data. The data will be lost and not recoverable.
- Login as an exam administrator and go to the "Exam" page under the "Exam Administration" section.
- Use the filter to find the exam on that you have to delete.
- Double click the list entry of the exam to go to the exam details page. Check if you are on the right exam.
- Use the "Delete" action on the right action pane to open a deletion dialog.
.. image:: images/exam/deleteExam.png
:align: center
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/exam/deleteExam.png
- Within the delete exam dialog you see a list of a dependencies that also will be deleted. Please check them carefully before deletion.
- Use the below action to either delete the exam or cancel the action and go back to the exam view.

View file

@ -81,8 +81,8 @@ The "Copy Exam Configuration" action can always be used no matter in what state
feature there will be a copy dialog shown as pop-up window where one has to give at least a new unique name for the copy. See :ref:`copy-config-label`
for detailed step by step guide.
A plain XML text export of the exam configuration may be needed for testing. This is always possible by using the "Export Exam Configuration"
action from the right action pane. This will start a usual browser download dialog handled by your browser to save or load the file. The default name
A plain XML export of the SEB settings may be needed for testing. This is always possible by using the "Export SEB Settings" action
from the right action pane in the SEB settings view. This will start a usual browser download dialog handled by your browser to save or load the file. The default name
of the file of a exam configuration is "SEBExamSettings.seb".
SEB Server supports also the `SEB Config-Key <https://safeexambrowser.org/developer/seb-config-key.html>`_ that is used to validate the SEB configuration
@ -122,9 +122,9 @@ during the semester.
available for use. A new working revision will be created and all the changes until then will go into the new working revision.
To revert all the changes done since last save / publish use the "Undo" action.
**Export an Exam Configuration**
**Export SEB Settings**
You want to test an exam configuration manually with a SEB client. Therefore you need to export a existing exam configuration and load
You want to test an exam configuration manually with a SEB client. Therefore you need to export the settings of an existing exam configuration and load
it with a SEB client or the SEB configuration tool.
- Sign into SEB Server with your exam administrator role account
@ -132,7 +132,8 @@ it with a SEB client or the SEB configuration tool.
- You see a list of all available exam configuration.
- Use the Filter above the list to narrow down the number of entries and to find a specific exam configuration.
- Open the exam configuration either by double-click on the list entry or be selecting the list entry and using the "View Exam Configuration" action.
- In the view mode of the exam configuration use the "Export Exam Configuration" action to start the export download.
- Open the SEB settings of the exam configuration by using the action on the right action pane.
- Use the "Export SEB Settings" action to start the export download.
- Save the file or open it directly with SEB
**Import an Exam Configuration**
@ -150,6 +151,7 @@ The SEB configuration files where created with the SEB configuration tool and ar
- If the import was successful a new exam configuration with the given name exists.
.. _copy-config-label:
**Copy an Exam Configuration**
Since an exam configuration can only be used by one exam you have periodically to create a copy of an existing exam configuration
@ -220,12 +222,11 @@ some SEB settings are missing or wrong and has to be changed for the exam. This
SEB Setting Differences
-----------------------
In the current version (1.0) of SEB Server, there are some differences to some SEB settings and also some SEB settings that are currently not
available on the SEB Server.
In the current version of SEB Server, there are some differences to some SEB settings as well as some SEB settings that are slightly different or not available at all on the SEB Server.
**SEB settings currently not supported by the SEB Server**
- Start URL: Since SEB Server has already been contacted by a SEB client when downloading the exam configuration this is not used by the exam configuration on SEB Server. But this can be used as fallback URL in the Client Configuration.
- Start URL: Since SEB Server has already been contacted by a SEB client when downloading the exam configuration this is not used by the exam configuration on SEB Server. But this can be used as fallback URL in the Connection Configuration.
- Embedded Resource: There is currently no embedding supported within exam configurations on SEB Server.
- Additional Dictionaries: There are only the SEB client default dictionaries available in the current SEB Server version.
- Additional Resources: Additional resources are currently not available in the current SEB Server version.

View file

@ -1,6 +1,7 @@
.. _exam-indicators-label:
.. _examIndicators-label:
Monitoring Indicators
---------------------
=====================
For monitoring connected SEB clients, SEB server supports some indicators that can be defined within an exam and that are shown and measured during an
exam. When you import, the application automatically creates a default ping-indicator for the exam. You are able to modify this default indicator and also

39
docs/exam_proctoring.rst Normal file
View file

@ -0,0 +1,39 @@
.. _sebProctoringSettings-label:
Live Proctoring
===============
To be able to use the integrated live proctoring feature with SEB and SEB Server you need an external meeting service that can be used by the SEB Server to automatically create meetings.
If this feature is enabled, you are able to setup a live proctoring service for a specified exam that can be used in the monitoring later on while the exam is running and SEB clients are connected.
.. note::
This feature is still in a prototype state and not all functionality meight work as expected.
To be able to use the live proctoring features within SEB Server you need a external meeting service that scales out for the need.
Currently supported is `Jitsi Meet <https://jitsi.org/jitsi-meet/>`_ with JWT token authentication enabled.
A `Zoom meeting service <https://zoom.us/>`_ integration is planed for a future release of SEB Server.
To setup and configure a Jitsi Meet service for testing you can refer to the `Docker installation documentation <https://jitsi.github.io/handbook/docs/devops-guide/devops-guide-docker>`_
To setup a live proctoring service for an exam, go to the view page of the exam and use the "Proctoring Settings" action on the right action pain to open up the proctoring settings dialog.
.. image:: images/exam/proctoringSettings.png
:align: center
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/exam/proctoringSettings.png
Within the proctoring settings dialog you are able switch the service on and off by using the "Proctoring enabled" checkbox. You also see if the proctoring service is enabled within
the action icon that is either an eye when active or a slashed eye when not active.
To define and bind a service you have to chose a service type from the available service types. And you need to give the API access credentials like "Application Key" and "Secret" for
the external meeting service. SEB Server will then try to connect to the meeting service with these credentials to automatically create meetings/rooms for proctoring.
Within the "Collecting Room Size" field you can define the number of maximal participants that shall be collected within one proctoring room. SEB Server will automatically
create these collecting rooms while SEB clients are connecting to the running exam in the monitoring view.
After you have all the settings set, use "OK" to confirm the settings. SEB Server will then try to connect to the meeting service with the given settings and check the access.
Another part of proctoring settings can be found in the "Exam Configuration" "SEB Settings". There is a new tab with the name "Proctoring" where all SEB settings for proctoring are available.
These settings are directly used by a SEB client that supports the proctoring feature.
.. image:: images/exam/proctoringSEBSettings.png
:align: center
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/exam/proctoringSEBSettings.png

View file

@ -1,6 +1,7 @@
.. _seb_restriction-label:
.. _sebRestriction-label:
Automated SEB Restriction
--------------------------
=========================
If the corresponding LMS of an exam supports the automated SEB restriction feature, the SEB restriction can be managed within the exam details page.
To navigate to the exam details page of an exam go to the "Exam" page under the "Exam Administration", find the specified exam in the list by using

View file

@ -15,3 +15,5 @@ We will go through all the steps to setting up an exam for Safe Exam Browser wit
exam_import
exam
exam_indicator
exam_restriction
exam_proctoring

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View file

@ -21,7 +21,8 @@ Usually this API comes as a REST or SOAP API with the core LMS implementation or
SEB Server supports this course API's so far:
- Open edX: The standard system `Open edX REST API <https://courses.edx.org/api-docs/>`_. The SEB Server uses the "courses" endpoints to get course data.
- Moodle (experimental): The standard system `Moodle REST API <https://docs.moodle.org/dev/Web_service_API_functions>`_. The SEB Server uses the "core_course" endpoints to get course data. Note that Moodle binding is experimental in the current SEB Server version and there is no garantee to work correctly or to work with an upcoming full Moodle integration in newer version.
- Moodle (Course Access): The standard system `Moodle REST API <https://docs.moodle.org/dev/Web_service_API_functions>`_. The SEB Server uses the standard Moodle rest endpoints to get course data.
Please note that a second Moodle integration part for SEB access restriction with Config-Key will follow together with a Moodle plugin in a future version of SEB Server
**SEB restriction API**
@ -63,8 +64,7 @@ SEB Server internally. Use the "Type" selector to specify the type of the LMS to
- **: Moodle**: This type is to bind an existing `Moodle <https://moodle.org//>`_ LMS system that is available on the Internet or intranet. The SEB
Server tries to make use of the described API's of the Moodle system but there is currently no SEB restriction plugin available that works
with SEB Server. Note that Moodle binding is experimental in the current SEB Server version and there is no guarantee to work correctly or to work
with an upcoming full Moodle integration in newer version.
with SEB Server. Note that Moodle integration is implemented partially within SEB Server version 1.1.x. Only the course access feature is implemented and the course restriction feature will come with a future SEB Server release
The "LMS Server Address" is the root URL to connect to the LMS server with HTTP over the Internet or intranet. This is usually the the URL that is
also used with the Browser to connect to the main page of the LMS system. And additionally the credentials that has been created with the creation of the :ref:`lms-api-account-label` has to be set in the LMS Setup the make the SEB Server
@ -202,6 +202,11 @@ Once the client registration was successful the client id and client secret can
**Create Moodle API Access Account**
To be able to create an LMS Setup for Moodle you need a Moodle administrator or manager account. You can then use this account in the LMS Setup to connect the the LMS.
.. _lms-setup-rest-plugin-label:
Install SEB restriction API plugin

View file

@ -80,6 +80,48 @@ overview temporary network latency or other irregularities, when this two time v
In the detail view you are also able to use the instructions "Quit SEB Client" and "Mark as Canceled" for the selected SEB client connection.
Live Proctoring
---------------
When the exam live proctoring feature is enabled for the running exam (see :ref:`sebProctoringSettings-label`), SEB Server will automatically create and collect
connected SEB clients into so called collecting rooms. The size of this collecting rooms can be defined within the proctoring settings in the exam.
One ore more proctor can then open such a collecting room and SEB Server will join the proctor to the meeting where the participants of this room can be seen.
.. image:: images/monitoring/proctoringExam.png
:align: center
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/monitoring/proctoringExam.png
Within a live proctoring window you can user the enabled features of the used meeting service. And you are able to communicate with the SEB clients by using one
or more of the following features:
- **Start Audio Broadcast** Will enforce the SEB clients within the particular room to enable receive audio and a proctor can speak to the students that are in the meeting.
- **Start Video Broadcast** Will enforce the SEB clients within the particular room to enable receive audio and video and proctor is shown to the students that are in the meeting and can speak to them as well.
- **Enable Chat** Will enforce the SEB clients within the particular room to enable the chat feature and a proctor is able to chat with all students in the meeting.
.. image:: images/monitoring/proctoringWindow.png
:align: center
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/monitoring/proctoringWindow.png
**Town-hall Feature**
Beside the usual collecting room, there is a town-hall room feature. By using the "Open Townhall" action from the right action pane, SEB Server enforce all SEB clients that
are in collecting rooms as well as new connecting SEB clients to leave their current meeting and join the town-hall meeting for as long as the town-hall is active.
Within the town-hall a proctor has the same features as in the collecting room but can connect to all participants at the same time.
When the town-hall is closed all connected SEB clients are enforced to leave the town-room and go back to its collecting room meetings again.
**Single Room Feature**
Another live proctoring feature can be found in the detailed monitoring view of one particular SEB client connection. The single room features allows a proctor to connect to a single
participant and being able to view or communication with just this one participant. You can initiate this single room connection by using the "Single Room Proctoring" action on
the right action pane. SEB Server will then enforce the involved SEB client to leave its collecting room and join a newly created room with the proctor.
Within the single room a proctor has the same features as in the collecting room to communicate with the student or participant.
When the single room is closed the connected SEB clients is enforced to leave the single room and go back to its collecting room meetings again.
.. image:: images/monitoring/proctoringClient.png
:align: center
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/monitoring/proctoringClient.png
All SEB Client Logs
-------------------

View file

@ -26,7 +26,7 @@ The key features of SEB Server are:
- Built-in multi-tenancy capabilities. Create and manage institutions as separated clients.
- Lightweight user-account management where users can register itself and get needed privileges assigned by already registered administrator users that has the privileges to maintain user accounts.
- Track user activities within user-activity-logs for the whole SEB Server or the a client.
- Create, export and maintain SEB client configurations. Those are needed to startup a Safe Exam Browser client with and contain all information to connect securely to the SEB Server.
- Create, export and maintain SEB connection configurations. Those are needed to startup a Safe Exam Browser client with and contain all information to connect securely to the SEB Server.
- Create and maintain SEB exam configurations. Those are sent to a SEB client on connection setup and contain all SEB settings for a particular e-assessment.
- Setup and maintain Learning Management Systems (LMS) like Open edX or Moodle to be able to navigate and find courses or quizzes on the LMS and to push access-restrictions to the LMS if supported by the LMS
- Import and maintain courses or quizzes form a LMS. Setup everything that is needed for an e-assessment that is based on a course or quiz form the LMS
@ -65,10 +65,10 @@ Another use-case would be to maintain registered user accounts, to give more pri
An institutional administrator has overall read access for its institution and is able to modify the institution properties as well as
create new or maintain existing user-accounts for the belonging institution. Furthermore an institutional administrator is able to create and maintain
learning management system (LMS) setups and SEB client-configurations for the belonging institution.
learning management system (LMS) setups and SEB connection-configurations for the belonging institution.
A typical use-case for a institutional administrator would be to give the appropriate roles and privileges to newly registered users of the institution.
Or another use-case would be to create and maintain SEB client configurations for the institutions and setup and maintain learning management systems
Or another use-case would be to create and maintain SEB connection configurations for the institutions and setup and maintain learning management systems
within the SEB Server and the belonging institution.
**Exam Administrator**

View file

@ -114,7 +114,7 @@ As a user with user-account write privileges (SEB Server administrator and insti
while all other users can only modify change its own password. The current password must be known to change the password.
- Login to SEB Server application with your own account an click the "User Account" section on the left side menu.
- As a user with user-account write privileges one will see the list of all available user-accounts. Find the user-account that must be modified
- As a user with user-account write privileges will see the list of all available user-accounts. Find the user-account that must be modified
by using the filter above and double-click on the respective list entry to open the user-account form in view mode
- Without user-account write privileges, a user will just see its own user-account form in view mode.
- Use the "Change Password" action on the right action pane to open the change password form.
@ -127,7 +127,7 @@ while all other users can only modify change its own password. The current passw
:align: center
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/account/change_password.png
**Activate / Deactivate user-account
**Activate / Deactivate user-account**
Users with user-account write privileges (SEB Server administrator and institutional administrator) are able to activate/deactivate
user-accounts of others. A inactive user-account prevent a user to sign-in. There are several different ways or places where the status
@ -138,3 +138,38 @@ of a user-account can be changed
- If one creates a new user-account there is the possibility to create and activate the user-account by using the "Activate User Account" action from the action pain on the right side.
- The same situation appears for inactive user-accounts in edit mode.
**Delete a user-account**
Users with user-account write privileges (SEB Server administrator and institutional administrator) are able to delete user-accounts of others.
.. note::
Please be aware that deletion means full deletion form the persistent storage, all data will be lost.
A user account can be deleted with all dependencies that belongs to the user-account. This includes:
- All exam configuration the user has created and is owner of
- All exams the user has created and is owner of and all dependencies of an exam to like indicators, configuration mappings and all monitoring data if present
- Login to SEB Server application with your own account an click the "User Account" section on the left side menu.
- As a user with user-account write privileges will see the list of all available user-accounts. Find the user-account that must be deleted
by using the filter above and double-click on the respective list entry to open the user-account form in view mode.
- Use the "Delete User Account" action from the right action pane to open the deletion dialog.
.. image:: images/account/delete.png
:align: center
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/account/delete.png
- Within the delete dialog you are able to delete either
- Only the user-account with no dependencies at all (no selection)
- The user-account with all dependencies (Include all Dependencies)
- Or the user-account with only the exam dependencies, keeping the exam configurations (Include all Exams)
- After you have made your choice, you can show a report that will show all dependencies that are deleted within the action. Use the "Show Report" action below the delete dialog to show the report or
just use the "Delete" action to execute the delete.
- In the deletion report you are able to check carefully every object that will be deleted within the action.
.. image:: images/account/deleteReport.png
:align: center
:target: https://raw.githubusercontent.com/SafeExamBrowser/seb-server/master/docs/images/account/deleteReport.png