L'integrazione di Etherpad in BigBlueButton si configura tramite il componente shared-notes del server. Su BigBlueButton 4.0 beta.4, Etherpad è opzionale: è necessario installare i pacchetti bbb-padse bbb-etherpad, quindi selezionare Etherpad per una singola riunione o impostarlo come predefinito per l'intero server. Nelle installazioni precedenti in cui i pacchetti di Etherpad sono già presenti, l'operazione principale consiste nello scegliere l'editor e riavviare i servizi interessati.
Innanzitutto, verifica la versione di BigBlueButton in uso. La documentazione della versione 4.0 descrive una modifica rispetto all'impostazione predefinita precedente: BlockNote è l'editor predefinito per le note condivise, mentre i pacchetti Etherpad sono opzionali. Pertanto, selezionando esplicitamente Etherpad si evita di dipendere da un'impostazione predefinita specifica della versione. Consulta le note ufficiali sulle nuove funzionalità di BigBlueButton 4.0 e la documentazione di riferimento dell'API di BigBlueButton .
Cosa fa l'integrazione
BigBlueButton visualizza le note condivise all'interno di una riunione e coordina l'accesso al blocco note. Etherpad fornisce l'editor collaborativo in tempo reale utilizzato in quest'area. In un'installazione standard, i componenti Etherpad di BigBlueButton vengono installati sullo stesso server; normalmente non è necessario aggiungere un URL pubblico Etherpad separato o incollare una chiave API Etherpad nell'interfaccia della riunione.
Questa guida illustra la configurazione del server preconfigurato e le opzioni supportate a livello di riunione e a livello di server. Una distribuzione cluster o reverse proxy richiede una configurazione aggiuntiva di URL e origine; le relative impostazioni non sostituiscono l'installazione e l'abilitazione dei componenti di Etherpad.
1. Verifica la versione di BigBlueButton e i pacchetti installati.
Eseguire questi comandi sull'host BigBlueButton:
sudo bbb-conf --check
dpkg -l | grep -E 'bbb-(etherpad|pads|shared-notes-server)'
L'elenco dei pacchetti aiuta a distinguere un'installazione di Etherpad mancante da un problema di selezione. Su un sistema BigBlueButton 4.0 beta.4, le note ufficiali identificano bbb-shared-notes-server(BlockNote) come pacchetto predefinito obbligatorio e bbb-etherpadplus bbb-padscome pacchetto opzionale. Le versioni precedenti potrebbero mostrare una combinazione di pacchetti diversa, quindi utilizzare la documentazione relativa alla versione effettivamente installata anziché copiare le istruzioni della versione 4.0 su un server più vecchio.
2. Installa i pacchetti Etherpad quando necessario
Su BigBlueButton 4.0 beta.4, installare i pacchetti opzionali tramite APT:
sudo apt update
sudo apt install bbb-pads bbb-etherpad
Prima di confermare, esamina le modifiche proposte dal gestore di pacchetti. Se APT non riesce a trovare nessuno dei due pacchetti, verifica che il repository di BigBlueButton sia configurato per la stessa versione del server. Non scaricare un pacchetto creato per una versione diversa di BigBlueButton solo per poter procedere con l'installazione.
Dopo l'installazione, verificare che entrambi i pacchetti siano presenti nell'elenco dei pacchetti. Se si sta aggiornando un server di produzione esistente, seguire la procedura di aggiornamento ufficiale della release e pianificare una finestra di manutenzione; l'installazione di pacchetti opzionali è una modifica al server, non una configurazione per il client.
3. Abilita Etherpad per una riunione
Per utilizzare Etherpad in una sessione specifica lasciando invariata l'impostazione predefinita del server, impostare il sharedNotesEditorparametro su nella chiamata API etherpaddi BigBlueButton per quella riunione create:
sharedNotesEditor=etherpad
Il parametro appartiene all'integrazione lato server che crea la riunione. L'applicazione deve includerlo nella richiesta di creazione firmata prima di calcolare il checksum dell'API. L'API di BigBlueButton accetta etherpado blockNoteper questa opzione. Consulta la documentazione dell'API per il comportamento della versione installata, poiché la convalida e i valori predefiniti possono variare a seconda della versione.
Conserva la chiave segreta condivisa di BigBlueButton sul server. Non esporla nel codice JavaScript del browser, nel codice sorgente della pagina o nel client mobile. Chiunque ottenga la chiave segreta può creare chiamate API firmate a nome del tuo server. Se utilizzi Greenlight o un'altra interfaccia per le riunioni, configura il parametro tramite le impostazioni supportate da tale integrazione, anziché modificare l'URL della riunione nel browser.
4. Imposta Etherpad come predefinito per l'intero server.
Se si desidera utilizzare Etherpad per ogni riunione, modificare il file di override web di BigBlueButton:
sudo nano /etc/bigbluebutton/bbb-web.properties
Aggiungi questa riga, mantenendo le altre impostazioni presenti nel file:
sharedNotesEditor=etherpad
Salva il file e riavvia BigBlueButton:
sudo bbb-conf --restart
Questa impostazione si applica alle riunioni che non forniscono sharedNotesEditorvalore intrinseco. Un parametro di creazione a livello di riunione può rendere esplicita la scelta per una sessione specifica. Le note ufficiali della versione 4.0 documentano questa stessa proprietà per la selezione di Etherpad a livello globale e specificano il riavvio con bbb-conf --restart.
5. Verifica il risultato in una nuova riunione
Dopo il riavvio, avvia una nuova riunione di prova; una stanza già in esecuzione potrebbe non riflettere le modifiche predefinite. Accedi come moderatore e come secondo partecipante, apri Note condivise e verifica che entrambi gli utenti possano visualizzare e modificare lo stesso blocco note. Effettua una breve modifica di prova da ciascun account, attendi che la visualizzazione dell'altro partecipante si aggiorni e verifica il risultato dopo aver chiuso e riaperto il pannello delle note.
Se stai testando una riunione creata tramite un'integrazione API, esamina la richiesta di creazione di tale integrazione e verifica che includa sharedNotesEditor=etherpadil parametro. Per un test con le impostazioni predefinite globali, crea una riunione senza impostare il parametro. Questo permette di distinguere un'opzione mancante a livello di riunione da un problema di configurazione a livello di server.
Distribuzioni di proxy di cluster e URL esterni
Quando i browser raggiungono BigBlueButton tramite un proxy di cluster o un hostname pubblico diverso, gli URL delle note condivise e le origini del browser devono corrispondere alla configurazione del proxy. La guida ufficiale di BigBlueButton per i proxy di cluster documenta l' pads.urlimpostazione in /etc/bigbluebutton/bbb-html5.ymle una lista di indirizzi consentiti per i proxy di cluster in /etc/bigbluebutton/etherpad.json. L'URL di esempio utilizza un /padpercorso sull'host proxy pubblico. Seguire la guida nella sua interezza per la configurazione del cluster, inclusi i requisiti di origine e proxy; non copiare solo la riga dell'URL in un'installazione a server singolo non correlata.
Dopo aver modificato la configurazione di un cluster, seguire i passaggi di riavvio e verifica per la versione di BigBlueButton installata. Se Etherpad si carica direttamente sul nome host del server ma non funziona tramite il proxy, prima di modificare la selezione dell'editor, esaminare il percorso del proxy, il nome host, il certificato TLS e i criteri di origine del browser. Un proxy inverso deve inoltre supportare le connessioni necessarie all'interfaccia di modifica in tempo reale di Etherpad.
Risoluzione dei problemi più comuni
- Le note condivise si aprono in BlockNote. Conferma che la riunione utilizzata
sharedNotesEditor=etherpadsia quella sharedNotesEditor=etherpadpredefinita /etc/bigbluebutton/bbb-web.propertiesglobale. Nella versione 4.0 beta.4, verifica che i due pacchetti opzionali siano installati.
- Il pannello delle note non è presente o non si carica. Eseguire il comando
sudo bbb-conf --check, verificare lo stato del pacchetto e controllare i log dei servizi BigBlueButton ed Etherpad per individuare errori di avvio o di connessione. Verificare che il browser utilizzi il nome host previsto e un'origine HTTPS sicura.
- Un partecipante può modificare il messaggio, mentre un altro no. Eseguite una prova con una nuova riunione e account da browser diversi. Verificate che entrambi gli utenti si siano uniti alla stessa riunione e che un proxy o un livello di autenticazione non stia bloccando la sessione di Etherpad o il traffico WebSocket.
- Le modifiche non vengono visualizzate dopo le modifiche alla configurazione. Crea una nuova riunione dopo il riavvio. Verifica inoltre se chi crea la riunione sta passando un valore esplicito per l'editor che sovrascrive l'impostazione predefinita del server.
- Funziona direttamente, ma non funziona correttamente dietro un proxy. Confronta l'URL delle note pubbliche, il percorso del proxy, la configurazione TLS, l'origine consentita e la configurazione del cluster con la guida ufficiale di cluster-proxy. Evita regole proxy generiche che espongono servizi interni non correlati.
Controlli operativi e di sicurezza
Assicurati che BigBlueButton, i pacchetti Etherpad e il sistema operativo siano aggiornati secondo percorsi supportati. Limita l'accesso ai segreti delle API amministrative al codice lato server affidabile, utilizza HTTPS per gli endpoint pubblici delle riunioni e delle note ed esponi solo i percorsi necessari per la tua implementazione. Se il tuo servizio registra le riunioni, verifica come vengono gestite le note condivise durante la registrazione e al termine delle riunioni; il comportamento della registrazione può dipendere dalla versione di BigBlueButton e dalla configurazione di registrazione.
La configurazione è completa quando una nuova riunione seleziona l'editor desiderato, più partecipanti possono collaborare, la console del browser e i log del server non mostrano errori di connessione e il risultato rimane coerente dopo aver riaperto il pannello delle note. Per una distribuzione 4.0 beta.4, la modifica principale consiste nell'installare Etherpad come componente opzionale e selezionarlo esplicitamente. Per altre versioni, verificare il comportamento del pacchetto e dell'API in base alla documentazione di tale versione prima di apportare modifiche a un server di produzione.