Hi i´m from brazil, and i work with a desktop course, now we use toolbook to create our courses, but it is very poor tool, so i would like to know if i can create our courses in storyline and connect it with any database.
I'm also very interested in this. I'd like to have people log in, keep track of progress week after week and print certificates as they complete programs much like Lynda.com.
I can understand why Articulate doesn't come with these things standard, but it'd be great to pay extra to get this kind of functionality. Maybe if the developers looked at a standard language like PHP and a standard DB like MySQL (and whatever variants make sense), they could make such an add-on available for those who want something like Blackboard but in a very minimal framework with room to grow.
I have a clietn with a learners dbase. We have different quizzes assigned for different learners. Learners will login by entering their ID number on the storyline start screen. is there a way I can push that variable into a SQL dbase and then push back the rest of the information to storyline.
It'll be something you need to do with Javascript, and as such I'll have to defer to the community as it's not something I can offer support for. You may want to begin by reviewing the information here in regards to Javascript best practices.
Fairly complicated problem that goes beyond Storyline and Javascript.
Storyline < -- > Javascript < --- > PHP / .Net / Node (whatever server-side code is chosen to interact with the database) < --- > Database (MySQL / SQL)
The bolded part above is the complicated bit, because there are so many options and configurations. If the server side code is already constructed, building some Javascript to interact (push records to, query, and pull data back) are relatively simple.
We managed to get the LearnerID variable to the database and retrieving the relevant values of Name, Surname, Class for specific Learner Id. The problem that we are faced with now is setting the variables within Storyline itself. We tried posting from the .phph file it to the storyline URL but all it does is restart the course and then add the values next to the URL e.g.
CLLT/stroy.htnl+Linda+Lee+Gade5C+9402345578
This doesnt update the variables within storyline itself but the values that are indicated on the URL is correct.
Hi Kennethg! You do seem to be working with some more advanced JS and sure are reaching out to the right resources :) Hopefully you will be able to get some assistance soon.
Hey Mike! You might want to take a look at installing an LRS (Grassblade is pretty cheap and easy to install) and using an xAPI wrapper to send and pull data. Happy to share some examples if you want to go that route. Would be less "roll-your-own" and would give you some additional coolness with the simple queries and built-in REST offered by xAPI. You can run both SCORM and xAPI at the same time.
Either / or both. LRS typically does not handle assignment workflows. So you'd likely want to retain it. LRS becomes an appliance that lets you have a couple of things:
1) Richer data outputs that go beyond score / completion.
2) The ability to pull an agent's completion, preference, or state data from one SCO into another SCO. This isn't possible with SCORM. Nice way to make SCORM files "smarter".
The LRS (like grassblade) is essentially a database interface. It's neat once you see how it works. Lots of power not given by SCORM. Good for stuff you'd normally consider an external database for. Built-in handling of association between person <> activity <> context and both human readable and machine readable.
I'm checking out the GrassBlade website now. I guess I should be more specific about how I instead to use this.
I need a central data repository to replace Google Sheets (the project you were helping me with previously) to track custom data that doesn't necessarily have to do with learner's scores or anything like that. I'd build an admin console in Storyline where an admin could modify data (database records for live events, etc) and then also build a client Storyline project that would also read and write to that database as needed. Would an LRS be appropriate for this?
It could totally support that. However, building a dashboard / panel could get nutty if you have thousands of users. How many users / potential activities per user are you looking at?
If one go with the route of getting Grassblade, will it be possible to install it on a local server(XAMPP) for a school? I am in Namibia, Africa and not all schools have/cant afford internet connection.
We are looking at supporting 200-300 concurrent users, but would like to be able to scale that up if necessary. I'm guessing there would be a user check-in record created every 60 seconds or so, for each user. This could add up to quite a few for an 8-hour program. 60 * 8 * 300 = 144,000 records for one program. Now each record would probably contain only a user id and timestamp, but that's still a lot of data.
Do the checkins need to stack up or would updating the same record be OK? The state can be updated over time for a single statement reference, sort of like suspend data. You could add stuff to this over time as well.
The nice thing about this is you can create that initial record and update a single record with the new state data, overwriting the old state data or simply adding a new element to the state record. Lots of options.
Hi Kennethg, it should run on XAMPP just fine. Are you thinking of running that server in a local network environment? The endpoint should work as an IP address. Haven't tested it but I see no reason why it wouldn't.
We would need individual records, as we would be tracking that a user was present the entire time the program was running. These could be purged at a later date though. I'll have to check with our standards person on this, as I know we also use a pop-up every 15 minutes, that the user must click on to acknowledge their presence. I just know that our current platform does track user presence constantly.
Reporting and filtering returns the xapicollection library is fairly clean if you're looking to calculate total number of progress reports. Drilling in to view a list of progress statements per activity or per agent is also pretty easy.
Once every 60 seconds isn't bad. A worst case 200 simultaneous users once a minute should be a reasonable load for a single LRS installation. Would need to test.
One of the team members from Next (Grassblade's maker) leads the xAPI Video Community of Practice. Might see if you can turn up some things in search for recipes they're using. May be able to grab something premade for Vimeo.
I've been looking at a few services today, and it looks like something like FireBase might work well for this project. I'm still reading through their site. Ever used them? https://www.firebase.com/
65 Replies
Hello you can connect with me by skype: antoniodlis
I'm also very interested in this. I'd like to have people log in, keep track of progress week after week and print certificates as they complete programs much like Lynda.com.
I can understand why Articulate doesn't come with these things standard, but it'd be great to pay extra to get this kind of functionality. Maybe if the developers looked at a standard language like PHP and a standard DB like MySQL (and whatever variants make sense), they could make such an add-on available for those who want something like Blackboard but in a very minimal framework with room to grow.
Hi Joseph,
You're always welcome to share your thoughts in the form of a feature request here with our product development team.
My problem,
I have a clietn with a learners dbase. We have different quizzes assigned for different learners. Learners will login by entering their ID number on the storyline start screen. is there a way I can push that variable into a SQL dbase and then push back the rest of the information to storyline.
Please help..ANYONE!
Hi Kennethg,
It'll be something you need to do with Javascript, and as such I'll have to defer to the community as it's not something I can offer support for. You may want to begin by reviewing the information here in regards to Javascript best practices.
Hi Kennethg -
Fairly complicated problem that goes beyond Storyline and Javascript.
Storyline < -- > Javascript < --- > PHP / .Net / Node (whatever server-side code is chosen to interact with the database) < --- > Database (MySQL / SQL)
The bolded part above is the complicated bit, because there are so many options and configurations. If the server side code is already constructed, building some Javascript to interact (push records to, query, and pull data back) are relatively simple.
Thanks Steve - I knew you might be around here somewhere. :)
Hi Steve,
We managed to get the LearnerID variable to the database and retrieving the relevant values of Name, Surname, Class for specific Learner Id. The problem that we are faced with now is setting the variables within Storyline itself. We tried posting from the .phph file it to the storyline URL but all it does is restart the course and then add the values next to the URL e.g.
CLLT/stroy.htnl+Linda+Lee+Gade5C+9402345578
This doesnt update the variables within storyline itself but the values that are indicated on the URL is correct.
Please help us on this phase..... :(
Hi Kennethg! You do seem to be working with some more advanced JS and sure are reaching out to the right resources :) Hopefully you will be able to get some assistance soon.
It looks like Parse.com hosting is going away.
Is anyone using a different service for this?
Does anyone have some basic sample code showing how to read/write to MySQL using PHP from within Storyline?
Thanks!
Mike
Hey Mike! You might want to take a look at installing an LRS (Grassblade is pretty cheap and easy to install) and using an xAPI wrapper to send and pull data. Happy to share some examples if you want to go that route. Would be less "roll-your-own" and would give you some additional coolness with the simple queries and built-in REST offered by xAPI. You can run both SCORM and xAPI at the same time.
I'll check that out. Would this work in coordination with our current LMS(s) or would it be a replacement? Thanks!
Either / or both. LRS typically does not handle assignment workflows. So you'd likely want to retain it. LRS becomes an appliance that lets you have a couple of things:
1) Richer data outputs that go beyond score / completion.
2) The ability to pull an agent's completion, preference, or state data from one SCO into another SCO. This isn't possible with SCORM. Nice way to make SCORM files "smarter".
The LRS (like grassblade) is essentially a database interface. It's neat once you see how it works. Lots of power not given by SCORM. Good for stuff you'd normally consider an external database for. Built-in handling of association between person <> activity <> context and both human readable and machine readable.
I'm checking out the GrassBlade website now. I guess I should be more specific about how I instead to use this.
I need a central data repository to replace Google Sheets (the project you were helping me with previously) to track custom data that doesn't necessarily have to do with learner's scores or anything like that. I'd build an admin console in Storyline where an admin could modify data (database records for live events, etc) and then also build a client Storyline project that would also read and write to that database as needed. Would an LRS be appropriate for this?
It could totally support that. However, building a dashboard / panel could get nutty if you have thousands of users. How many users / potential activities per user are you looking at?
Hi Steve,
If one go with the route of getting Grassblade, will it be possible to install it on a local server(XAMPP) for a school? I am in Namibia, Africa and not all schools have/cant afford internet connection.
We are looking at supporting 200-300 concurrent users, but would like to be able to scale that up if necessary. I'm guessing there would be a user check-in record created every 60 seconds or so, for each user. This could add up to quite a few for an 8-hour program. 60 * 8 * 300 = 144,000 records for one program. Now each record would probably contain only a user id and timestamp, but that's still a lot of data.
Hey Mike -
Do the checkins need to stack up or would updating the same record be OK? The state can be updated over time for a single statement reference, sort of like suspend data. You could add stuff to this over time as well.
The nice thing about this is you can create that initial record and update a single record with the new state data, overwriting the old state data or simply adding a new element to the state record. Lots of options.
Hi Kennethg, it should run on XAMPP just fine. Are you thinking of running that server in a local network environment? The endpoint should work as an IP address. Haven't tested it but I see no reason why it wouldn't.
We would need individual records, as we would be tracking that a user was present the entire time the program was running. These could be purged at a later date though. I'll have to check with our standards person on this, as I know we also use a pop-up every 15 minutes, that the user must click on to acknowledge their presence. I just know that our current platform does track user presence constantly.
Could still stack those up in a state element. Or use something like the progressed verb to capture each output.
http://xapi.vocab.pub/datasets/adl/
Reporting and filtering returns the xapicollection library is fairly clean if you're looking to calculate total number of progress reports. Drilling in to view a list of progress statements per activity or per agent is also pretty easy.
Once every 60 seconds isn't bad. A worst case 200 simultaneous users once a minute should be a reasonable load for a single LRS installation. Would need to test.
One of the team members from Next (Grassblade's maker) leads the xAPI Video Community of Practice. Might see if you can turn up some things in search for recipes they're using. May be able to grab something premade for Vimeo.
Steve,
I've been looking at a few services today, and it looks like something like FireBase might work well for this project. I'm still reading through their site. Ever used them? https://www.firebase.com/
Thanks,
Mike
This discussion is closed. You can start a new discussion or contact Articulate Support.