Disabilita il download dei media in onebox

Ciao, ho visto che c’è un’opzione per disabilitare il download dell’audio:

<a> controls #{@options[:disable_media_download_controls] ? 'controlslist="nodownload"' : ""}</a>

su onebox/lib/onebox/engine/audio_onebox.rb at main · discourse/onebox · GitHub

e

disable_media_download_controls: SiteSetting.disable_onebox_media_download_controls,

su discourse/lib/oneboxer.rb at 03998e0a299b7ae89678e2854e3abf84bd6ef132 · discourse/discourse · GitHub

Quindi ho provato a scriverlo usando

./launcher enter app
rails c
SiteSetting.disable_onebox_media_download_controls=true

e anche qui

vi containers/app.yml
sotto params:
disable_media_download_controls: true
disable_onebox_media_download_controls: true
sotto env:
DISCOURSE_DISABLE_ONEBOX_MEDIA_DOWNLOAD_CONTROLS: true

ma l’audio può ancora essere scaricato tramite l’opzione “download” del onebox. Qualcuno può aiutarmi? Molte grazie.

1 Mi Piace

Non lo so, ma come si dovrebbe ascoltare l’audio se il download è disabilitato?

c’è un’opzione di download se fai clic sui tre punti alla fine: vedi immagine da questo post:

Quello che voglio è che l’opzione di download esplicita sia nascosta/disabilitata, mentre le persone possano ancora usarla per ascoltare l’audio.

Non capisco ancora. Discourse non può fare lo streaming, quindi l’audio deve essere scaricato per l’ascolto. O mi sbaglio completamente?

O accettate il download quando un utente non sa che sta scaricando perché il suo dispositivo non chiede dove dovrebbe salvarlo?

Eppure, quell’audio è comunque possibile salvarlo tramite registrazione :wink:

Scusa, non aiuto per niente ma vorrei capire perché, cosa, dove e tutto :rofl:

Il mio punto debole è che questo tipo di tentativi di disabilitazione hanno raramente successo, o sono necessari. Ma va bene se è fattibile.

1 Mi Piace

se si consente l’opzione di download esplicito, il contenuto audio/video potrebbe essere archiviato/utilizzato/commercializzato altrove, dove tale proprietà intellettuale potrebbe non essere autorizzata correttamente. Pertanto, è probabilmente saggio disabilitare l’opzione di download esplicito come opzione predefinita.

Puoi consigliare come ottenerlo a livello di impostazioni/codice. Grazie.

Non è qualcosa che ho usato, ma c’è qualcosa in questo argomento che può essere d’aiuto?

1 Mi Piace

Per quanto riguarda il sito web (utilizzando discourse) in sé, è importante evitare qualsiasi problema futuro relativo alla proprietà intellettuale. Anche se l’autore utilizza un TC o una sorta di tema, qualsiasi violazione della proprietà intellettuale potrebbe rendere il sito web responsabile per potenziali danni, ecc. Anche se il sito web potrebbe sembrare non avere nulla a che fare con esso, solo perché funge da canale di scambio, qualche avvocato potrebbe avere opinioni diverse.

Quindi disabilitare l’opzione di download esplicito dovrebbe essere piuttosto utile, poiché non vedresti tale opzione sulla maggior parte dei grandi siti web come YouTube. Qualcuno può aiutare con il codice/impostazione per realizzarlo, per favore.

1 Mi Piace

Dopo di che, dovrai rifare il “rebake” o modificare il post con l’audio locale. Ci hai provato?

1 Mi Piace

come rigenerare o modificare il post?

Fare clic sul pulsante post , quindi sul pulsante :wrench: e infine su “Rebuild HTML”

“Ricostruisci HTML” completato, ma l’opzione “Scarica” è ancora presente.

Testiamo questo:

![614107_11861866-lq|audio](upload://jq0kR3R4YPrn1kM48EL33oVgjT8.mp3)

https://d11a6trkgmumsb.cloudfront.net/original/3X/8/8/8819dba2a51ca9f987e93d64dfe823161141d0f6.mp3

il secondo funziona (nessuna opzione di download), ma il primo ce l’ha ancora.

Capisco, l’impostazione del sito influisce solo su onebox, quindi solo sul secondo tipo di audio, non sul primo perché tecnicamente non è un onebox.

Cosa altro bisogna fare per far funzionare il primo caso?

1 Mi Piace

Se vuoi approfondire il codice, proviene da

Dovrai ricevere l’impostazione del sito in quel contesto in qualche modo e gestirla.

2 Mi Piace

Come soluzione rapida e definitiva, ho provato:

./launcher enter app
vi app/assets/javascripts/pretty-text/addon/discourse-markdown-it.js

e ho aggiunto

controlsList="nodownload"

a

<audio preload="metadata" controls>

e

./launcher restart app

ma ho ancora l’opzione Download. Devo ricostruire l’app?

Ciò non funzionerebbe poiché il JS viene compilato dalla nostra pipeline di asset piuttosto complicata.

Se desideri una soluzione rapida e “hacky”, un componente tematico che ascolti il nostro callback decoratedCooked e modifichi l’elemento audio è la tua migliore opzione. Puoi saperne di più sulla Guida per sviluppatori per i temi di Discourse.

1 Mi Piace