L'API Postmessage viene utilizzata per inviare informazioni aggiuntive alla pagina di incorporazione dei nostri Esami.
Documentazione dell'API Postmessage
L'API Postmessage invierà un messaggio alla pagina in cui è incorporato l'esame, che avrà un aspetto simile a questo:
{
status: 'ranking',
ranking: {
score: 50, // Numero, il voto dell'esame. 100 significa 100% di risposte corrette, 0 significa 0% di risposte corrette
risposte: 2, // Numero, la quantità di domande a cui si è risposto per questa sessione
corrette: 1, // Numero, la quantità di domande a cui si è risposto (parzialmente) correttamente
errate: 1, // Numero, la quantità di domande a cui si è risposto in modo errato
punti: 2, // Numero, la quantità di punti ottenuti per questa sessione
massimo: 4, // Numero, la quantità massima di punti possibili per questa sessione
category: {
title: 'Failed' // Stringa,
}
}
}
Per comodità, abbiamo aggiunto di seguito un esempio di JavaScript da utilizzare nella pagina di incorporamento. Utilizza la libreria jQuery, ma questo requisito può essere facilmente rimosso se necessario.
<script type="text/javascript>
// Esempio di implementazione degli eventi. Utilizza jQuery v1.7 o superiore
// Dovrebbe funzionare sui seguenti browser: [http://caniuse.com/#feat=x-doc-messaging](http://caniuse.com/#feat=x-doc-messaging)
jQuery(window).on("message onmessage", function(event) {
var origin = event.originalEvent.origin;
var allowedDomains = [
'[https://www.onlinequizcreator.com]([https://www.onlinequizcreator.com/](https://www.onlinequizcreator.com/))',
'[https://www.onlineassessmenttool.com]([https://www.onlineassessmenttool.com/](https://www.onlineassessmenttool.com/))',
'[https://www.onlineexambuilder.com]([https://www.onlineexambuilder.com/](https://www.onlineexambuilder.com/))',
'[https://www.easy-lms.com]([https://www.easy-lms.com/](https://www.easy-lms.com/))'
];
try {
var data = (typeof event.originalEvent.data === "string") ? JSON.parse(event.originalEvent.data) || event.originalEvent.data;
}
catch (e) {
return;
}
if (allowedDomains.indexOf(origin) !== -1 && data.status && data.ranking) {
// Il vostro script personalizzato....
// Sono disponibili le seguenti variabili
data.ranking.score; // Il voto in (%) per questo esame. es. 100 per ogni risposta corretta e 0 per ogni risposta sbagliata
data.ranking.answered; // Il totale delle domande a cui si è risposto
data.ranking.correct; // La quantità di domande a cui si è risposto correttamente
data.ranking.incorrect; // La quantità di domande con risposta errata
data.ranking.points; // La quantità di punti che il partecipante ha ottenuto per questa sessione
data.ranking.maximum; // Il massimo punteggio possibile per questo esame
data.ranking.category.title; // Il nome della categoria in cui rientra il partecipante. È probabile che sia "Superato" o "Non superato"
} }; </script.title; // Il nome della categoria in cui rientra il partecipante.
});
</script>
