{"id":232,"date":"2012-11-01T20:54:55","date_gmt":"2012-11-01T20:54:55","guid":{"rendered":"http:\/\/danmarsden.com\/blog\/?p=232"},"modified":"2013-09-24T14:43:30","modified_gmt":"2013-09-24T02:43:30","slug":"managing-scorm-content-in-moodle-2","status":"publish","type":"post","link":"https:\/\/danmarsden.com\/blog\/2012\/11\/01\/managing-scorm-content-in-moodle-2\/","title":{"rendered":"Managing SCORM content in Moodle 2"},"content":{"rendered":"<p>There are a range of ways to manage SCORM package files in Moodle<\/p>\n<p><strong>Uploaded package.<br \/>\n<\/strong>This method is the only option shown by default in a new Moodle installation. The teacher uses the Moodle file picker to select or upload a new SCORM package.<\/p>\n<p>The site administrator is able to set up a range of different repository types that could contain SCORM zip packages.<\/p>\n<p><strong>External Package type<br \/>\n<\/strong>External package type is disabled by default on new installations \u2013 it is not a great method of linking to packages as under certain circumstances your packages will not pass back any grade or tracking information to Moodle.<\/p>\n<p>If enabled and selected it provides a text field to paste a URL to a remote imsmanifest.xml (in an unzipped remote SCORM package) \u2013 this allows SCORM content to be hosted outside your Moodle site and the content is played from the external location and is not unpacked\/copied into Moodle storage. This also means that if you update the SCORM package then the latest content will always be loaded (unless you update your core imsmanifest.xml file as this file is copied into Moodle) \u2013 be very careful updating your imsmanifest.xml file; if your SCO identifiers change then tracking information for any removed SCO identifiers for any previous user attempts will be cleared from the Moodle database.<\/p>\n<p>For the external package type to work \u2013 your SCORM content MUST be located under the same url as your Moodle site &#8211; If the base url is different from your Moodle url then built in web browser security will block cross-domain communication and no grades\/tracking information will be passed back to Moodle. Adobe Flash and modern browsers (ever since IE 6) prevent cross-domain communication. If you really need your packages to sit outside Moodle on a different URL you should look at other options for hosting your content.<\/p>\n<p>To enable the External package type go to:<br \/>\nAdmin &gt; Plugins &gt; Activity modules &gt; SCORM package<br \/>\ntick the box for &#8220;Enable external package type&#8221;<\/p>\n<p><strong>Downloaded package type<\/strong><br \/>\nDownloaded package type is disabled by default on new installations. It allows your SCORM zip package to be hosted on an external location.<\/p>\n<p>If enabled and selected it provides a text field to paste a URL to a remotely hosted SCORM zip package. Moodle will download the package and unzip into the Moodle file system. Moodle will only check for a new SCORM package each time the settings page is opened and re-saved unless you configure the option \u201cAuto-update frequency\u201d &#8211; this is an advanced setting by default so make sure you hit the \u201cshow advanced options\u201d button on the SCORM settings page \u2013 this option will also only appear if you have either the downloaded\/external package types enabled and selected.<\/p>\n<p>The Downloaded package type doesn&#8217;t have the same issues around cross-domain communication as the external package type as the SCORM package is downloaded and stored inside the Moodle file system. The main disadvantage of this type is that your SCORM package must be on a url accessible by your Moodle server which usually means that it will be available publicly for anyone to download (unless you configure some form of firewall on your external SCORM content server to prevent this sort of access and only allow the Moodle server to download the file over http\/https)<\/p>\n<p>To enable the downloaded package type go to:<br \/>\nAdmin &gt; Plugins &gt; Activity modules &gt; SCORM package<br \/>\ntick the box for &#8220;Enable downloaded package type&#8221;<\/p>\n<p><strong>IMS package type<br \/>\n<\/strong>IMS package type is disabled by default on new installations. The IMS package type is only included for backwards compatibility with old content still in your site \u2013 Moodle 1.6 -1.9 had a badly implemented\/not well supported\/undocumented\/buggy feature called the \u201cimsrepository\u201d &#8211; this allowed you to store your SCORM packages in unzipped form in a folder within your moodledata and select\/link to these packages. This feature is not supported in Moodle 2 but if you have legacy data in your installation that has not been moved, enabling the IMS package type will allow this old content to play\/function correctly until you migrate to one of the other package types. I&#8217;m not aware if this actually works \u2013 I&#8217;d be keen to hear from anyone still using imsrepository content to know if it works or not. At some point this option will be removed from Moodle core \u2013 maybe 2.5?<\/p>\n<p><strong>Direct AICC url<br \/>\n<\/strong>Direct AICC url type is disabled by default on new installations.<\/p>\n<p>The Moodle SCORM module also supports AICC content \u2013 AICC can use a different way to communicate with an LMS without using JavaScript which allows the content to be stored externally without running into cross-domain communication issues. We call this method \u201cexternal AICC HACP\u201d &#8211; this content communicates directly with your Moodle server rather than via the learners browser session. To use this form of communication, you must enable the setting \u201cEnable external AICC HACP\u201d in admin &gt; plugins &gt; activity modules &gt; SCORM<\/p>\n<p>Usually when connecting to an external AICC HACP package you are provided with a small AICC zip package which contains a file with a link to the external AICC content \u2013 to make it easier for AICC authors we have included an option that allows you to paste a url to the external AICC content instead of having to create a zip package with the file to link to the content.<\/p>\n<p>It&#8217;s best to leave the Direct Aicc url type disabled unless you have an AICC content provider that provides urls to their external AICC content instead of AICC package files. It is a good idea to enable external AICC HACP<\/p>\n<p><strong>Future Improvements.<\/strong><br \/>\nMoodle 2.3 has an \u201calias\u201d feature that means when an uploaded file is re-used elsewhere on Moodle, the teacher has the option to create a shortcut or <em>alias.<\/em><\/p>\n<p>If an alias is created, then when the original file is updated, it will change in all instances of the alias. More info: <a href=\"http:\/\/docs.moodle.org\/23\/en\/Working_with_files#Creating_an_alias.2Fshortcut\">http:\/\/docs.moodle.org\/23\/en\/Working_with_files#Creating_an_alias.2Fshortcut<\/a><\/p>\n<p>Implementing this for SCORM is possible but will need to be managed carefully \u2013 more information on this is available in <a href=\"http:\/\/tracker.moodle.org\/browse\/MDL-28579\" target=\"_blank\">MDL-28579<\/a><\/p>\n<p>*UPDATE 24 Sept 2013* &#8211; Moodle 2.6 now implements some more options &#8211; see here for more details:<br \/>\n<a href=\"http:\/\/danmarsden.com\/blog\/2013\/09\/24\/managing-scorm-content-in-moodle-2-6\/\">http:\/\/danmarsden.com\/blog\/2013\/09\/24\/managing-scorm-content-in-moodle-2-6\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>There are a range of ways to manage SCORM package files in Moodle Uploaded package. This method is the only option shown by default in a new Moodle installation. The teacher uses the Moodle file picker to select or upload a new SCORM package. The site administrator is able to set up a range of [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,12],"tags":[3,5],"class_list":["post-232","post","type-post","status-publish","format-standard","hentry","category-moodle","category-scorm","tag-moodle","tag-scorm"],"_links":{"self":[{"href":"https:\/\/danmarsden.com\/blog\/wp-json\/wp\/v2\/posts\/232","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/danmarsden.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/danmarsden.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/danmarsden.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/danmarsden.com\/blog\/wp-json\/wp\/v2\/comments?post=232"}],"version-history":[{"count":6,"href":"https:\/\/danmarsden.com\/blog\/wp-json\/wp\/v2\/posts\/232\/revisions"}],"predecessor-version":[{"id":279,"href":"https:\/\/danmarsden.com\/blog\/wp-json\/wp\/v2\/posts\/232\/revisions\/279"}],"wp:attachment":[{"href":"https:\/\/danmarsden.com\/blog\/wp-json\/wp\/v2\/media?parent=232"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/danmarsden.com\/blog\/wp-json\/wp\/v2\/categories?post=232"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/danmarsden.com\/blog\/wp-json\/wp\/v2\/tags?post=232"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}