19 Replies
Steve Flowers

Outputs published for the Web or CD ROM (Web wrapped in EXE) will store variables and other persistent states in cookies or Flash Shared Objects (Flash cookies). As long as the modules are launched from the same machine and the user has not cleared their cache, previous state and variables should restore on subsequent visits.

Steve Flowers

Hi, Abhinav. There are three settings under Player > Other that determine this behavior:

  • Prompt to Resume is the default. This will provide a dialog for the user to choose whether they want to resume their previous session. If they select No, all variables and states are cleared out / destroyed and the story is a fresh visit.
  • Always Resume will automatically jump to the last place in the story when revisiting without displaying a dialog. In this case, the variables and states of the story will always be retained.
  • Never Resume will always start the story fresh. Variables and states will never be stored with this setting.

Belal Sweileh

Hi,

I have a question: What triggers the sending/updating of the suspend_data or the Flash cookie? For example, does the user need to transition to a new slide or revisit a slide before the variables are stored for resume?

For example: Let's assume a project was published with "Always Resume" option and it only contained 1 slide. On this slide, there is a button that triggers a numerical variable to increase by 1 every time (i.e. initial value of variable i = 0; when the button is clicked, i++). If the user loads the webpage containing the Storyline project, then clicks the button a few times and sees the variable increase 1,2,3,4,etc., then upon refreshing that webpage will the user see the variable return back to its initial state or will it resume from where it left off?

I have been trying to get the above example to work, but alas ... no success.

Best regards,

Belal

Belal Sweileh

Hi Phil,

So a window refresh will not save the user's status? What about clicking on another link on the page and visiting another web location?

I'm only asking because I want to try to only embed my storyline projects in iframes on the same page.  But in this case, a user is not likely to close the window altogether. Rather, the natural tendency is to click on another link and move to a different lesson in the website.

Does this mean that I should have the storyline presentation open in a new window so that the user is more likely to close the window and save his/her state when done?

Would it work if the storyline presentation was opened as a lightbox then closed that way? 

I just don't want the user opening too many new windows. My users are small children. The simpler, the more self-contained, the less clicks needed in the lesson, the better. Thanks for you help in advance. 

Best regards,

Belal

Belal Sweileh

Hi again,

I did some digging ... Is it the JavaScript .unload() event that triggers the storyline to save its state? If so then a page reload should work. Here is the definition I found at w3schools:

"The onunload event occurs once a page has unloaded (or the browser window has been closed).

onunload occurs when the user navigates away from the page (by clicking on a link, submitting a form, closing the browser window, etc.)

Note: you will also trigger the unload event when a user relaods the page (and the onload event)."

If what I am assuming is correct, then why are the states of my storyline projects not saved whenever I refresh the browser page?

Best regards,

Belal

Joseph Olive

I also have file published for the web with "always resume" set and all pages and layers set to "resume saved state".  However, on a revisit or reload, the variables are all reset to default and all states on the page go to the initial state. 

There has to be something I'm overlooking.  Could it be browser security?  I looked at flash local storage settings and they are set to allow and look to be storing 4kb of something. 

Should I assume I would need JavaScript for this? 

Please help!

Ulrich Großmann

I`ve got a big problem: Variables are only stored after leaving the slide. but if i close the publishes lms content (by JS or trigger) the variable changed on the slide will stay as before the change.

example: variable "end" initial state: 0

trigger: set to 1

display in textfield %end%: "1"

trigger "exit course"

restart the course: end is 0, not 1.

There seems to be no possible way to change a variable on the exit page.

Christie Pollick

Hi, Ulrich -- Sorry to hear of your difficulties! As this thread is a bit older, if there were certain participants you were hoping to reach, some may no longer be subscribed. As such, you are welcome to use the 'Contact Me' link on an individual's profile page if you wish. 

I see that you also mentioned potentially using JavaScript, and I thought I should note that JS is not something for which we would be able to provide support, so we'd have to defer to the JS experts in the community to assist you further. 

And finally, you may find it helpful to upload your file so that others in the community are able to take a closer look at what you've described. Please use the grey ADD ATTACHMENT button in the bottom left of the reply box and browse from there. :)

Ashley Terwilliger-Pollard

Hi Ulrich,

I may be misunderstanding your description but the variable should be remaining based on a trigger executing prior to the user leaving the course - but the difference in this is that the slide's state does not remain until they leave the slide and exit the course so if the trigger is based an a similar element and the slide's state that could be where you're running into an issue. You could always look at a trigger that "jumps to a new slide" and the first trigger on that slide is to exit the course - that would be an easy way to solve it and ensure that the variable value remains based on the trigger and then the user can exit the course. There is also a really great example I like to point to here in terms of saving the users progress and allowing them to exit. 

As Christie mentioned if it's JS it's something we'll be unable to assist with - but if you're using a Storyline trigger we're always happy to take a look. You can share it here with the community and staff. 

Steve Flowers

Unfortunately, variables aren't committed to the LMS until a slide change has been triggered. The suggestion Ashley makes above is the only solution I can think of that would work in this case. 

I've had some limited success using a lightboxed slide as my exit. The lightboxed slide triggers the retention of the variable change in my testing. Some others have indicated that it doesn't work consistently enough.

Ulrich Großmann

Hi Ashley,

 

thanks for your help! I used the workaround Kate Hoeltscher mentioned. It’s not optimal (when the user exits the course on the „Been Saved Page“ he will get back to this page the next time he opens the course) but for HTML4 Content the best way.

 

kind regards
Uli