La API Postmessage se utiliza para enviar información adicional a su página de incrustación de nuestros Exámenes.
Documentación de la API de mensajes POST
La API Postmessage enviará un mensaje a la página en la que está incrustado su examen que tendrá un aspecto similar al siguiente:
{
status: 'ranking',
ranking: {
score: 50, // Número, la nota del examen. 100 significa 100% correcto, 0 significa 0% correcto correcto
contestadas: 2, // Número, La cantidad de preguntas contestadas para esta sesión
correctas: 1, // Número, la cantidad de preguntas que fueron contestadas (parcialmente) correctas
incorrectas: 1, // Número, la cantidad de preguntas que fueron contestadas incorrectamente
puntos: 2, // Número, la cantidad de puntos obtenidos para esta sesión
máximo: 4, // Número, la cantidad máxima de puntos posibles para esta sesión
category: {
title: 'Failed' // Cadena,
}
}
}
Para su comodidad, hemos añadido a continuación un ejemplo de JavaScript que puede utilizar en su página de incrustación. Utiliza la biblioteca jQuery, pero ese requisito puede eliminarse fácilmente si es necesario.
<script type="text/javascript>
// Ejemplo de implementación de eventos. Usando jQuery v1.7 o superior
// Debería funcionar en los siguientes navegadores: [http://caniuse.com/#feat=x-doc-messaging](http://caniuse.com/#feat=x-doc-messaging)
jQuery(window).on("mensaje 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) {
// Su script personalizado....
// Las siguientes variables están disponibles
data.ranking.score; // La nota en (%) para este examen. ej. 100 para todo correcto y 0 cuando todas las respuestas fueron incorrectas
data.ranking.answered; // La cantidad total de preguntas contestadas
data.ranking.correct; // Cantidad de preguntas contestadas correctamente
data.ranking.incorrect; // Cantidad de preguntas mal contestadas
data.ranking.points; // Cantidad de puntos que el participante ha obtenido en esta sesión
data.ranking.maximum; // Máxima puntuación posible para este examen
data.ranking.category.title; // Nombre de la categoría en la que se encuentra el participante. Puede ser 'Aprobado' o 'Suspenso'
}
});
</script>
