SCORM

Something you want to see in a LiveCode product? Want a new forum set up for a specific topic? Talk about it here.

Moderators: Klaus, FourthWorld, heatherlaine, robinmiller, kevinmiller

elamast
Posts: 7
Joined: Thu Nov 13, 2008 3:20 pm

SCORM

Post by elamast » Thu Dec 10, 2009 8:42 pm

Has anyone been able to develop a stack that will communicate quiz scores to a SCORM-compliant LMS? Or better...is there any built-in functionality that is planned? I'd love to be able to dump Toolbook and use RunRev instead.

Mark
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 5138
Joined: Thu Feb 23, 2006 9:24 pm
Contact:

Re: SCORM

Post by Mark » Mon Jan 11, 2010 12:52 pm

Hi Elamast,

It isn't too difficult to do what you ask, but it is time consuming. I guess I could make a library to create SCO's. If you think that using RunRev instead of Toolbook is sufficient a cost saver to invest some resources in such a library, feel free to contact me by e-mail (see profile).

Best,

Mark
The biggest LiveCode group on Facebook: https://www.facebook.com/groups/livecode.developers
The book "Programming LiveCode for the Real Beginner"! Get it here! http://tinyurl.com/book-livecode

emdalton
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 152
Joined: Thu Jul 30, 2009 4:03 am

Re: SCORM

Post by emdalton » Tue May 29, 2012 6:24 pm

I have been hoping to use LiveCode to generate learning content for use with our LMS (learning management system), Moodle. What I need to be able to do is provide rich interactions, e.g. a simulation or interactive animation, and pass the student status back to the LMS for storage in the grading system. In some cases, completion of the activity would be enough. In other cases, some measure of success would be needed. For example, if we have a simulation of a frog dissection, if the learner ends up chopping up all the organs, or never finds the spleen (or whatever), they shouldn't get as high a score as someone who neatly opens up the frog and drops each of the organs into the proper box on the screen. That score needs to be reported back to the LMS.

With the advent of LTI (Learning Tools Interoperability) I think we now have two potential standardized ways to include LiveCode content in a learning management system. We could either generate a SCORM object using a revlet, passing learner status to the LMS via the browser using javascript, or connect to an external server, possibly even an On-Rev server, and execute content there, passing status back to the LMS using OAuth.

I don't know which would be easier at this point. I suspect SCORM would still be more functional, and possibly more stable, since LTI is just getting started and only Basic LTI is available at this point.

I've also been thinking about the potential limitations of revlets, as I keep hearing that the Web Deployment is behind the other deployment methods in functionality, though I don't know the details. If we need functionality not in the web plugin, perhaps there could be a downloaded standalone executable that communicates with a revlet, either within the LMS or on an external LTI server?

In any case, the college I work for is very interested in developing this content, and we'd like to work with someone on creating a package to implement SCORM and/or LTI in LiveCode in such a way that we and other educational institutions could then use the package to generate content usable in Moodle and other LMS sites. We might be able to fund development, or write a grant to do so. Please post here or contact me if interested.
Elizabeth

Image

Mark
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 5138
Joined: Thu Feb 23, 2006 9:24 pm
Contact:

Re: SCORM

Post by Mark » Tue May 29, 2012 6:31 pm

Hi,

I can just repeat my previous message. Feel free to contact me.

Kind regards,

Mark
The biggest LiveCode group on Facebook: https://www.facebook.com/groups/livecode.developers
The book "Programming LiveCode for the Real Beginner"! Get it here! http://tinyurl.com/book-livecode

emdalton
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 152
Joined: Thu Jul 30, 2009 4:03 am

Re: SCORM

Post by emdalton » Tue May 29, 2012 6:34 pm

I did. :)
Elizabeth

Image

Mark
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 5138
Joined: Thu Feb 23, 2006 9:24 pm
Contact:

Re: SCORM

Post by Mark » Tue May 29, 2012 6:44 pm

Hi,

You did? When? I had a quick look, but I don't see a message from you.

Mark
The biggest LiveCode group on Facebook: https://www.facebook.com/groups/livecode.developers
The book "Programming LiveCode for the Real Beginner"! Get it here! http://tinyurl.com/book-livecode

emdalton
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 152
Joined: Thu Jul 30, 2009 4:03 am

Re: SCORM

Post by emdalton » Tue May 29, 2012 8:28 pm

I used your "Contact me now" link that goes to your software company site. Would you rather have a PM here?
Elizabeth

Image

Mark
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 5138
Joined: Thu Feb 23, 2006 9:24 pm
Contact:

Re: SCORM

Post by Mark » Tue May 29, 2012 8:36 pm

Hi,

I don't think you can send PM's here. Did the website tell you that the message was submitted? I tested the website and it seems to be working, but if it really doesn't work, you could write me at m.schonewille (at) economy-x-talk.com

Kind regards,

Mark
The biggest LiveCode group on Facebook: https://www.facebook.com/groups/livecode.developers
The book "Programming LiveCode for the Real Beginner"! Get it here! http://tinyurl.com/book-livecode

emdalton
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 152
Joined: Thu Jul 30, 2009 4:03 am

Re: SCORM

Post by emdalton » Tue May 29, 2012 9:00 pm

The site said it submitted the request, but I'll send you an email.
Elizabeth

Image

dirkca
Posts: 2
Joined: Sat Sep 29, 2012 4:03 pm
Contact:

Re: SCORM

Post by dirkca » Sat Sep 29, 2012 4:06 pm

HI,
just wondering what the status is on moodle integration.Thnaks

elamast
Posts: 7
Joined: Thu Nov 13, 2008 3:20 pm

Re: SCORM

Post by elamast » Mon Sep 29, 2014 5:47 am

At this point I'm waiting for HTML5 output. That should open up a whole new world for being able to "scormify" content for an LMS.

emdalton
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 152
Joined: Thu Jul 30, 2009 4:03 am

Re: SCORM

Post by emdalton » Mon Sep 29, 2014 2:37 pm

elamast wrote:At this point I'm waiting for HTML5 output. That should open up a whole new world for being able to "scormify" content for an LMS.
Yes, and the open sourcing of LiveCode has made this option even more attractive! :D My college is very excited about this. We deliver many of our courses online and we envision being able to provide a wide variety of rich, engaging content once LiveCode can export to HTML5 and there is a SCORM starting package.
Elizabeth

Image

emdalton
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 152
Joined: Thu Jul 30, 2009 4:03 am

Re: SCORM

Post by emdalton » Tue Sep 08, 2015 8:46 pm

So now that we have a build that includes HTML output, what is needed to get a workable SCORM output?
Elizabeth

Image

elamast
Posts: 7
Joined: Thu Nov 13, 2008 3:20 pm

Re: SCORM

Post by elamast » Tue Sep 08, 2015 9:06 pm

Absolutely agree. SCORM and/or TIN CAN eLearning support would be a HUGE plus!

emdalton
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 152
Joined: Thu Jul 30, 2009 4:03 am

Re: SCORM

Post by emdalton » Thu Sep 10, 2015 8:22 pm

Looking through http://www.adlnet.org/wp-content/upload ... imeEnv.pdf it seems like we need some stack-level scripts that will result in the following functions being defined in the final code:

LMSInitialize() - signals the LMS to expect content
LMSFinish() - signals the LMS that no more content will be sent
LMSGetValue(parameter) - gets some info from the LMS, e.g. the student's name, max_time_allowed, language preference, previous SCO score, etc. Returns string values. Uses defined SCORM Run-Time Enviornment Data Model.
LMSSetValue(parameter, value) - sends a value back to the LMS.
LMSCommit() - clears a cache/buffer
LMSGetLastError() - returns last error status code from LMS - these are defined in the document linked above
LMSGetErrorString(errornumber) - gets the string relating to a specific error number from the LMS
LMSGetDiagnostic(parameter) - vendor specific

The LMS supplies the API adapter, so that doesn't need to be bundled into the output from Livecode. In the case of Moodle, for example, SCORM support is implemented as a type of Activity. The zip file is loaded into that activity, and the activity itself provides access to the Moodle SCORM API. The SCO has to be able to find the API adapter, though. It needs to run something like findAPI() and getAPI() on openstack, I guess, and their results would be used to enable the functions defined above.

I can see how to format various functions within LiveCode to use the LMSGetValue and LMSSetValue calls, but I'm not so sure how to locate the API and use it from within the stack code. Also, I think we need to generate a manifest.xml file and put it into the zip with the generated standalone.js code.

Ideally a lot of this would be done with a checkbox in the HTML rendering panel, but maybe a sample manifest file and a companion file to find the API could make the existing standalone.js content work....
Elizabeth

Image

Post Reply

Return to “Feature Requests”