ime); if(currentTime == p25){ console.log("p25 reached"); window.adobeDataLayer.push({ "ruleName": "TMG Youtube Video", "event":"video25", "_tmg":{ "eventContainer":{ "video25":1 }, "dimensionContainer": { "videoName": mediaName, "mediaContentType": "video", "videoLength": mediaLength } } }) xdmData = _satellite.getVar("ACDL Computed State"); alloy("sendEvent", { "xdm": xdmData }) _satellite.getVar("Reset Adobe Client Data Layer"); adobeDataLayer[0]._tmg.eventContainer = {}; setTimeout( function(){ videoMilestones(p25, p50, p75, mediaName, mediaLength, e) } , 1000) }else if(currentTime == p50){ console.log("p50 reached"); window.adobeDataLayer.push({ "ruleName": "TMG Youtube Video", "event":"video50", "_tmg":{ "eventContainer":{ "video50":1 }, "dimensionContainer": { "videoName": mediaName, "mediaContentType": "video", "videoLength": mediaLength } } }) xdmData = _satellite.getVar("ACDL Computed State"); alloy("sendEvent", { "xdm": xdmData }) _satellite.getVar("Reset Adobe Client Data Layer"); adobeDataLayer[0]._tmg.eventContainer = {}; setTimeout( function(){ videoMilestones(p25, p50, p75, mediaName, mediaLength, e) } , 1000) }else if(currentTime == p75){ console.log("p75 reached"); window.adobeDataLayer.push({ "ruleName": "TMG Youtube Video", "event":"video75", "_tmg":{ "eventContainer":{ "video75":1 }, "dimensionContainer": { "videoName": mediaName, "mediaContentType": "video", "videoLength": mediaLength } } }) xdmData = _satellite.getVar("ACDL Computed State"); alloy("sendEvent", { "xdm": xdmData }) _satellite.getVar("Reset Adobe Client Data Layer"); adobeDataLayer[0]._tmg.eventContainer = {}; setTimeout( function(){ videoMilestones(p25, p50, p75, mediaName, mediaLength, e) }, 1000) }else if(currentTime == mediaLength){ console.log("p100 reached"); console.log("loop ends"); }else{ //_satellite.getVar("Reset Adobe Client Data Layer"); //adobeDataLayer[0]._tmg.eventContainer = {}; setTimeout( function(){ videoMilestones(p25, p50, p75, mediaName, mediaLength, e) }, 1000) } } tmg.pubsub.subscribe({ topic : 'tmg.youtube.ready', func : function(){ console.log("youtubeVideoPlayerReady event YOUTUBE"); playerArray = []; videoArray = []; var videoList = document.querySelectorAll('iframe[src*="youtube.com/embed/"]'); for (var i = 0; i < videoList.length; i++) { var iframe = videoList[i]; var iframeSrc = iframe.getAttribute('src'); var playerID = iframe.getAttribute('id'); videoArray[i] = {}; videoArray[i].id = playerID; videoArray[i].pid = playerID; } }, runIfAlreadyPublished: true }); function onPlayerStateChange(e) { console.log("player state function triggered YOUTUBE"); console.log("onPlayerStateChange event youtube"); var mediaName = 'YouTube|' + e.target.getVideoData().video_id + '|' + e.target.getVideoData().title.replace(/\|/g,';'); var mediaLength = Math.floor(e.target.getDuration()); var mediaOffset = Math.floor(e.target.getCurrentTime()); var mediaPlayerName = "Youtube"; var playerMilestone25 = Math.floor((mediaLength/100)*25); var playerMilestone50 = Math.floor((mediaLength/100)*50); var playerMilestone75 = Math.floor((mediaLength/100)*75); if (e.data == 1) { console.log("edata1 YOUTUBE"); console.log("AA: youtube video playing"); //playing if (mediaOffset === 0) { //s.Media.open(mediaName, mediaLength, mediaPlayerName); //s.Media.play(mediaName, mediaOffset); //event70 //v70 video name //c70 video name //v71 video segment //v72 media content type //v46 video length window.adobeDataLayer.push({ "ruleName": "TMG Youtube Video", "event":"videoPlay", "_tmg":{ "eventContainer":{ "videoPlay":1 }, "dimensionContainer": { "videoName": mediaName, "mediaContentType": "video", "videoLength": mediaLength } } }) xdmData = _satellite.getVar("ACDL Computed State"); alloy("sendEvent", { "xdm": xdmData }) _satellite.getVar("Reset Adobe Client Data Layer"); adobeDataLayer[0]._tmg.eventContainer = {}; videoMilestones(playerMilestone25, playerMilestone50, playerMilestone75, mediaName, mediaLength, e.target); } else { //s.Media.play(mediaName, mediaOffset); window.adobeDataLayer.push({ "ruleName": "TMG Youtube Video", "event":"videoPlay", "_tmg":{ "eventContainer":{ "videoPlay":1 }, "dimensionContainer": { "videoName": mediaName, "mediaContentType": "video", "videoLength": mediaLength } } }) xdmData = _satellite.getVar("ACDL Computed State"); alloy("sendEvent", { "xdm": xdmData }) _satellite.getVar("Reset Adobe Client Data Layer"); adobeDataLayer[0]._tmg.eventContainer = {}; //setTimeout( function(){ videoMilestones(playerMilestone25, playerMilestone50, playerMilestone75, mediaName, mediaLength, e.target); //}, 1000) } } if (e.data == 2) { console.log("AA: youtube video paused"); //paused //s.Media.stop(mediaName, mediaOffset); //event69 window.adobeDataLayer.push({ "ruleName": "TMG Youtube Video", "event":"videoPaused", "_tmg":{ "eventContainer":{ "videoPaused":1 }, "dimensionContainer": { "videoName": mediaName, "mediaContentType": "video", "videoLength": mediaLength } } }) xdmData = _satellite.getVar("ACDL Computed State"); alloy("sendEvent", { "xdm": xdmData }) _satellite.getVar("Reset Adobe Client Data Layer"); adobeDataLayer[0]._tmg.eventContainer = {}; } if (e.data == 3) { console.log("AA: youtube video buffering"); //buffering //s.Media.stop(mediaName, mediaOffset); } if (e.data === 0) { console.log("AA: youtube video ended"); //ended //s.Media.stop(mediaName, mediaOffset); //s.Media.close(mediaName); window.adobeDataLayer.push({ "ruleName": "TMG Youtube Video", "event":"videoComplete", "_tmg":{ "eventContainer":{ "videoComplete":1 }, "dimensionContainer": { "videoName": mediaName, "mediaContentType": "video", "videoLength": mediaLength } } }) xdmData = _satellite.getVar("ACDL Computed State"); alloy("sendEvent", { "xdm": xdmData }) _satellite.getVar("Reset Adobe Client Data Layer"); adobeDataLayer[0]._tmg.eventContainer = {}; mediaOffset = 0; } } console.log("web sdk before youtube topic applied"); tmg.pubsub.publish({topic: 'tmg.dtm.youtube'}); }