Expand my Community achievements bar.

SOLVED

User to see experience in new visit not in same visit

Avatar

Level 2

Hi,

I want to implement AB test using VEC.

 

Audience criteria ; If user visit xyz.com site then in the site if user visits xyz.com/mobile.html page. Then user should be able see the mobile banner on home page(xyz.com) in the next visit . User should not be able to see the mobile banner in the same visit. I have tried user.isNewSession but it not working.

 

How can I built audience using above condition

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

hi @avez  - gave this scenario some thought and came up with a possible solution:

1. Create a profile script which captures the Target-session id whenever xyz.com/mobile.html is visited. Let's call it mobilepage_sessionid. This can be done by using user.sessionId in the profile script. 
if (page.url != "") {
var url = "" + page.url.toLowerCase();
if (url.indexOf("xyz.com/mobile.html") >-1 {
return user.sessionId
}
}

2. Create another profile script which captures the session-id when home page is visited. In this one, compare the current session-id with the mobilepage_sessionid and return true when both session-ids are different.  For the same visit - this profile script will return false otherwise true. Use this profile script as your audience.

var a = user.get('mobilepage_sessionid');
if(a && a !== user.sessionId){
return true; // different visit after mobile.html page was visited
}

else {

return false; // same visit

}

View solution in original post

4 Replies

Avatar

Community Advisor

Is the above scenario on one device or multiple? If just one device, then I think you can create two activities with the same mbox (location) name with differing priority. The lower priority (1) could handle the initial request and you could have it immediately convert (success event). On the goals tab, you can set up an activity to prevent re-entry upon conversion which could allow them to qualify for the other activity on the next visit. 

 

Another idea could be to have Target return a token back to your web app and then use that token to call Target and set a profile script variable. Then use that profile script to prevent entry into the first activity. 

 

If this is across device, you will need to leverage some first party id (mbox3rdpartyid) concept to achieve the desired result.

Avatar

Community Advisor

write a profile script , so that when ever user comes for the first time

add an attribute abc=true

 

then on whenever user visits the site , if the attribute is present then show the banner

 

 

Avatar

Correct answer by
Community Advisor

hi @avez  - gave this scenario some thought and came up with a possible solution:

1. Create a profile script which captures the Target-session id whenever xyz.com/mobile.html is visited. Let's call it mobilepage_sessionid. This can be done by using user.sessionId in the profile script. 
if (page.url != "") {
var url = "" + page.url.toLowerCase();
if (url.indexOf("xyz.com/mobile.html") >-1 {
return user.sessionId
}
}

2. Create another profile script which captures the session-id when home page is visited. In this one, compare the current session-id with the mobilepage_sessionid and return true when both session-ids are different.  For the same visit - this profile script will return false otherwise true. Use this profile script as your audience.

var a = user.get('mobilepage_sessionid');
if(a && a !== user.sessionId){
return true; // different visit after mobile.html page was visited
}

else {

return false; // same visit

}