Liebes LearningView-Team
Ich unterrichte Wirtschaft und Recht am Gymnasium Hofwil (Kanton Bern) und nutze LearningView intensiv für die Kursorganisation und Materialverteilung.
Für mein Fach habe ich ein modulares System von interaktiven Übungspools entwickelt, das auf GitHub Pages gehostet wird (reine HTML/CSS/JavaScript-Seiten, keine Frameworks). Die Übungspools bieten Multiple-Choice, Richtig/Falsch, Lückentext, Berechnungsaufgaben, Zuordnungen und offene Fragen – mit sofortigem Feedback, Themenfiltern und einer Auswertung am Ende. Das System funktioniert responsiv auf allen Geräten und wird von den SuS gut genutzt.
Aktuell verlinke ich die Übungspools als Weblinks in LearningView-Aufgaben. Was mir fehlt, ist die Fortschrittskontrolle: Ich kann nicht sehen, ob und wie ein Schüler die Übung absolviert hat – im Gegensatz zu den eingebauten Selbsttests oder den angebundenen Anbietern (LearningApps, zebis.digital, edulo).
Meine Frage: Gibt es eine Möglichkeit, eigene interaktive Inhalte so einzubinden, dass LearningView den Abschluss registriert?
Konkret denke ich an folgendes Szenario:
- Die Aufgabe wird als «Interaktiv (extern)» angelegt und mein Übungspool wird per URL als Iframe eingebettet.
- Mein Übungspool sendet nach erfolgreichem Abschluss eine Nachricht an das Elternfenster, z.B. per window.parent.postMessage().
- LearningView empfängt diese Nachricht und markiert die Aufgabe als «erledigt».
Das wäre technisch analog zur Anbindung von LearningApps. Auf meiner Seite könnte ich das Senden der postMessage-Nachricht problemlos implementieren – ich bräuchte lediglich die Spezifikation, welches Nachrichtenformat LearningView erwartet.
Ich verstehe, dass LearningView bewusst keine LTI-Schnittstelle anbietet und mit ausgewählten Anbietern zusammenarbeitet. Meine Frage zielt deshalb nicht auf eine vollständige API ab, sondern auf die Möglichkeit, ein einfaches Completion-Signal per postMessage zu senden.
Falls das aktuell nicht möglich ist: Wäre eine solche generische postMessage-Schnittstelle für externe Iframe-Inhalte denkbar, z.B. als optionale Funktion bei «Interaktiv (extern)»? Ich vermute, dass andere Lehrpersonen, die eigene H5P-Inhalte oder ähnliche Tools selbst hosten, von einer solchen Möglichkeit ebenfalls profitieren würden.
Ich bin gerne bereit, ein konkretes Beispiel meiner Übungspools zu zeigen oder beim Testen zu helfen.
Herzlichen Dank für eure Rückmeldung und für die grossartige Arbeit an LearningView!
Freundliche Grüsse
Yannick
Hallo Yannick,
ja, diese Möglichkeit besteht bereits (auch für H5P, wenn jemand es so konfiguriert und xAPI per postMessage weiterleitet). Wenn du Daten an LV zurücksenden willst, kannst du das so machen:
<html>
<script>
var xAPIscore = {result:{score:{scaled:0.5,max:10,raw:5}}};
window.parent.postMessage(xAPIscore,'*'); // an LV zurücksenden
</script>
</html>
Wenn vorhanden, wird LV das result.score.scaled verwenden (ein Wert zwischen 0 und 1) und wenn nicht, versucht es aus max und raw selbst einen Prozentwert auszurechnen.
Du kannst natürlich entscheiden, wann du dieses Ereignis los schickst. Du kannst es auch während der Arbeit wiederholt schicken, immer wenn die Antwort etwas besser geworden ist.
Damit das funktioniert, muss man die Aufgabe auf "interaktiv extern" eingestellt haben.
Viele Grüsse,
Michael
super, das klappt wunderbar, merci :)