Glossario eLearning

SCORM player: come visualizzare un pacchetto SCORM e risolvere gli errori

Hai un file SCORM e non parte. O parte, ma il modulo risulta bloccato. O funziona su Chrome e non su Safari. Questa guida copre come si riproduce un pacchetto SCORM — con e senza LMS — e come diagnosticare gli errori più comuni.

Cos'è un player SCORM

Un player SCORM è il componente software che apre un pacchetto SCORM, ne mostra i contenuti nel browser e comunica con il sistema di tracciamento attraverso le API definite dallo standard. Ogni LMS ne integra uno; esistono anche player autonomi — online o installabili — per riprodurre e testare pacchetti senza una piattaforma completa.

Quando in un LMS clicchi su un corso e questo si apre, quello che stai usando è il player: carica l'index del pacchetto, inizializza la connessione con le API di tracciamento e da quel momento registra ciò che il corso comunica — avanzamento, punteggio, completamento. Cosa contenga esattamente un pacchetto è spiegato nella guida a SCORM.

Come aprire un file SCORM (con e senza LMS)

Un file SCORM è uno ZIP: il doppio clic non lo "apre" nel senso utile del termine. Le strade sono tre, in ordine di completezza:

  • Dentro un LMS — la via normale: si carica il pacchetto come attività e il player integrato fa tutto. Come farlo su Moodle e le altre piattaforme è coperto nella guida a SCORM e LMS;
  • Con un player online — per test e verifiche senza piattaforma: SCORM Cloud di Rustici offre un piano gratuito pensato esattamente per questo, e riporta anche i dati di tracciamento in tempo reale — utilissimo per capire se un problema sta nel pacchetto o nell'LMS;
  • Aprendo l'index nel browser — decomprimendo lo ZIP e aprendo il file di avvio si vede il contenuto, ma senza alcun tracciamento: il corso cercherà le API SCORM, non le troverà, e a seconda di com'è fatto mostrerà un errore o proseguirà in modalità degradata. Va bene solo per un'occhiata ai contenuti.

Modulo SCORM bloccato: cause e soluzioni

"Il modulo risulta bloccato" è il sintomo più cercato e ha quasi sempre una di queste tre origini:

1. Un tentativo precedente rimasto aperto

Se una sessione si è chiusa male — scheda chiusa a metà corso, connessione caduta — l'LMS può considerare il tentativo ancora in corso e impedirne uno nuovo. La soluzione è lato piattaforma: chiudere o azzerare il tentativo dal registro dell'attività (su Moodle: report dell'attività SCORM → eliminazione dei tentativi dell'utente).

2. Prerequisiti e criteri di completamento

Il modulo può essere bloccato per progetto: prerequisiti non soddisfatti (un modulo precedente non completato) o criteri configurati nell'LMS che non combaciano con ciò che il pacchetto invia — il classico corso che manda passed mentre la piattaforma aspetta completed. In questi casi il blocco si risolve nella configurazione dell'attività, non nel pacchetto.

3. Il browser — e il caso Safari

Popup bloccati e cookie di terze parti disabilitati impediscono al player di aprire o tracciare il contenuto. Safari merita una nota a parte: le sue protezioni (ITP) trattano con particolare severità i contenuti in iframe provenienti da domini diversi da quello della piattaforma — lo scenario tipico quando l'LMS serve i contenuti da un CDN o sottodominio separato. I sintomi: il corso si apre ma non salva l'avanzamento, oppure resta bloccato al caricamento. Le vie d'uscita: consentire i cookie cross-site per il dominio della piattaforma, usare un browser diverso, o — lato piattaforma — servire i contenuti dallo stesso dominio dell'LMS.

Il pacchetto non parte: checklist tecnica

Da controllare, in ordine

  1. Struttura dello ZIP — il imsmanifest.xml deve stare nella radice dell'archivio, non dentro una sottocartella. È l'errore n.1 in assoluto;
  2. Popup del browser — se l'attività è configurata per aprirsi in una nuova finestra, il blocco popup la ferma in silenzio;
  3. Contenuti misti HTTP/HTTPS — risorse richiamate in HTTP dentro una pagina HTTPS vengono bloccate dal browser: la console sviluppatore (F12) le elenca subito;
  4. Versione SCORM — pacchetto 2004 su piattaforma che supporta solo 1.2 (o viceversa, con dipendenze specifiche): verificare cosa dichiara il manifest;
  5. Peso e timeout — pacchetti molto pesanti (video, build 3D) possono superare i limiti di upload o mandare in timeout il caricamento: controllare i limiti della piattaforma;
  6. Console JavaScript — se tutto il resto è a posto, gli errori in console (F12 → Console) dicono quasi sempre dove il player si è fermato.

Contenuti 3D e WebGL che non caricano

Un caso a parte — e in crescita — riguarda i pacchetti SCORM che contengono applicazioni 3D: simulazioni Unity WebGL, ambienti interattivi, serious game. Qui ai problemi classici se ne aggiungono di specifici: build pesanti che superano i limiti di upload dell'LMS, compressione (Brotli/Gzip) che richiede header corretti dal server della piattaforma, memoria del browser insufficiente su macchine datate, e la gestione degli input dentro l'iframe — mouse e tastiera catturati dalla simulazione mentre la pagina ospite deve continuare a scorrere normalmente.

Sono problemi risolvibili, ma vanno affrontati in fase di build, non dopo: ottimizzazione degli asset, configurazione della compressione, e un layer di integrazione SCORM scritto per il contenuto specifico. È il lavoro che facciamo sui progetti Unity WebGL + SCORM — e quando il tracciamento richiesto va oltre ciò che SCORM sa registrare, entra in gioco xAPI.

Domande frequenti

Cos'è un player SCORM?

È il componente software che apre un pacchetto SCORM, ne mostra i contenuti nel browser e comunica con il sistema di tracciamento tramite le API dello standard. È integrato in ogni LMS, ma esiste anche in forma autonoma per testare pacchetti senza una piattaforma.

Come si apre un file SCORM senza LMS?

Con un player online come SCORM Cloud (piano gratuito di test) o un player open source in locale. Aprire direttamente l'index del pacchetto nel browser mostra il contenuto ma senza alcun tracciamento.

Perché il modulo SCORM risulta bloccato?

Le tre cause più comuni: un tentativo precedente rimasto aperto e mai chiuso correttamente, prerequisiti o criteri di completamento configurati nell'LMS, e blocchi del browser — popup, cookie di terze parti, o le restrizioni di Safari sui contenuti in iframe.

Perché il pacchetto SCORM non parte?

I motivi più frequenti: manifest non nella radice dello ZIP, contenuti misti HTTP/HTTPS bloccati dal browser, popup bloccati, versione SCORM non supportata dalla piattaforma, o peso eccessivo che manda in timeout il caricamento.

Un contenuto SCORM che non parte è un problema che sappiamo risolvere

Sviluppiamo e sistemiamo contenuti SCORM complessi — incluse simulazioni Unity WebGL — perché funzionino sulla piattaforma reale del cliente, non solo in teoria. Diagnosi, fix o rifacimento.

Scopri lo sviluppo eLearning custom