SAP Knowledge Base Article - Public

2876002 - Changes to course tracking with Google Chrome 80,83 and Edge 83 release

Symptom

  • Per some reports on Google Chrome release (Chrome 80) on October 22nd 2020 there may impact to course tracking.
  • Courses which are authored to be marked complete on-exit or posting data to an external URL may no longer report as complete. Similarly, learners' progression through courses might also not be saved. Systems such as SuccessFactors Learning may fail to receive completions under Chrome.
  • There are some changes to Google Chrome release (Chrome 83) on May 19th that might impact course tracking. 
  • Specifically to changes in Chrome 83 are the commit calls for SCORM 1.2 and SCORM 2004 when the content window is closed.
  • The issue is also occurring in Edge 83 since it is build off the same chromium codebase.
  • 3 impact areas – Web, Cross Domain Proxlet and Offline Player.

Environment

SAP SuccessFactors Learning

Resolution

NOTE (Updated on July 16th 2021): All Learning tenants have a patch applied that should resolved most issues. Below is a list of enhancements that have been done due to the deprecation of XHR on Google Chromium code:

  • Updated the API communication to use a new browser agnostic API (As per the End User Requirements, not all browser versions are supported and it's best practice to update to the latest version). Released on version: b2005.20
  • SCORM tracking on Offline Player. Released on version b2011
  • Cross Domain Content (CDS) enhancements. Requires latest proxlet installed. Released on version b2005p28
  • Some enhancements to using the legacy inline player. Released on version b2011
  • SCORM 1.2 on the SF Mobile Apps
  • SCORM 2004 on the SF Mobile Apps
  • Legacy inline player bookmarking and completion

If you are still facing issues please validate if the issue is the content or the browser. SAP Support does not provide assistance with troubleshooting content related issues (meaning the content is not coded to send the correct data). If you believe that the issue is not the content, please follow 2978324 on gathering logs to validate that the new API communication is being used along with checking if completion/bookmarking data is sent when engaging Support.

Please see below for more technical information. Near the bottom there is a temporary workaround that can be applied on a browser level. If possible, you can update the content to not use synchronous API calls as another workaround.

Chrome 80

Starting with version 80, Chrome will disallow synchronous API requests made on page dismissal. To clarify, this means two things:

  1. This change only affects synchronous requests.
  2. Chrome will only block synchronous requests made from an exiting browsing context. For example, synchronous requests issued during the "beforeunload", "unload", "pagehide", and "visibilitychange" browser events will be blocked.
  • For all SCORM content, the closing window issues no requests. Instead, to record content status changes, the content calls a local JavaScript API from the parent SuccessFactors Learning browser context. The SuccessFactors Learning browser context then issues a request to the server. The closing window never issues a request itself, and cannot be affected by the changes being made to Chrome.
  • For AICC content, two paths are available to content developers for recording status changes.
  • Similar to SCORM, the content calls a local JavaScript API from the Learning browser context. In this case, no API calls are issued from the closing window.
  • The content issues an HTTP request to the server. However, the AICC standard does not require that such requests be made synchronously.

It is possible that some content developer has chosen to implement their AICC content using synchronous HTTP requests. In such a case, the content developer must update their course to issue asynchronous requests.

Customers should be made aware that AICC content configured to issue synchronous requests may fail in Chrome 80. As iContent is self-managed (unless you have a PCM contract, customers are responsible to inspect their own AICC content to see if there are issues with synchronous requests. If any AICC content does rely on synchronous requests to SuccessFactors Learning, reach out to your respective content vendor.

Other content types such as browser, document, etc, will not be affected by Chrome 80 as they do not rely on synchronous behavior.

Chrome 83

This issue is the same around the update the started with version 80. This is a block on the browser that affect synchronous requests. You might see an error when closing the content window such as:

  • jslet-common-logging.js;mod=7770ee83:81 Fri May 22 2020 11:14:30 GMT-0600 (Mountain Daylight Time) [DEBUG]: PlateauSCORMAPI LMSCommit('')
  • jslet-common-logging.js;mod=7770ee83:106 (2) ["Fri May 22 2020 11:14:30 GMT-0600 (Mountain Daylig…RROR]:PlateauSCORMAPI Problem committing LMS data", "undefined"]
  • jslet-common-logging.js;mod=7770ee83:81 Fri May 22 2020 11:14:30 GMT-0600 (Mountain Daylight Time) [DEBUG]: PlateauSCORMAPI setError(101, diagnostic == 'undefined')
  • jslet-common-logging.js;mod=7770ee83:81 Fri May 22 2020 11:14:30 GMT-0600 (Mountain Daylight Time) [DEBUG]: PlateauSCORMAPI  returning 'false'

Please get with your IT team to update the Chrome setting "Allows synchronous XHR rquests in page dismissal" which will allow the calls to proceed.

Workaround: This can be done per browser by following these steps:

  1. Open Chrome browser
  2. Go to chrome://flags/#allow-sync-xhr-in-page-dismissal
  3. Change the drop-down selection from “Default” or “Disabled” to “Enabled”

Edge 83

This can be done per browser by following these steps:

  1. Open Edge browser
  2. Go to edge://flags/#allow-sync-xhr-in-page-dismissal
  3. Change the drop-down selection from “Default” or “Disabled” to “Enabled”

 This should be done from a Global Registry setting or Chrome Group Policy which your IT team can assist. SAP Support cannot provide guidance on making these changes.

See Also

LRN-69939

Keywords

Chrome 80, AICC Wrapper synchronous XHR, new, release, update, change, courses, api, standards, lms, 83, scorm, scorm2004, 1.2, Edge 83 , KBA , LOD-SF-LMS-CNT , Content , Problem

Product

SAP SuccessFactors Learning all versions