Weird Question: "Self-destruct" option after a certain time period?

Just had a strange question from my sales team and it's one that I don't know how to answer. I think it's a "NO" but I thought I'd pose it here and see what the community thought before I gave them a definitive answer. 

We create and license elearning content to clients with yearly licenses. We have language in our SOWs about how at the end of the year license, if they don't renew, they're supposed to remove any content from their LMS/servers. Of course, we don't have any way of actually auditing this; it's more of an honor system. We've never had any incidents where we think we've been screwed over, though I'm sure there have been companies over the years who have abused the honor. 

So Sales wants to know: Is there a way to put in a "self-destruct after ____ date" type of code or other mechanism that would prevent the SCORM content from being usable after the expiration of their license? 

9 Replies
Bob O'Donnell

That's a good one. My boss would like this! My guess is you could hide some javascript code in the program launch that checks for the current date when the program runs. Once you have that data, you could compare it to a pre-set date you decide on - say a month or two after the year is up. (Giving the client some slack) Write some additional code to see if the current date matches your "self-destruct" date and if so, simply insert a scene with a single slide that says, "Sorry - Your course license has expired". That would lock the course down. You could even include an email button to contact your team for renewal.

My two cents...

Michael Anderson

Checking the current date is a little more complex than that, as you would really need to pull the date from a server to be sure, rather than trust the date on the client computer. It might be better to build an access log into each course that would talk to your own server and let you know if someone is using the course beyond the contract date. Of course you could also shut down the course remotely this way. I think Rustici has a service that would accomplish this too, but there would be an extra on-going cost associated with all courses in that case.

Ashley Schwartau

I told them it was probably way too complicated of an ask for us to even think about, but it is an interesting thought experiment!

Michael, you mention pulling the data from a server, which makes total sense. Do you think there would be a way to do it by using a built-in delivery date that is specific to that course? (Not even necessarily a feasible right-now way, but a theoretical method.)

I told our team that we'll have to keep doing things the way we do now but that I would at least ask around about this :)

Michael Anderson

I haven't looked into using Google Sheets in a while, but that certainly could be a viable solution. From what I recall, getting the time from the sheet was a convoluted process, but maybe there's an easier way to do that now. The great thing about using a Google Sheet is that you would not have to maintain your own server, and probably wouldn't have to worry much about server downtime. Phil, has Google Sheet interaction with Storyline gotten any easier over the past few years? If so, I may look into it again. Thanks.