Zum Hauptinhalt springen

Dokumentation zur API zum Veröffentlichen von Beiträgen

🦉 POST-Nachrichten-API ✓ Dokumentation ✓ Seite zur Einbettung von Prüfungen

Die Postmessage-API dient dazu, zusätzliche Informationen an die Seite zu senden, auf der unsere Prüfungen eingebettet sind.

Dokumentation zur POST-Message-API

Die Postmessage-API sendet eine Nachricht an die Seite, auf der Ihre Prüfung eingebettet ist. Diese sieht in etwa so aus:

{  
status: 'ranking',
ranking: {
score: 50, // Zahl, die Punktzahl für die Prüfung. 100 bedeutet 100 % richtig, 0 bedeutet 0 % richtig
answered: 2, // Zahl, die Anzahl der beantworteten Fragen in dieser Sitzung
correct: 1, // Zahl, die Anzahl der (teilweise) richtig beantworteten Fragen
incorrect: 1, // Zahl, die Anzahl der falsch beantworteten Fragen
points: 2, // Zahl, die Anzahl der für diese Sitzung erzielten Punkte
maximum: 4, // Zahl, die maximal mögliche Punktzahl für diese Sitzung
category: {
title: 'Nicht bestanden' // Zeichenkette,
}
}
}

Zur Vereinfachung haben wir unten ein JavaScript-Beispiel hinzugefügt, das Sie auf Ihrer Einbettungsseite verwenden können. Es nutzt die jQuery-Bibliothek, diese Anforderung lässt sich jedoch bei Bedarf leicht entfernen.

 <script type="text/javascript>  
// Beispiel für die Implementierung von Ereignissen. Verwendung von jQuery v1.7 oder höher
// Sollte in folgenden Browsern funktionieren: [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/de/404/))'
];
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) {
// Ihr benutzerdefiniertes Skript....
// Die folgenden Variablen stehen zur Verfügung
data.ranking.score; // Die Punktzahl in (%) für diese Prüfung. Z. B. 100 bei allen richtigen Antworten und 0, wenn alle Antworten falsch waren
data.ranking.answered; // Die Gesamtzahl der beantworteten Fragen
data.ranking.correct; // Anzahl der richtig beantworteten Fragen
data.ranking.incorrect; // Anzahl der falsch beantworteten Fragen
data.ranking.points; // Die Punktzahl, die der Teilnehmer in dieser Sitzung erzielt hat
data.ranking.maximum; // Die maximal mögliche Punktzahl für diese Prüfung
data.ranking.category.title; // Der Name der Kategorie, in die der Teilnehmer fällt. Wahrscheinlich „Bestanden“ oder „Nicht bestanden“
}
});
</script>
Hat dies deine Frage beantwortet?