blindsidenetworks / scalelite

Scalable load balancer for BigBlueButton.
GNU Affero General Public License v3.0
470 stars 247 forks source link

[Mod] Serve formats without player as downloadable attachments #1084

Closed Ithanil closed 3 months ago

Ithanil commented 3 months ago

This PR sets the Content-Disposition header for all formats without player, e.g. all formats except presentation, video and screenshare, to make them get downloaded to the device instead of playing in the browser. The header is purposefully not set via nginx locations, to preserve recording protection (if configured).

Description

This PR was originally part of https://github.com/blindsidenetworks/scalelite/pull/1083 , arising from a confusion on my end. I was thinking that formats like podcast have the Content-disposition header set to attachment by default from the bbb-playback package, but in fact that was just a specialty that I have introduced to our deployment due to user requests to make certain formats more easily downloadable (we also have a "download" version of the video format).

There are certainly arguments to be made for both variants, i.e. playback in the browser vs. download file, and the default from bbb-playback is the former for all formats, so I'm leaving this PR just as a mod example on how to achieve a different behavior.