Using a SCORM wrapper to insert webpages/scripts/mini-sites into courses


Userlevel 7
Badge +3

This has come up a few times, so I thought I’d share my lightweight wrapper to solve this.

Issue: Building small webpages, scripts, webapps to bring into a course, but because regular html pages cannot be directly uploaded you must host it somewhere else and then iframe into the course.

Workaround: Move the files into a lightweight SCORM wrapper, zip all the files into a package and load into a course as a SCORM package. 

How: 

  1. Download and unzip the attachment (SCORM_WRAPPER_HACK.zip)
  2. Open the file ‘imsmanifest.xml’ and update the two title tags that currently have ‘Example SCORM Package Hack Update the Title!’ in them. These will show in a few places so use a good logical name.
  3. Copy your files into the base of the folder (you can bring in subfolders as long as you have referenced them correctly. The main page that will load needs to be an index.html file and should reference everything you loaded into the directory.
  4. Zip all contents of the folder into a single directory. Be careful not to insert an extra directory level by just zipping the top level folder, the manifest xml and the index.html should be the first level of the folder.

Tips:

  • I like to use the ‘Full Screen’ option across all device sizes as it lets it feel like a webapp inside the LMS.
  • Similarly, I like to use auto-launch and keep these kinds of courses with just one package.
  • The current wrapper does not push or pull any data (names, course, etc.), but you can if you understand how to write out SCORM scripts, I don’t have a sharable version that does this, but you can.
  • This one also does not pass a completion, as it was being used for tools/calculators so I wanted them to return and have it autolaunch all the time.

15 replies

Userlevel 5
Badge +2

So, this is brilliant! And, it worked like a charm. There is so much potential here, it needs to be stickied. Thanks for putting this together and sharing the tips on how to optimize it. It’s much appreciated.

Userlevel 7
Badge +3

So, this is brilliant! And, it worked like a charm. There is so much potential here, it needs to be stickied. Thanks for putting this together and sharing the tips on how to optimize it. It’s much appreciated.

I use this all the time for things to overcome stuff. Fake observation list type items, content pages that I want in search results and update the content remotely, various tools or calculators, etc. Very simple to use once used to it and I have not run into a simple html/javascript/css setup that I have issues yet with it, at most I might need to adjust some sizing by like 1% to deal with the lost screen space form the browser chrome, but rarely.

I am going to try to put an example together that leverages the SCORM connection to pull and send data and post that as a followup soon. 

Userlevel 7
Badge +6

Gentlemen - you have me thinking alot... can I ask an amateur question that maybe others would gain from? I feel like I am behind the times because I have used a platform in the past that supported an SFTP and webserver ...how much does an Amazon S3 bucket go now-a-days? And how much of a pain-in-a-butt is it to stand it up as a web server for lighter weight purposes like this?

 

Userlevel 5
Badge +2

I originally set up an S3 account to share samples of my articulate work. They have some tutorials on how to set up an account.
 


The pricing depends largely on how much storage you need and traffic you drive. For my purposes, and from experience the cost is very low. A few cents per month. This video discusses the pricing in more detail. 
 


The complete pricing list is available here.
https://aws.amazon.com/s3/pricing/

But as @Bfarkas mentioned, it’s not really needed so long as this SCORM wrapper trick continues to work. 

Userlevel 7
Badge +3

Gentlemen - you have me thinking alot... can I ask an amateur question that maybe others would gain from? I feel like I am behind the times because I have used a platform in the past that supported an SFTP and webserver ...how much does an Amazon S3 bucket go now-a-days? And how much of a pain-in-a-butt is it to stand it up as a web server for lighter weight purposes like this?

 

Its really easy to set one up now a days, I spin them up in minutes regularly, cost depends on storage use and usage/access of the content so can vary greatly. I always keep a small one for some emergency/last minute doc items.

Userlevel 7
Badge +3

Alright, I made another quick package which has an index file example where it connects to the scorm interaction, sets some user info as variables and then loads the name into the H1 welcome. I use this page for reference of the available items:

https://scorm.com/scorm-explained/technical-scorm/run-time/run-time-reference/?utm_source=google&utm_medium=natural_search#section-2

Same general setup as the above one, just you need to make sure to reference the javascript file in the header of the index page, and then there is a script I usually keep separate but for the example i brought into the head directly which attempts to connect to the LMS and then either sets up variables for the data or has a block of what to do if the connection fails. This is a very simple example, lots of possibilities. 

Userlevel 7
Badge +5

Gentlemen - you have me thinking alot... can I ask an amateur question that maybe others would gain from? I feel like I am behind the times because I have used a platform in the past that supported an SFTP and webserver ...how much does an Amazon S3 bucket go now-a-days? And how much of a pain-in-a-butt is it to stand it up as a web server for lighter weight purposes like this?

 

For super light weigh purposes it’s actually free. You get some basics free. 
 

Standing it up as a web server? Click an item, set access permissions (“acl settings”), click and go to properties, copy and paste the url. Done!

 

it’s actually easier than Dropbox imo even for sharing links and files. Sometimes I just use my s3 to share files. 

Userlevel 7
Badge +3

Gentlemen - you have me thinking alot... can I ask an amateur question that maybe others would gain from? I feel like I am behind the times because I have used a platform in the past that supported an SFTP and webserver ...how much does an Amazon S3 bucket go now-a-days? And how much of a pain-in-a-butt is it to stand it up as a web server for lighter weight purposes like this?

 

For super light weigh purposes it’s actually free. You get some basics free. 
 

Standing it up as a web server? Click an item, set access permissions (“acl settings”), click and go to properties, copy and paste the url. Done!

 

it’s actually easier than Dropbox imo even for sharing links and files. Sometimes I just use my s3 to share files. 

Sounds like you have your bucket to open sharing then? Not a great idea :) Should set up non-generic access and then you can create private links on a per directory/document basis. I don’t know that I’d say that is easier than dropbox though. Easy, but not that easy.

The cost comes down to usage, so while some basic things can be free, if you are deploying any type of document to a large group, you probably cross the free usage threshold a month, but it is definitely useful to have one setup for quick easy private use for sure.

Userlevel 7
Badge +5

How do you get data in or out of this?

I know nothing, Jon Snow. 

Userlevel 7
Badge +3

How do you get data in or out of this?

I know nothing, Jon Snow. 

You have to use the SCORM runtime, this is why most folks use tols like articulate to handle that part for them. There’s a javascript file that manages the connection and communication to the LMS and you’d have to script out the action you desire.

Userlevel 7
Badge +5

Gentlemen - you have me thinking alot... can I ask an amateur question that maybe others would gain from? I feel like I am behind the times because I have used a platform in the past that supported an SFTP and webserver ...how much does an Amazon S3 bucket go now-a-days? And how much of a pain-in-a-butt is it to stand it up as a web server for lighter weight purposes like this?

 

For super light weigh purposes it’s actually free. You get some basics free. 
 

Sounds like you have your bucket to open sharing then? Not a great idea :) Should set up non-generic access and then you can create private links on a per directory/document basis. I don’t know that I’d say that is easier than dropbox though. Easy, but not that easy.

 

I create links on a per document basis as above :)

How do you open a bucket to sharing? I don’t want THAT, but I would like a bucket with ACL-view available to all, so I don’t have to do that every. single. time. i. upload.

Including replacing a jpeg with an identical file. Gotta set the ACL.

 

Userlevel 7
Badge +3

Gentlemen - you have me thinking alot... can I ask an amateur question that maybe others would gain from? I feel like I am behind the times because I have used a platform in the past that supported an SFTP and webserver ...how much does an Amazon S3 bucket go now-a-days? And how much of a pain-in-a-butt is it to stand it up as a web server for lighter weight purposes like this?

 

For super light weigh purposes it’s actually free. You get some basics free. 
 

Sounds like you have your bucket to open sharing then? Not a great idea :) Should set up non-generic access and then you can create private links on a per directory/document basis. I don’t know that I’d say that is easier than dropbox though. Easy, but not that easy.

 

I create links on a per document basis as above :)

How do you open a bucket to sharing? I don’t want THAT, but I would like a bucket with ACL-view available to all, so I don’t have to do that every. single. time. i. upload.

Including replacing a jpeg with an identical file. Gotta set the ACL.

 

Good, you had me scared for a second, I wouldn’t do it for a full bucket, but do often do a directory with the same setup as the individual files.

Userlevel 7
Badge +5

How do you get data in or out of this?

I know nothing, Jon Snow. 

You have to use the SCORM runtime, this is why most folks use tols like articulate to handle that part for them. There’s a javascript file that manages the connection and communication to the LMS and you’d have to script out the action you desire.

Any tutorials you like? Setting my web dev on this next

Userlevel 6
Badge +2

Hi @Bfarkas 

I was wondering whether you (or any others here) are still using this SCORM wrapper?  I cannot get the second version, which uses the SCORM API, to work - it does not seem to be able to connect to the API, and the user name just says “Welcome !”, with no name inserted. 

Do you have any tips on troubleshooting?  

My ultimate goal is to use the API to record a simple completion status once the SCORM is closed. 

Many thanks,

Alan

Userlevel 7
Badge +3

Are you using the second package? The original one at the top does not support any data connections.

Curious what you are wrapping that makes you go this route over just using a traditional scorm route for completions?

Reply