Home
XtreamUIPro

Guida alla configurazione

Guida alla configurazione per Istruzione e formazione

Configura la piattaforma come servizio di video dei corsi per una scuola, un ente di formazione o un'università: libreria dei corsi, accesso degli studenti, lezioni in diretta e integrazione con l'LMS.

Queste guide mettono in corrispondenza i concetti di un settore con gli oggetti che la piattaforma ha oggi (bouquet, linee, pacchetti, account partner, nodi, l'API). Sono corrispondenze concettuali, non funzioni specifiche per settore, e un account partner è un account delegato, non un tenant isolato.

Corrispondenza concettuale

Nel pannello nulla si chiama corso o studente. La tabella dice quale oggetto svolge quale ruolo; i capitoli qui sotto li configurano in quest'ordine.

Nel tuo settoreSulla piattaformaDove nel pannello
Centro di formazione o partner di distribuzioneAccount partner (reseller): una dashboard delegata con crediti, permessi e linee proprieUsers → aggiungi un reseller; Groups per i suoi permessi
Raccolta di corsiBouquet: un insieme con nome di canali, film o serie che un pacchetto concedeBouquets, a partire da Streams e Movies / Series
Lezioni registrateCatalogo VOD: film e serie con stagioni ed episodi, categorie e metadatiMovies e Series, oppure il job di ingest VOD
Lezione in direttaCanale in diretta: uno stream con le sue fonti, l'EPG e i formati di uscitaStreams → aggiungi uno stream in diretta (URL della fonte o push RTMP)
Accesso dello studenteLinea: un accesso con il suo pacchetto, i bouquet, la scadenza, il limite di connessioni e le usciteLines → aggiungi, oppure codici di attivazione, oppure la Reseller API
Periodo di accesso al corsoData di scadenza della linea, rinnovata da un pacchetto, da un credito o dall'APILa data di scadenza della linea e la durata del pacchetto
Limite di sessioni simultaneeConnessioni massime della linea: quanti dispositivi possono guardare insiemeLe connessioni massime della linea
Integrazione con LMS o e-commerceReseller API e webhook: le operazioni del pannello dal tuo sistemaChiavi Reseller API e webhook nella dashboard del reseller

Prerequisiti

Cosa avere prima di installare.

  1. Un server Linux (Ubuntu 22.04 o 24.04) sulla rete del campus con Postgres, Redis e ffmpeg installati dall'installer, e un dominio o un indirizzo interno per il pannello e il player.
  2. Le registrazioni che pubblicherai (file o un sistema di cattura che possa inviare RTMP) e, per le lezioni in diretta, un encoder in ogni aula che trasmetterà.
  3. Una chiave di licenza: il piano Free non ne richiede; gli istituti idonei richiedono la chiave Professional gratuita via e-mail dal loro dominio accademico.

Installazione dell'infrastruttura

Installa il server di gestione, poi un nodo per edificio.

  1. Esegui l'installer sul server di gestione; installa il pannello, l'API, il worker e l'origin come unit systemd e crea il primo amministratore.
  2. Imposta l'URL pubblico dell'API (API_PUBLIC_URL) e la base di riproduzione perché i link del player puntino all'indirizzo del campus.
  3. Registra un nodo da Servers → aggiungi un nodo per ogni edificio le cui aule guarderanno; il pannello lo installa via SSH dal pacchetto del nodo.
  4. Controlla la pagina Servers: il nodo segnala il suo heartbeat e il traffico, e gli spettatori di quell'edificio sono instradati a lui.

Organizzazione dei contenuti

Corsi come serie, programmi come bouquet e pacchetti.

  1. Crea una categoria per facoltà o materia in Movies / Series.
  2. Aggiungi ogni corso come serie: una stagione per modulo, un episodio per lezione, con la registrazione come fonte (caricamento o job di ingest VOD).
  3. Crea un bouquet per raccolta di corsi (per esempio i corsi di un programma per un periodo) a partire dalle serie che hai aggiunto.
  4. Crea un pacchetto per programma: i bouquet che concede, il periodo di accesso come durata e il limite di sessioni simultanee.

Configurazione dei partner (reseller)

Un centro di formazione o una facoltà come account delegato.

  1. Crea un gruppo con i permessi di cui il centro ha bisogno (linee proprie, nessuna modifica al catalogo) in Groups.
  2. Aggiungi il centro come reseller in Users con quel gruppo, un saldo di crediti e i pacchetti che può distribuire.
  3. Dagli l'indirizzo della dashboard; da lì gestisce i propri studenti e il pannello conserva il log di audit.

Configurazione dell'accesso degli studenti

Una linea per studente, creata all'iscrizione.

  1. Per piccole coorti, aggiungi le linee da Lines → aggiungi con il pacchetto del programma; la scadenza segue la durata del pacchetto.
  2. Per il giorno dell'iscrizione, genera i codici di attivazione per il pacchetto; lo studente riscatta un codice nel player e ottiene una linea.
  3. Per un sistema studenti o un LMS, crea una chiave Reseller API e lascia che il sistema crei le linee con action=create_line e un id di richiesta per studente.
  4. Imposta le connessioni massime sul numero di dispositivi che uno studente può usare insieme; il player rifiuta la connessione successiva oltre quel limite.

Configurazione VOD

Lezioni registrate on demand.

  1. Carica ogni registrazione come fonte di un episodio, oppure punta il job di ingest VOD al file e lascia che il worker lo scarichi e lo codifichi nella root dei media.
  2. Compila i metadati (titolo, descrizione, locandina) a mano o da TMDB per il materiale pubblico; le lezioni di solito richiedono solo un titolo e una descrizione.
  3. Verifica la riproduzione nel web player con una linea di prova; il link è firmato e scade dopo il tempo configurato.

Streaming in diretta delle lezioni

Una lezione come canale in diretta.

  1. Aggiungi uno stream in diretta in Streams con l'encoder dell'aula come fonte (un indirizzo di push RTMP o un URL di pull).
  2. Metti lo stream nel bouquet del corso così lo vedono solo gli studenti iscritti; aggiungilo all'EPG se tieni un orario.
  3. Abilita catch-up o timeshift sullo stream quando gli studenti possono guardare una lezione più tardi; la registrazione può anche essere caricata come episodio.

Abbonamento e scadenza dell'accesso

Un accesso che termina con il corso.

  1. Dai al pacchetto il periodo di accesso come durata; una linea creata da esso scade alla fine di quel periodo.
  2. Rinnova una linea per un nuovo periodo dal pannello, con un credito del centro, oppure tramite l'API con action=renew_line.
  3. Iscrivi il tuo sistema ai webhook: viene avvisato quando una linea sta per scadere, è scaduta o è stata disattivata.

Integrazione con un LMS esterno

L'LMS governa l'accesso; il player riproduce.

  1. Crea una chiave Reseller API per l'LMS; tienila nei segreti dell'LMS, mai in una pagina.
  2. All'iscrizione l'LMS chiama action=create_line con il pacchetto del programma e un id di richiesta; al ritiro action=disable_line.
  3. Collega la pagina del corso dell'LMS al web player oppure dai allo studente le credenziali del player; non c'è single sign-on tra i due.

Considerazioni sulla sicurezza

Tieni il servizio dentro l'istituto.

  1. Abilita l'accesso a due fattori per ogni account del pannello e dai al personale il gruppo di permessi più piccolo che funzioni.
  2. Tieni i dati personali degli studenti nel sistema studenti; alla linea servono solo un nome e una scadenza.
  3. Mantieni basse le connessioni massime e valuta di legare la riproduzione all'indirizzo dello spettatore per evitare la condivisione.
  4. Attiva il backup cifrato del database e, se hai uno storage compatibile con S3, la copia off-site.

Risoluzione dei problemi

I primi controlli abituali.

  1. Uno studente non riesce ad accedere: controlla la scadenza della linea e che sia attiva, poi il pacchetto e il bouquet del corso.
  2. Una registrazione non si riproduce: controlla l'esito del job di ingest nella pagina Jobs, poi il file nella root dei media e la scadenza del link firmato.
  3. Gli spettatori di un edificio arrivano all'origin: controlla l'heartbeat del nodo e che l'indirizzo dello spettatore rientri nell'instradamento del nodo.
  4. L'API rifiuta una chiamata: controlla la chiave, il metodo dell'azione (le scritture sono POST) e l'id di richiesta di una chiamata ripetuta.