## SCORM

Hello

I'm running Moodle 2.7 and my students are complaining about constant SCORM alerts "The SCORM player has detected ..."

Is there a quick and easy way to disable this function. Usually there is nothing they can do about their connection. This alert comes and goes constantly distracting them.

Any tips would be very much appreciated.

Tim

Average of ratings: -

Those alerts are there for a reason.

If they have flakey internet conectivity then it is likely that the SCORM content might display in their browser but any progress/grade they achieve may not be saved/passed back to Moodle - even if the SCORM package displays a succesful score or completion. In previous versions of Moodle this failed silently in the background with no warning provided to the user.

If you have users with flakey internet connectivity you should not use SCORM or you should advise your students to use a computer that has reliable internet connection when using SCORM packages.

Average of ratings: Useful (1)

I also have many suspicions about those alerts, and I tend to believe they report a lot of "false positive".

While I was testing SCORM packages on iPad, they hapened to pop up continuously on the iPad, while I did not get anything on a workstation at the same time. This was in an office with a good connection and with a perfectly operating Wifi...

Average of ratings: -

If your server performs badly it could also cause the reports - there's a 2 second timeout value associated with those requests - it uses javascript to check for the file '/lib/yui/build/moodle-core-checknet/assets/checknet.txt' - if it can't access that file it assumes that the network is unavailable. I can't see how that would give false positive reports - the fact you are seeing the errors suggests that network connectivity or server performance is an issue.

If the network is definitely ok - you need to check the performance of your server - a 2 second delay when requesting a text file suggests that your server is not coping well.

SCORM needs network connectivity - intermittent network issues or bad server performance can result in grades or completion tracking silently failing.

Average of ratings: -

I have exactly the same issue.  Desktop behaves fine, while iPad on the same network gets this message constantly every few seconds, making it unusable.

I'd like to know who can this be disabled...

Average of ratings: -

Definitely looks like something worth investigating...

I have created a bug report here : https://tracker.moodle.org/browse/MDL-45987

Average of ratings: -

Hi All,
it should be nice if you could provide more debug info about such failures on a iPad: I do not have such device so I cannot be of any immediate help.
You should start looking at your web server logs to find regular hits to checknet.txt in case of desktop and we should add something like alerts - not sure if console logs are appropriate here - to identify the nature of the failure in case of an iPad. The related YUI module is located in lib/yui/src/checknet/js/checknet.js.

While I understand that this issue is more than annoying, IMHO we should try to find the culprit on the iPad instead of giving the administrator the possibility to disable such an important network check (Ref.: MDL-28261).

In the mean time, if you want to "disable" it you can comment out few lines in mod/scorm/player.php:

diff --git a/mod/scorm/player.php b/mod/scorm/player.phpindex f9f0129..a4f5b01 100644--- a/mod/scorm/player.php+++ b/mod/scorm/player.php@@ -261,8 +261,10 @@ if (!empty($forcejs)) { } // Add the checknet system to keep checking for a connection.+/*$PAGE->requires->string_for_js('networkdropped', 'mod_scorm'); $PAGE->requires->yui_module('moodle-core-checknet', 'M.core.checknet.init', array(array( 'message' => array('networkdropped', 'mod_scorm'), )));+*/ echo$OUTPUT->footer();

HTH,
Matteo

Average of ratings: Useful (2)

Hi Matteo,

Thanks for the help, HOWEVER I now accidentally removed line 260 of the player.php file and the SCORM file is now not working! Could anyone help me by sending me the original mod/scorm/player.php line 260?

Thanks,

Alexis

Average of ratings: -

What version are you on Alexis? The files are available on the Moodle github. 2.7 latest: https://github.com/moodle/moodle/blob/MOODLE_27_STABLE/mod/scorm/player.php

Average of ratings: -

Hi Alexis,

Read it in the version.php file (e.g.: \$release  = '2.8.5+ (Build: 20150319)';) or in the Notifications page.

HTH,
Matteo

Average of ratings: -

Hi Matteo/Matthew,

Thanks so much for the help- it was the latest (2.8) version and I managed to refix the code now

Appreciate the help guys!!!

Average of ratings: -

Using version 2.8.1-0, is there any down-side to modifying the checknet.js to increase the timeout to 4 seconds instead of current 2?

lib\yui\build\moodle-core-checknet\moodle-core-checknet-min.js

and value to modify is

>> timeout:{value:2e3},

<< timeout:{value:4e3},

Average of ratings: Useful (1)

Hi Dan ,

I was following the instuctions with respect to the MDL 28261 ,

My moodle version is 2.6.3 , I couldnt find the folder moodle -core-checknet folder

then I cpoied the checknet.php and module.js file into scorm folder ,
but I constantly started getting the message "Moodle's SCORM player has determined that your Internet connection is unreliabile or has been dropped. If you continue in this SCORM activity, your progress may not be saved. You should exit the activity now, and return when you have a dependable Internet connection. "  whenever the scorm module is tried to open , so I removed those files and replaced module.js file with the orginal copy , but still I get the message , can you please suggest  me to how to disable this message or  is there any other way to simple display an alert message when user lost session between scorm Package and LMS .

Thanks

Usha

Average of ratings: -

Yes, this is especially evident when they are using iPads. This rarely happens on PCs even though they are on the same wifi. We cannot build a separate version of courseware without SCORM for iPads only. It would be nice to have an option for turning the alerts off  even if they are silently failing - we do get "0" for grades, but we can track their activity and still tell how they answered and what options they chose. iPad comfort is becoming essential.

Average of ratings: -
Just to follow up on this issue.

At the moment these warnings are here to stay - the warnings occur as the communication between the SCORM package and Moodle are failing and this means that grades and tracking information from the user will be lost. I have not been able to reproduce this on my own iPad when connecting to my local machine or when connecting to an externally hosted site.

I suspect the reason you are seeing this more frequently is due to one of the following:

1. Wifi access is flaky
2. Connection between your wireless network and your moodle server is flaky or slow and the iPad times out when trying to communicate.
3. iPad specific bug related to network connections dropping and re-connecting.

SCORM requires a reliable internet connection with the Moodle server to function correctly. We MUST warn users if tracking data is going to be lost - we are always getting reports like "my students tell me that they sat the SCORM but it didn't record the score - what happened?" - My preference would be to halt access to the SCORM completely when this warning occurs so if anything we may make it more difficult to continue accessing the SCORM rather than removing the warning.

Of course - if someone manages to trace/diagnose this issue as being a bug with Moodle code and provides a patch to improve it I'm more than happy to take another look.

Average of ratings: Useful (1)

Dan,

I can say with confidence this is not just a Moodle issue with SCORM sessions being lost.  We have had it reported by our clients using commercial LMS systems as well, and WiFi connections seem to be the worst.  The strange part is, that though the SCORM session is lost the learnercan continue through the course which means they still have a connection to the server.  This seems to point to an lower tolerance to connection problems in the SCORM players then a typical browser connection.

However, this new feature in Moodle is keeping us from upgrading to the latest Moodle.  I know the intent behind the fix, though I don't exactly agree with the implementation.  I would much rather have had this reported to the SCORM SCO as an error and then let the SCO decide what to do with the error.

Personally I would like to have the option of disabling this error checking/message as an administrator until a different fix can be identified and implemented.

Until then, for those encountering the message frequently, take a look at your firewall logs to see if it is interpreting the communication as a threat (e.g. flood) and temporarily blocking the device.

Average of ratings: -

Hi Ron,

The problem with allowing the user to continue working on the package even though LMS communication has failed is that they expect to get credit for their interaction with the SCORM and get a grade reported in the LMS - If they don't need a grade then it shouldn't be published as a SCORM package. IMO it is absolutely imperative that we display big warnings when this occurs - the number of support calls I've seen with users reporting they did something with a SCORM package but it didn't report the grade at the end is hard enough when you have review/preview mode to contend with let alone dodgy wifi connections.

You do raise an interesting point about the firewall interpreting the communication as a threat though - it would be interesting to hear if anyone finds this is an issue.

Average of ratings: -

I kinda agree with Ron's middle line.  In my case, SCORM is being used simply to get Captivate content onto the LMS, and we're not grading or assessing in the SCORM exercises.  For this reason, as an administrator I'd like the ability to stop the system flashing these warnings up in front of the learner all the time, especially as the content is, from my point of view and the learner's point of view, working perfectly fine.

Developers often fail to have a commercial hat, but from where I'm sitting, the way this feature has been implemented makes Moodle look cheap and flaky.

Average of ratings: -

If you're not grading you should be using the IMSResource instead of SCORM in Moodle - Captivate allows you to export the content this way too.

We have increased the timeouts since the original code landed which does appear to have decreased some of the problems around false-positivies but the code is here to stay in core. Feel free to change it in your own installations at your own risk if you want.

Average of ratings: Useful (1)

I understand that SCORM packages with no grading option should be added as IMSResource instead of SCORM. However, the options for changing the appearance of a IMSResource are much more limited than those of the SCORM activity. In my case, I definetly want to hide the TOC, which somehow got only implemented into the SCORM activity:

I would also like to hide the frame for the IMSResource so that all a student sees is the actual content of the package. Until those functions are added to the IMSResource I'm constrained to use the SCORM activity.

Average of ratings: -

I am a teacher and use moodle. I was creating a test, then I was editing questions in my question bank, then I wanted to delete some questions by clicking ''x'' as usual then I got a message I was banned due to ''hostile'' actions. Then I couldn't access to the page, I always get the banned error using chrome, firefox.

Next, I entered through internet explorer, went to my question bank, tried to erase a question and then, ''surprise'' I got the same banned message again. I have been working for about 6 months with moodle, no problem until now. Any help? because I need to upload some tests.

I deleted cookies from chrome, explorer, firefox and didn't work. So I can't access to the server. This is so annoying.

Average of ratings: -

We have had issues for the past 2 years of SCORM not reporting grades (showing up as 0%).  Since we've upgraded to the newer version 2 months ago, we are now receiving the connection message on about 1/5th of our users.  Not Ipads, but desktops, we use the Moodle quiz activity for Ipads/Tablets/Phones and SCORM for desktops.  I assume it is our host, but I'm not sure because we have changed hosts twice in that time and and most recently in June with a fresh install on a fresh VPS located in the same city of our users.  It makes me feel better that other people have had this issue because for the last 2 years I haven't had any luck figuring out the 0% reported scores with SCORM.

I used Mattheo's suggestion and disabled the message; I've been able to deal with 0% scores, the error message is intrusive and slows down our students studying progress because they keep restarting it, getting to say question 30, then they give up.  I do not like the error message for our implementation, but that's why we can comment it out.

Maybe one day I'll spend time trying to fix it, but it's low priority for our needs; thanks for the disabling information Mattheo.

Average of ratings: -

Hi,

I am unhappy with the error message as it assumes that delays in getting the checknet file are the same as loss of data.

We have used our scorm cloud account and we don't lose data even though the lag is much much longer

The error message may be more likely to be true if people hosting and using moodle on the same site, but the problem we are running into is due to internet traffic congestion connecting to the host

The error displayed is also misleading

"Alert - theSCORMplayerhas determined that your internet connection is unreliable or has been interrupted. If you continue in thisSCORMactivity your program may not be saved. You should exit the activity now and return when you have a dependable internet connection <OK>"

The internet connection can just be congested rather than unreliable or interrupted
The warning "If you continue in thisSCORMactivity your program may not be saved. " is no necessarily true. Delays in sending messages do not mean that loss is occurring
If the user exits , they have no way of knowing when they have "a dependable internet connection"

current :

Loop
------if delay > 2 ms then a WARNING is given

----------------if ok button pressed then continue

-------end

A possible solution is to

- give the warning once

- allow setup on scorm player for when the delay warning is triggered

or change to a packet loss measure

Average of ratings: -

Hi,

Thanks for your information and Mattheo's instructions to disable this message. In my case, I have two types of SCORM :

1 - Tracking is very important (for example a test). I think this message is welcome.

2 - Tracking is a bonus (for example a content with a classical course). I don't need this message.

Today, I prefer disable this message. We have some learners (Africa, Asia) with bad connexions. It's difficult to use SCORM's contents with this message and learners are scared even if tracking is not important.

My main problem is learners follow this instruction "You should exit the activity now and return when you have a dependable internet connection" .  And they exit and return too many times.

So, if we can choose when we can enable or not this message, I will be the most happy guy !

Best regards.

Clément

Average of ratings: -

As mentioned previously - I understand the frustration people have with this error but it's here to stay at this stage. SCORM requires a reliable/stable internet connection, if the checknet script is failing it means that the javascript in browser cannot communicate with the server. This means that tracking data cannot be saved. If you don't require tracking data you should be using the IMS resource or another method for including your SCORM package on the site.

It is possible we could improve this check but it's not going to be removed from core and I don't plan to add a feature to allow people to disable it in core. Of course you are welcome to modify the code on your own site.

Paul - feel free to submit a patch to improve the way the check works - I'm happy to decrease the frequency of the alerts after the first initial alert but my personal thoughts were to completely block access to the SCORM package if an unreliable internet connection is found (although I won't enforce that in core)

Average of ratings: -

Hi Dan,

In a near futur, if we use Tin Can, how does it work?  It seems Internet connection don't need to be stable like SCORM, isn't ?

Can we consider proposing learnes to download content, read offline and send information when they have a internet connection ?

Regards.

Average of ratings: -

Tin Can contains some specifications around offline use and by design should be more reliable, but that's really a different discussion from this one.

Average of ratings: -

I can see that it must be extremely frustrating to get these messages constantly (we have not seen any of these and we use SCORM packages for all our courses; at least not reported by users). I do however see Dan's point, as it's equally frustrating having to investigate why a user has 0% reported when they claim they have passed the course with say 100% (or whatever). For those who don't like the message or the wording and don't have access to the code, you can always change the text of the message via admin...

Average of ratings: -

Hmm - it seems an odd issue this one. To put it into laymans terms, I run a fleet of cars, and sales reps are complaining that the oil light comes on to regularly, so they the oil light disabled, rather than fixing the cause of the oil light.

I would suggest if it is an issue when the client has a good internet connection, you need to look at the host and server and ensure they are up to scratch.

If clients regularly connect over poor internet, then perhaps SCORM is not a good option - bandwidth requirements would be higher. Maybe a quiz, or more basic forms of learning without the rich media may be a better option.

Cheers
Peter

Average of ratings: -

My connection is fast and reliable (down 185 Mbps, up 9,27Mbps) and the alerts keeps coming.

I have a dedicated server at this moment in maintenance mode so I'me the only user.

Safari and firefox works well, Explorer and Chrome fails.

As some of my SCO's contain ActiveX, I have to use Explorer.

How to get rid of these annoying alerts?

kind regards

Dagwin

Average of ratings: -

If the oil level is ok, flashing the light over and over again don't give more information.

So check level, check oil level sensor and otherwise get rid of the alarm.

If internet connection is OK, get rid of the alert.

Now the alert prevents the sco from running properly. The alert is a solution for a not existing problem and becomes a problem by doing it.

Average of ratings: -

Hi All,

Has any one worked out any work around for this. This seems to have become a major issue for us and I need to provide some solution so that at least end users are aware and will expect this alert window.

I can understand this has been implemented in good sense but, it projects itself as a major fault to end users and non technical superiors.

Don't really know how to decrease the frequency of alerts. it seems very irritating for an user watching a vid on a slide.

Thanks,

Sumanta

Average of ratings: -

Just comment it out as noted in:

I've expressed my views earlier in the thread about this popup, but that's the beauty of Open Source, you can change what you want to fit your needs and we can appreciate the hard work of the developers without requiring extra work from them.

Average of ratings: -

Hello Dan,

Would AICC be a viable alternative to avoid these messages?

Thanks,

Michelle

Average of ratings: -

Whilst I am not in favour of making changes to the core, if you wish to reduce the frequency of these notifications, rather than turning them off completely, you should be able to do this by editing the moodle-core-checknet.js file.  This is found in "moodle/lib/yui/build/moodle-core-checknet/moodle-core-checknet.js.  The default is to display the warning every ten second (10000 milliseconds).

I would think a safe setting is 5 minutes.  The user will still be notified of the problem, but at least it will not popup so often.  Modify line 160 as follows: change "value: 10000" to "value: 300000".  You may increase this number to meet your needs.  Ideally this is better done using a local plugin rather than changing the core.  Otherwise your settings are overwritten when you update your installation.

/**

* The frequency (in milliseconds) that checks should be run.

* A new check is not begun until the previous check has completed.

*

* @attribute frequency

* @writeOnce

* @type Number

* @value 10000

*/

frequency: {

value: 300000

},

/**

Average of ratings: -

Hi Mathieu

I agree with you about avoiding editing the core moodle code. How do I go about using a local plugin to override moodle-core-checknet.js? I've made local plugins before so it's just the overriding of the frequency in moodle-core-checknet.js that I need help with.

Thanks

Average of ratings: -

you can't override this using a plugin - we increased the values in 2.8.8, 2.9.2 and higher versions (MDL-49647) to a 4 second timeout and a re-test every 10 seconds. If your server is regularly taking longer than 4 seconds to return a simple text file from the server this is a much bigger issue and IMO you should not be modifying the code and "ignoring" the issue. SCORM requires a fast/reliable internet connection and a fast/reliable server otherwise bad stuff happens... and it's a real pain to diagnose and track down!

Of course that doesn't help you much if you're using the 2.7 branch which still uses the older values (2 second timeout, 5 second re-test) so you will need to modify the core code.

here's the full patch applied to the 2.8 and 2.9 branches: 552281e46

Average of ratings: -

Thanks Dan

I am using moodle 2.9.1. Yeah, I'm not sure why the scorm alerts are such a problem. I even get the alerts popping up when I am using my localhost which seems crazy as the client and server are the same machine.

I have commented out the checknet code in projects for other clients (moodle 2.7.2, 2.8.1 and lately 2.9.1) as the popups make the scorm unusable and we haven't had problems with the reporting not working so the internet is fine, it's just the alerts that are the issue.

I'll try your patch otherwise will have to continue commenting out the core code for now.

Average of ratings: -

sure - Just don't come complaining here if your clients find that the data isn't reporting reliably

Average of ratings: Useful (1)

Haha I'll keep trying to figure out the root cause of why the alerts are showing up so often. I'm just out of ideas for now haha.

Average of ratings: -

Hi Dan

Is it possible that if a client works from behind a firewall, that the firewall can cause a delay and therefore the server will see it as a interruption or unreliable connection?

And that ipads / apple computers are more susceptible to this or might have some type of firewall or security measures of their own which might cause the problem?

I do not want to disable the message, because I need 100 % tracking. Most of our clients do not experience the problem, but we have one group of clients from the same company who are experiencing the problem, but only those working from Apple computers /ipads.

Average of ratings: -

Anything that sits between your web-server and the device that accesses your system has the potential to cause issues. I did see some iPad related issues with the original timings used in versions prior to 2.7.8 and 2.8.6 but haven't since we made the checks less aggressive. Make sure you are using a recent stable supported release of Moodle higher than 2.7.8 and 2.8.6 - failing that if you manage to find out what causes the network in-stability please let us know!

Average of ratings: -

Adding another data point here.. with a number of our learners using computers at their work place (hospital/health care settings), about 3% of them are reporting that they are getting the popups. So far all of these look to have been false alarms, as the modules are still getting tracked properly for them.

For some people it is still happening repeatedly though I have loosened the settings to be check every 30 seconds with a 10 second timeout. We're on Moodle 2.8.7 at the moment.

Average of ratings: -

And on further investigation, it looks like in one case even the 10 seconds timeouts are too short. In that case it seems the organization is having bandwidth problems at peak times, meaning the latency of their internet requests can range up to 30 seconds or 60 seconds long.

I'm going to keep the timeout at 10 seconds.. at that point, I think the learners have a right to know that they should be complaining about their internet connection to whoever is providing it.

Average of ratings: Useful (1)

Hi Michelle

We are currently facing the same problem with regards to the error message that comes up in SCORM. I was wondering if you were able to solve this problem using AICC or any alternative to SCORM? I am able to upload the AICC file into moodle 2.9.1 but then it does not open. If you have any advice I would be very grateful, or if anyone else does.

Thanks

Annette

Average of ratings: -