Cant update cmi.core.total_time or cmi.core.session_time

Cant update cmi.core.total_time or cmi.core.session_time

by hema balakrishnan -
Number of replies: 3

Hi,

Can anyone please tell why I cannot update these two variables? I am using Authorware 7 to send data to LMS. Everything else works, I am able to send the score, status, lesson data except the time.

First I used Authorware's LMS Send DataKnowledge Object and it was not able to update the time.

Next, I used the ReadURL function in Authorware to use the function LMSSetValue. But the time still does not get updated. I tried sending other data like score, lesson data, exit and lesson status. All these work except the cmi.core.session_time and cmi.core.total_time

The LMSGetLastError() does not give any errors,so what is wrong? If someone can please suggest why, I would appreciate your help very much.

I am using Moodle 1.3

Thanks

Hema

 

Average of ratings: -
In reply to hema balakrishnan

Re: Cant update cmi.core.total_time or cmi.core.session_time

by Juan David Martínez Pavony -

Hello Hema.

I do not know if this post is out of date for your doubts, but I hope this can help.

I think your problem is not Authorware related. I have been dealing with SCORM module on Moodle and I figured out that cmi.core.session_time is not saved into database by now (1.4.3+ 2004083132), it is only used to calculate current lesson time and then summarized into cmi.core.total_time.

cmi.core.session_time must be set by the SCORM package when lesson is completed. This takes place when you call doContinue('completed') method from your SCO (the content). This method is in SCOFunctions.js.

When you use "next" and "back" buttons from the upper frame, the browser unloads the whole page where you see the SCO and the navigation stuff (the upper frame). Unload is an event triggered automatically. At that moment SCOFinish() method from the SCORM API is called and cmi.core.session_time have to be set already to be saved into database (LMS). Moreover, unload event for the whole page takes place prior than unload event for the lower frame (content).

So, I concluded SCORM package have to set cmi.core.session_time always, before any navigation event.

Good luck.

In reply to Juan David Martínez Pavony

Re: Cant update cmi.core.total_time or cmi.core.session_time

by Senthilnathan S -

Hi,

I also have an issue in updating cmi.core.session_time and cmi.core.total_time. I have a resource with few slides. My users have to read the slides any time. Based on the slides duration the time get updated in the session_time and finally stored in total_time. 

If the user can read few slides only and went out the resource instead of reading all the slides. The partial time have to be updated in the database.

It is happening perfectly in other browsers like Firefox and IE, etc. But in Chrome(version 44.0) its not updating. Only when the user start to read slide from begin to end and complete the resource the time get updated in database. If partially read few slides, not updating the DB, it says 0000:00:00.

Why, is there any reason in Chrome browser???

In reply to Senthilnathan S

Re: Cant update cmi.core.total_time or cmi.core.session_time

by Dan Marsden -
Picture of Core developers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers Picture of Plugins guardians Picture of Testers Picture of Translators

cmi.core.total_time is a read-only value, you cannot "set" it from within your SCORM pacakge - it calculates the value based on the cmi.core.session_time that your package is responsible for setting.

You can diagnose SCORM issues like this using the SCORM debugger tool:
https://docs.moodle.org/en/SCORM_FAQ#Debugging

I've deleted your other duplicate post. Please avoid posting the same question in more than one location.

thanks!