Highlighted

I am using the OpinionLab Invite feature and want to record the number of times the invite is displayed. I believe I have two options to accomplish this 1 modify tag temple 2 use split segmentation extension. What is recommended?

Silver Contributor
Silver Contributor
Opinionlab invite use the following javascript extension window.oo_invite = new OOo.Invitation({ /* REQUIRED - Asset identification */ pathToAssets: '/olab/', //Path to OpinionLab assets /* OPTIONAL - Configuration */ responseRate: 50, //Percentage of users who will receive the invitation repromptTime: 7776000, //90 days in seconds where responseRate is set to the percentage of user who receive the invitation. I can go into the tag template and modify the following section to include a call to utag.link if the invite promote executes...I believe j = d.$('oo_launch_prompt'); function y() { var a = d.$('oo_invitation_prompt'); if (a) { var b = d.$('oo_container'); this.showPrompt(b); return } var c = window.XMLHttpRequest ? new XMLHttpRequest() : new window.ActiveXObject("Microsoft.XMLHTTP"), e = this, f = document.createElement('link'), g; c.onreadystatechange = function () { if (c.readyState !== 4) { return } e.showPrompt(c.responseText) }; c.open("GET", this.options.pathToAssets + this.options.promptMarkup, true); c.send(null) utag.link({surveyInvite:olabInvite}); } function z(a, b) { var c = document, e = typeof a === 'string' ? c.createElement('div') : a, f = c.createElement('div'), g, h, i = this.options, j; f.id = 'oo_invitation_overlay'; e.id = 'oo_container'; e.style.visibility = 'hidden'; if (typeof a === 'string') { e.innerHTML = a; c.body.appendChild(e) } e.appendChild(f); j = d.$('oo_launch_prompt'); if (i.companyLogo) { g = new Image(); g.src=i.companyLogo; d.$('oo_company_logo').appendChild(g) } d.addEventListener(j, 'click', b.bind(this), false); if (i.clickCallbacks) { if (typeof i.clickCallbacks.yes === 'function') { d.addEventListener(j, 'click', function () { i.clickCallbacks.yes() }, false) } if (typeof i.clickCallbacks.no === 'function') { d.addEventListener(d.$('oo_no_thanks'), 'click', function () { i.clickCallbacks.no() }, false) } } if (i.neverShowAgainButton) { h = d.$('oo_never_show'); h.style.visibility = 'visible'; d.addEventListener(h, 'click', this.killPrompt.bind(this), false) } if (d.Browser.IE && !window.XMLHttpRequest) { f.style.position = 'absolute'; f.style.width = Math.max(document.documentElement.clientWidth, document.body.offsetWidth) + 'px'; f.style.height = Math.max(document.documentElement.clientHeight, document.body.offsetHeight) + 'px'; e.style.position = 'absolute' } e.style.visibility = 'visible'; e.style.display = 'block'; or I could setup a split segmentation extension and use that to set a cookie. Then create a copy of the olab tag and only load when the cookie value is present. Map the current extension to the new tag linked to the load rule and change the responseRate: to 100%. Then I could simply map the cookie value to an omniture variable to record # of times and people that receive the invite. Which method would be preferred? Is there a better way to do this?
4 REPLIES 4
Highlighted

I am using the OpinionLab Invite feature and want to record the number of times the invite is displayed. I believe I have two options to accomplish this 1 modify tag temple 2 use split segmentation extension. What is recommended?

Tealium Employee
Joe, Is there any way to add the utag reference to the invite modal and then you can just set a page name in the UDO? Just a thought. Jim
Highlighted

I am using the OpinionLab Invite feature and want to record the number of times the invite is displayed. I believe I have two options to accomplish this 1 modify tag temple 2 use split segmentation extension. What is recommended?

Silver Contributor
Silver Contributor
Came up with a working solution. I modified the opinionlab tag template. Immediately following the function that opens the invitation prompt in the tag template I inserted a utag.link call c.open("GET", this.options.pathToAssets + this.options.promptMarkup, true); utag.link({surveyInvite:'olabInvite'}); c.send(null)
Highlighted

I am using the OpinionLab Invite feature and want to record the number of times the invite is displayed. I believe I have two options to accomplish this 1 modify tag temple 2 use split segmentation extension. What is recommended?

Tealium Employee
Thanks Joe. That's good work. I'll see if we can reach out to OpinionLab and find out if they plan to add event listener function for this. I did a quick look at their implementation guides and I didn't see it.
Highlighted

I am using the OpinionLab Invite feature and want to record the number of times the invite is displayed. I believe I have two options to accomplish this 1 modify tag temple 2 use split segmentation extension. What is recommended?

Tealium Employee
Here is an update from OpinionLab.. We donâ t currently have this particular parameter defined as a core part of our library. However, we can work to add it in. In the mean time, your temporary solution should work.