Einbinden in Lernplattformen (Jack2)

Aus JACK Wiki
Zur Navigation springen Zur Suche springen

Aufgaben und Kurse können auch über bestimmte Lernplattformen aufgerufen werden. Die entsprechenden Aufgaben/Kurse müssen hierfür aktiviert sein. Studierende werden durch den Aufruf über die Lernplattform automatisch bei JACK angemeldet. JACK kann der Lernplattform außerdem zurückmelden, wie viele Punkte der Studierende bei der jeweiligen Aufgabe bzw. in dem Kurs erreicht hat.

Moodle

Um eine Aufgabe oder Kurs in Moodle einzubinden, wählt man Externes Tool unter Material oder Aktivität hinzufügen. Auf der folgenden Seite vergibt man einen Namen, der auf Moodle für die Aufgabe bzw. den Kurs angezeigt werden soll und klickt unter Grundeinträge auf Mehr anzeigen.... Bei den nun erschienenen Einstellungen sind folgenden Einträge relevant:

  • Sichere Start-URL: Ist spezifisch für die jeweilige JACK-Instanz (bspw. https://jack-server02.s3.uni-due.de/jack2/moodleServlet)
  • Startcontainer: Eingebettet auswählen, da es zu Problemen in Jack führen kann, wenn Kurse/Aufgaben/Testate in neuen Tabs geöffnet werden.
  • Anwenderschlüssel: moodle2.uni-due.de
  • Öffentliches Passwort: Ist spezifisch für die jeweilige JACK-Instanz
  • Angepasste Parameter: jackexerciseid=1234567

Dabei ist die Zahl hinter jackexerciseid= durch die entsprechende ID der Aufgabe bzw. des Kurses zu ersetzen.

Nun lassen sich noch weitere Einstellungen in Moodle vornehmen: Unter dem Punkt Datenschutz lässt sich festlegen, welche Daten des Studierenden an JACK übermittelt werden und ob JACK über die Leistung des Studierenden Rückmeldung an Moodle geben soll. Falls man eine Bewertung akzeptiert, lässt sich diese unter dem Einstellungspunkt Bewertung genauer spezifizieren, so dass ein erfolgreiches Bestehen bspw. unter dem Punkt Aktivitätsabschluss auch als eine Vorraussetzung für andere Inhalte des Moodle-Kurses ausgewählt werden kann.

Ablauf der Kommunikation

Die Kommunikation zwischen Moodle und JACK basiert auf dem IMS-LTI-Standard. Dieser Standard ermöglicht ein hohes Maß an Interoperabilität, indem es 2 unterschiedliche Plattformen nahtlos miteinander verbindet. Der Lehrende kann hierbei aussuchen, um welche Art von Verbindung es sich handeln soll. Der Standard ermöglicht zum einen eine Weiterleitung zum externen Tool und zum anderen eine Einbettung der Funktionalität des externen Tools im Haupttool.

  1. Variante: Moodle leitet zu Jack weiter. Um eine Weiterleitung von Moodle zu JACK zu erreichen, sendet Moodle eine Anfrage als POST-Request. Dieser Request beinhaltet den Nutzername des Nutzers in Moodle (für den Nutzernamen wird vom Authentifizierungsdienst der UDE eine gülige Matrikeklnummer abgefragt) und die ID der gewünschten Aufgabe. Jack prüft die Daten mithilfe von OAuth, meldet den Nutzer bei gelungender Validierung der Daten in Jack an und speichert hierbei die ID. Die Weiterleitung ist damit allerdings noch nicht abgeschlossen. JACK lädt die Aufgabe nur unvollständig und leitet Moodle zu einer generischen Redict-Seite weiter, die Moodle durch den GET-Request aufruft. Sobald Moodle diesen Request erhält wirde die Jack-Seite vollständig geladen.
  2. Variante: Einbettung der Ergebnisse im Moodle. Für die Weiterleitung der Ergebisse von JACK nach Moodle wird jedes Mal nach dem beschriebenen Login-Verfahren ein spezifischer XMLHttp-Request gesendet. Diese XML-Datei wird an Moodle geschickt. Die Bestandteile der XML-Datei sind: die erreichte Punktzahl, die User-ID des Studierenden, weitere Informationen. Für die Verifikation dieser Daten benutzt Moodle das OAuth-Protokoll.

Nun lädt Moodle im Tag „Bewertungen“ des jeweiligen Kurses eine ggf. aktualisierte Form der erreichten Punktzahl.