SafeExamBrowser / seb-win-refactoring

Safe Exam Browser for Windows.
https://www.safeexambrowser.org/news_en.html
Mozilla Public License 2.0
191 stars 129 forks source link

ReadSpeaker DocReader in SEB 3.7 #889

Open Mobron opened 6 months ago

Mobron commented 6 months ago

Describe the Bug Recently, we encountered an issue with DocReader bt ReadSpeaker in Safe Exam Browser (SEB) version 3.7. When attempting to open a file, it gets stuck while trying to read it out loud (see image attached to this message). Interestingly, this problem does not exist in version 3.6 and earlier.

Our Moodle provider, OpenEdu, as well as ReadSpeaker support have confirmed the issue after conducting their analysis. They recommended that I file this bug for further assistance.

Steps to Reproduce Steps to reproduce the behavior:

  1. Create Quiz with SEB in Moodle with ReadSpeaker plugin
  2. Create Question with link to uploaden PDF file
  3. Open Quiz in SEB
  4. Open PDF with ReadSpeaker/DocReader
  5. Click 'Read' button on top
  6. See error

Expected Behavior Up untill version 3.6 ReadSpeaker DocReader would read the text aloud.

Screenshots IMG_20240517_160645

Version Information

Additional Context ReadSpeaker is an important accessibility tool in the online world. Support seems critical. They asked me to file this bug report, but they can be reached at support@readspeaker.com. Lisa knows the issue and can provide further assistance.

dbuechel commented 6 months ago

We'd need access to a quiz with that specific plugin, I personally do not know it nor how to install / configure it. In other words, it would be great if you could take care of steps 1 and 2 as specified abvoe so that we can investigate the remaining steps.

Mobron commented 5 months ago

Thank you for your reply, Damian. I've created an account for you on our Moodle instance, with access to a simple Quiz. The Quiz contains one question, linking to a PDF file.

Go to elo.keizerkarelcollege.nl Click 'Inloggen' and then 'Reguliere login' Log in with username: Damian Password: SEB4ever Here is the example test you can use.. Open the test in SEB 3.7 with password 'Doei' (exit password is the same) Click on the ReadSpeaker icon behind the link in the question to open the PDF in DocReader. DockReader opens the PDF, but will fail to read it.

NB: SEB 3.6 and earlier will work just fine.

Kind regards, Robin

dbuechel commented 5 months ago

Excellent, thank you. I shall investigate the issue as soon as I have time, presumably in the upcoming 1-2 weeks.

Mobron commented 5 months ago

Very good. Thank you. We and all our dyslectic students will keep our fingers crossed for a solution

ObscureScience commented 5 months ago

Hi @dbuechel I work with ReadSpeaker and am interested if any findings has been made. If changes in CSP configuration of SEB has been made that could be something to look at. As this is a open source project, are there instruction on how to enable a debug build, which will make inspector tools available?

thomasvergouwe commented 5 months ago

Following this thread, as we have the exact same issue in our schools.

dbuechel commented 5 months ago

As this is a open source project, are there instruction on how to enable a debug build, which will make inspector tools available?

You can enable the development tools via the configuration under User Interface > Enable browser toolbar > Show developer tools (see https://safeexambrowser.org/windows/win_usermanual_en.html#AppearancePane).

ObscureScience commented 5 months ago

@dbuechel Thank you! What we've been able to see is that some responses from ReadSpeaker servers are blocked by the browser because the browser sets CORS credentials mode "include" on fetches, and ReadSpeaker has "Access-Control-Allow-Origin" set to "*" on responses.

The error is basically this: "Credential is not supported if the CORS header 'Access-Control-Allow-Origin' is '*'"

IMG_9311

This must have changed between v3.6 and 3.7. My recommendation would be to at least allow the header parameter to be set (including "omit").

dbuechel commented 5 months ago

Thanks for the information, that might very well be the case due to a change in the browser engine. I shall thus try to set the credentials mode as mentioned above, though we obviously need to make sure that this won't impact other requests resp. use cases.

Dirk-K-076 commented 4 months ago

Good morning @dbuechel Are there any relevant updates for this issue with SEB 3.7.0? Or can you maybey confirm this issue is going to be fixed with a new browser engine in SEB 3.8 or later? Thanks in advance also on behalve of our students

dbuechel commented 4 months ago

We will definitely have a look at it and do already have an internal work item created. It currently is scheduled for version 3.8.0, but most unfortunately and due to various factors we'll probably need to reschedule it for a later version.

The code change itself may be and hopefully is minor, but the possible side effects and required testing unfortunately not. We already had quite a few issues related to CORS, thus experiences has taught that any related changes must be made with great caution.

thomasvergouwe commented 3 months ago

Is there an update on this problem? We start schools again in september and we'd like to use Readspeaker Docreader in combination with SEB.

dbuechel commented 3 months ago

Most unfortunately not, we were not able to have a look at the issue due to other priorities. The issue is however still in our backlog and we will inform here once we were able to make any changes.

Mobron commented 2 months ago

For anyone tuning in. I can confirm that version 3.6 still works for now. The problem is however, that in my experience older versions will eventually stop working as automated SEB config creators (such as Moodle's) get updated.

Dirk-K-076 commented 1 month ago

Hi @dbuechel We see a new release at the SEB website for SEB 3.8. Is the docreader issue solved in this release? Thanks in advance!

thomasvergouwe commented 1 month ago

I've tried it and sadly, it didn't work with me.

Verzonden vanaf Outlook voor Androidhttps://aka.ms/AAb9ysg


From: Dirk Keustermans @.> Sent: Monday, October 7, 2024 3:05:59 PM To: SafeExamBrowser/seb-win-refactoring @.> Cc: thomasvergouwe @.>; Comment @.> Subject: Re: [SafeExamBrowser/seb-win-refactoring] ReadSpeaker DocReader in SEB 3.7 (Issue #889)

Hi @dbuechelhttps://github.com/dbuechel We see a new release at the SEB website for SEB 3.8. Is the docreader issue solved in this release? Thanks in advance!

— Reply to this email directly, view it on GitHubhttps://github.com/SafeExamBrowser/seb-win-refactoring/issues/889#issuecomment-2396878073, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AU2K53W3AMZNLCSKIO4L5P3Z2KBLPAVCNFSM6AAAAABIHGFAFKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOJWHA3TQMBXGM. You are receiving this because you commented.Message ID: @.***>

dbuechel commented 1 month ago

Unfortunately not, but the issue remains in our backlog and will be tackled once time and other priorities permit.

Mobron commented 2 weeks ago

Update: We've had an enormous amount of problems using SEB version 3.6 during our last exam-week. We've seen crashes and red-screens all over the place. Apparently these were caused by a known issue that was solved in version 3.8. We've then updated our non-dyslectic students to this version and most problems were gone.

This means, however, that staying with SEB 3.6 is no longer a viable option. Not even for the smaller group of students that rely on ReadSpeaker as their accessibility tool. It's just become too unstable. Could you, therefore, be so kind as to move the issue up the list of priorities?

dbuechel commented 2 weeks ago

Update: We've had an enormous amount of problems using SEB version 3.6 during our last exam-week. We've seen crashes and red-screens all over the place. Apparently these were caused by a known issue that was solved in version 3.8. We've then updated our non-dyslectic students to this version and most problems were gone.

That is unfortunately correct, hence we do always recommend to use the latest release version (and here particularly at least version 3.7.1 or newer).

Could you, therefore, be so kind as to move the issue up the list of priorities?

I unfortunately cannot do this, as the prioritization is done by our product owner board (of which I am not a part of). I will however forward the urgency of this issue, but I'm afraid the backlog of version 3.9.0 is already full so any resolution won't be available before the second half of 2025.

Becoming a member of the SEB Alliance could potentially speed up things on our end, please refer to https://safeexambrowser.org/alliance/members.html for more information.

dbuechel commented 2 weeks ago

To all involved: Have you contacted the manufacturer of ReadSpeaker and made sure that the issue cannot be resolved on their end, perhaps even faster than we could do so?

To reiterate, changes to the CORS headers can have a wide range of unintended effects, which is why this would be a major change for us requiring extensive testing to ensure that other use cases are not affected.