Ich habe versucht, einige benutzerdefinierte SCORM-Inhalt mit der pipwerks SCORM API wrapper. In diesem Fall verwende ich ein SCORM 2004 4. Ed-Paket.Wie bekomme ich completion_status Wert von SCORM Cloud?
Wenn ich den Kurs starte und abschließe, wird der Kurs korrekt als abgeschlossen angezeigt und der Sandbox-Registrierungsstatus zeigt die Laufzeitdaten> cmi.completion_status: completed.
Im folgenden ist ein Auszug aus dem Debug-Protokoll zeigt der COMPLETION_STATUS gesetzt wird und die endgültige begehen.
- [14:01:43.632] SetValue('cmi.completion_status', 'completed') returned 'true' in 0 seconds
[14:01:43.632] CheckForSetValueError (cmi.completion_status, completed, cmi.completion_status, ,)
[14:01:43.632] Element is: completion_status
[14:01:43.632] Call is error free.
[14:01:43.632] StoreValue (cmi.completion_status, completed, cmi.completion_status, ,)
[14:01:43.632] Element is: completion_status
- [14:01:43.632] Commit('') returned 'true' in 0.004 seconds
[14:01:43.632] Checking for Commit Error
[14:01:43.632] Call is error free.
[14:01:43.636] CompletedByMeasure is not enabled, using the completion status recorded by the SCO-completed
[14:01:43.636] Scaled Passing Score is not specified, using the success status recorded by the SCO-unknown
[14:09:29.134] Close Out Session
[14:09:29.134] Mode = normal
[14:09:29.134] Credit = credit
[14:09:29.134] Recorded CompletionStatus = completed
[14:09:29.134] Recorded SuccessStatus = unknown
[14:09:29.134] ScaledPassingScore = null
[14:09:29.134] Score = null
[14:09:29.134] CompletedByMeasure = false
[14:09:29.134] Progress Measure = 1
[14:09:29.134] Session Time: (0 hundredths)
[14:09:29.134] Previous Time: PT0H0M0S (0 hundredths)
[14:09:29.134] New Total Time: PT0H0M0S (0 hundredths)
[14:09:29.135] New Tracked Total Time: PT8M13.59S
[14:09:29.135] CompletedByMeasure is not enabled, using the completion status recorded by the SCO-completed
[14:09:29.135] Scaled Passing Score is not specified, using the success status recorded by the SCO-unknown
Also an diesem Punkt sieht alles gut aus. Wenn ich den Kurs ein zweites Mal starte, ist das Ergebnis unbekannt.
- [14:19:20.067] GetValue('cmi.completion_status') returned 'unknown' in 0.003 seconds
[14:19:20.069] Checking for GetValue Error
[14:19:20.069] Element is: completion_status
[14:19:20.069] Call is error free.
[14:19:20.070] RetrieveGetValueData (cmi.completion_status, cmi.completion_status, ,)
[14:19:20.070] Element is: completion_status
[14:19:20.070] CompletedByMeasure is not enabled, using the completion status recorded by the SCO-unknown
Ich Speicherung auch cmi.progress_measure, die die Fortschrittsanzeige korrekt aktualisiert und korrekt in dem Registrierungszustand erscheinen. Wenn Sie den Kurs erneut starten, sind diese Daten ebenfalls leer.
Als Referenz setze ich den Abschlussstatus wie folgt;
Und der Fortschritt messen wie folgt (wo am Anfang ist eine Dezimalzahl 0-1);
pipwerks.SCORM.data.set("cmi.progress_measure", s.progress);
pipwerks.SCORM.save();
Diese scheinen richtig zu funktionieren im Debug-Protokoll und Registrierungszustand suchen, aber ich bin nicht in der Lage, diese Werte wieder zu bekommen, wenn ich den Kurs neu starten.
Kann jemand vorschlagen, was hier geschehen könnte?
Vielen Dank,
Baps.
Die Einstellung des Exit-Modus scheint tatsächlich die Daten über Sitzungen hinweg zu erhalten. In der Tat deckt die terminate Methode in der pipwerks Wrapper diese sowohl für 1.2 als auch für 2004 ab. Danke Thomas! – Baps