Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-85023

SEB configuration should also allow use of WebRTC recording on MacOS

XMLWordPrintable

    • MOODLE_404_STABLE, MOODLE_405_STABLE, MOODLE_500_STABLE
    • MOODLE_404_STABLE, MOODLE_405_STABLE
    • MDL-85023_404
    • MDL-85023_405
    • MDL-85023_main
    • Hide

      Currently, the only workaround is to provide a template that the teachers can use.

      Show
      Currently, the only workaround is to provide a template that the teachers can use.
    • Hide

      Preparation 1

      1. Install the qbehaviour_selfassess and the qtype_recordrtc plugins.
      2. Create a quiz with a "Record audio/video" (recordrtc) question, setting the "Type of recording" to "Single video".
      3. In the quiz settings, in the "Safe Exam Browser" section, set "Require the use of Safe Exam Browser" to "Yes - Configure manually". Leave all settings as they are.
      4. Make sure that Safe Exam Browser does not currently have permission to access the camera and the microphone by issuing tccutil reset Camera org.safeexambrowser.SafeExamBrowser and tccutil reset Microphone org.safeexambrowser.SafeExamBrowser in the Terminal.app.

      Test 1

      1. Log in as a student using a Mac with OS version 12 or later and a recent version of Safe Exam Browser installed.
      2. Navigate to the quiz and click "Launch Safe Exam Browser".
      3. Once Safe Exam Browser has finished loading, log in again (as the student) and attempt the quiz.
      4. In the question, click "Start camera".
      5. The operating system will show a dialog similar to "Safe Exam Browser would like to access the camera." Click "Allow".
      6. The operating system will show a dialog similar to "Safe Exam Browser would like to access the microphone." Click "Allow".
      7. Verify you see a Moodle modal dialog "Wrong permissions. The user must allow the browser access to the webcam/microphone/screen." Close the dialog by clicking "Ok.
      8. Verify you see "Recording failed."
      9. Finish the attempt and close Safe Exam Browser.
      10. In the computer's System Preferences, click "Security & Privacy" and select "Microphone". Verify that Safe Exam Browser has permission to access the microphone, i. e. the application is listed and the switch is in the "on" position.
      11. Still in the System Preferences and "Security & Privacy", select "Camera". Verify that Safe Exam Browser has permission to access the camera.

      Hence, despite having granted the necessary permissions, it is not possible to record audio and video in Safe Exam Browser.

      Preparation 2

      1. As the teacher, delete the attempt from test 1.
      2. Go to the "Safe Exam Browser" section of the quiz settings. Set "Allow browser access to camera" and "Allow browser access to microphone" to "Yes". Save the configuration.
      3. Make sure that Safe Exam Browser does not currently have permission to access the camera and the microphone by issuing tccutil reset Camera org.safeexambrowser.SafeExamBrowser and tccutil reset Microphone org.safeexambrowser.SafeExamBrowser in the Terminal.app.

      Test 2

      1. Log in as a student using a Mac with OS version 12 or later and a recent version of Safe Exam Browser installed.
      2. Navigate to the quiz and click "Launch Safe Exam Browser".
      3. Once Safe Exam Browser has finished loading, log in again.
      4. Verify that a dialog similar to "Permissions Required for web applications. For this session, camera/microphone access for web applications is required. You need to authorize camera/microphone access before you can start the session." is shown. Click "OK". (This dialog is shown by Safe Exam Browser.)
      5. Verify that a dialog similar to "Safe Exam Browser.app would like to access your camera" is shown. Click "Allow". (This dialog is shown by the operating system.)
      6. Verify that a dialog similar to "Safe Exam Browser.app would like to access your microphone" is shown. Click "Allow".
      7. Attempt the quiz.
      8. Click "Start camera".
      9. Click "Start recording" and record a few seconds via the computer's camera.
      10. Click "Stop recording".
      11. Verify that the video has been recorded.
      12. Finish the attempt and quit Safe Exam Browser.

      Note that the permissions are now requested before the start of the exam.

      If desired, you may reset the granted permissions again as explained in the preparation.

      Show
      Preparation 1 Install the qbehaviour_selfassess and the qtype_recordrtc plugins. Create a quiz with a "Record audio/video" (recordrtc) question, setting the "Type of recording" to "Single video". In the quiz settings, in the "Safe Exam Browser" section, set "Require the use of Safe Exam Browser" to "Yes - Configure manually". Leave all settings as they are. Make sure that Safe Exam Browser does not currently have permission to access the camera and the microphone by issuing tccutil reset Camera org.safeexambrowser.SafeExamBrowser and tccutil reset Microphone org.safeexambrowser.SafeExamBrowser in the Terminal.app. Test 1 Log in as a student using a Mac with OS version 12 or later and a recent version of Safe Exam Browser installed. Navigate to the quiz and click "Launch Safe Exam Browser". Once Safe Exam Browser has finished loading, log in again (as the student) and attempt the quiz. In the question, click "Start camera". The operating system will show a dialog similar to "Safe Exam Browser would like to access the camera." Click "Allow". The operating system will show a dialog similar to "Safe Exam Browser would like to access the microphone." Click "Allow". Verify you see a Moodle modal dialog "Wrong permissions. The user must allow the browser access to the webcam/microphone/screen." Close the dialog by clicking "Ok. Verify you see "Recording failed." Finish the attempt and close Safe Exam Browser. In the computer's System Preferences, click "Security & Privacy" and select "Microphone". Verify that Safe Exam Browser has permission to access the microphone, i. e. the application is listed and the switch is in the "on" position. Still in the System Preferences and "Security & Privacy", select "Camera". Verify that Safe Exam Browser has permission to access the camera. Hence, despite having granted the necessary permissions, it is not possible to record audio and video in Safe Exam Browser. Preparation 2 As the teacher, delete the attempt from test 1. Go to the "Safe Exam Browser" section of the quiz settings. Set "Allow browser access to camera" and "Allow browser access to microphone" to "Yes". Save the configuration. Make sure that Safe Exam Browser does not currently have permission to access the camera and the microphone by issuing tccutil reset Camera org.safeexambrowser.SafeExamBrowser and tccutil reset Microphone org.safeexambrowser.SafeExamBrowser in the Terminal.app. Test 2 Log in as a student using a Mac with OS version 12 or later and a recent version of Safe Exam Browser installed. Navigate to the quiz and click "Launch Safe Exam Browser". Once Safe Exam Browser has finished loading, log in again. Verify that a dialog similar to "Permissions Required for web applications. For this session, camera/microphone access for web applications is required. You need to authorize camera/microphone access before you can start the session." is shown. Click "OK". (This dialog is shown by Safe Exam Browser.) Verify that a dialog similar to "Safe Exam Browser.app would like to access your camera" is shown. Click "Allow". (This dialog is shown by the operating system.) Verify that a dialog similar to "Safe Exam Browser.app would like to access your microphone" is shown. Click "Allow". Attempt the quiz. Click "Start camera". Click "Start recording" and record a few seconds via the computer's camera. Click "Stop recording". Verify that the video has been recorded. Finish the attempt and quit Safe Exam Browser. Note that the permissions are now requested before the start of the exam. If desired, you may reset the granted permissions again as explained in the preparation.
    • Show
      Code verified against automated checks with warnings. Checked MDL-85023 using repository: https://github.com/PhilippImhof/moodle.git MOODLE_404_STABLE (0 errors / 3 warnings) [branch: MDL-85023_404 | CI Job ] overview (0/0) , phplint (0/0) , phpcs (0/0) , js (0/0) , css (0/0) , phpdoc (0/0) , commit (0/0) , savepoint (0/0) , thirdparty (0/0) , externalbackup (0/3) , grunt (0/0) , shifter (0/0) , mustache (0/0) , gherkin (0/0) , MOODLE_405_STABLE (0 errors / 3 warnings) [branch: MDL-85023_405 | CI Job ] overview (0/0) , phplint (0/0) , phpcs (0/0) , js (0/0) , css (0/0) , phpdoc (0/0) , commit (0/0) , savepoint (0/0) , thirdparty (0/0) , externalbackup (0/3) , grunt (0/0) , shifter (0/0) , mustache (0/0) , gherkin (0/0) , main (0 errors / 3 warnings) [branch: MDL-85023_main | CI Job ] overview (0/0) , phplint (0/0) , phpcs (0/0) , js (0/0) , css (0/0) , phpdoc (0/0) , commit (0/0) , savepoint (0/0) , thirdparty (0/0) , externalbackup (0/3) , grunt (0/0) , shifter (0/0) , mustache (0/0) , gherkin (0/0) , Should these errors be fixed? Built on: Tue Apr 1 05:00:15 UTC 2025
    • Show
      Launching automatic jobs for branch MDL-85023 _405 https://ci.moodle.org/view/Testing/job/DEV.02%20-%20Developer-requested%20PHPUnit/18864/ PHPUnit (sqlsrv) --> unrelated, please ignore. https://ci.moodle.org/view/Testing/job/DEV.01%20-%20Developer-requested%20Behat/64579/ Behat (NonJS - boost and classic) https://ci.moodle.org/view/Testing/job/DEV.01%20-%20Developer-requested%20Behat/64580/ Behat (Firefox - boost) Launching automatic jobs for branch MDL-85023 _main https://ci.moodle.org/view/Testing/job/DEV.02%20-%20Developer-requested%20PHPUnit/18865/ PHPUnit (sqlsrv) --> unrelated, please ignore. https://ci.moodle.org/view/Testing/job/DEV.01%20-%20Developer-requested%20Behat/64581/ Behat (NonJS - boost and classic) https://ci.moodle.org/view/Testing/job/DEV.01%20-%20Developer-requested%20Behat/64582/ Behat (Firefox - boost) https://ci.moodle.org/view/Testing/job/DEV.01%20-%20Developer-requested%20Behat/64583/ Behat (Firefox - classic) https://ci.moodle.org/view/Testing/job/DEV.01%20-%20Developer-requested%20Behat/64584/ App tests (stable app version) Built on: Sat Mar 29 14:30:18 UTC 2025

      Before being able to record from microphone or camera, the Safe Exam Browser needs to request permission to do so via the operating system. In macOS 12 and iOS 15 or later, this request can only be done correctly, if the the corresponding options browserMediaCaptureCamera and browserMediaCaptureMicrophone are set in the configuration file. These are regular options introduced in SEB version 3.1.1 (June 2022). By default, both are deactivated.

      Therefore, a teacher setting up a quiz with SEB via the Moodle interface will not be able to have their student perform recordings, be it via the corresponding functions offered by TinyMCE or when using the qtype_recordrtc question plugin.

      What makes this worse is that the student will probably be shown a dialog asking to grant permissions and even if they do grant these permissions, recording will still not work.

            philippimhof Philipp Imhof
            philippimhof Philipp Imhof
            Luca Bösch Luca Bösch
            Tim Hunt Tim Hunt
            Glyn (Mathew) May Glyn (Mathew) May
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved:

                Estimated:
                Original Estimate - 0 minutes
                0m
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 1 hour, 4 minutes
                1h 4m

                  Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.