Reset profile script value on session expiration | Community
Skip to main content
Level 2
April 20, 2023
Solved

Reset profile script value on session expiration

  • April 20, 2023
  • 3 replies
  • 2051 views

Hello All,

I have a scenario where a user journey consists of three pages. When a user visits page one, a value of 1 is set. Likewise, when the user visits page two, the value is set to 2, and the same applies to page three.Based on this value, I will display a particular experience on the home/logout page.

 

However, if the user remains inactive for more than 30 minutes, or if the current session expires, the value should be reset to '0'.

Here is my current script:

var journeyPage = user.get("journeyDrop"); if (page.url.indexOf('https://example.com/form.html') > -1) { journeyPage = 1; }else if (page.url.indexOf('https://example.com/plans.html') > -1) { journeyPage = 2; }else if (page.url.indexOf('https://example.com/success.html') > -1) { journeyPage = 3; } return journeyPage


 Thanks in advance!

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by nnakirikanti

 You can reset at the start of new session, I can think of two options:

1) Use SessionId

 

 

 

 

if(user.sessionId!=user.getLocal('lastSessionId')) { user.setLocal('lastSessionId', user.sessionId); //Pseudo Code } else{ //Pseudo Code }

 

 

 

 

 2) Use user.isNewSession

   

 

 

 

if(user.isNewSession){ //Pseudo Code } else{ //Pseudo Code }

 

 

 

 

3 replies

nnakirikanti
Community Advisor
nnakirikantiCommunity AdvisorAccepted solution
Community Advisor
April 22, 2023

 You can reset at the start of new session, I can think of two options:

1) Use SessionId

 

 

 

 

if(user.sessionId!=user.getLocal('lastSessionId')) { user.setLocal('lastSessionId', user.sessionId); //Pseudo Code } else{ //Pseudo Code }

 

 

 

 

 2) Use user.isNewSession

   

 

 

 

if(user.isNewSession){ //Pseudo Code } else{ //Pseudo Code }

 

 

 

 

Level 2
April 25, 2023

Thank you, @nnakirikanti ,
The first method was effective, and I utilized it successfully.


However, when I attempted the second approach, it did not record a value of  "0"(on new session), any idea?
My second approach code:

 

 

var journeyPage = user.get("journeyDrop"); if (profile.isNewSession) { journeyPage = 0; } else if (page.url.indexOf("https://example.com/form.html") > -1) { journeyPage = 1; } else if (page.url.indexOf("https://example.com/plans.html") > -1) { journeyPage = 2; } else if (page.url.indexOf("https://example.com/success.html") > -1) { journeyPage = 3; } return journeyPage;

 

 

 

 

 

nnakirikanti
Community Advisor
Community Advisor
April 25, 2023

my bad use "user.isNewSession"

Level 2
April 25, 2023

Cool, It's fine now. Can you just correct("profile.isNewSession" to "user.isNewSession") this in comment (i.e, marked as correct reply).
Thank you once again for your response.