我在使用Omniture手動跟蹤視頻時遇到問題。我已經包括了s.loadModule("Media");
和以下配置:JS Omniture視頻跟蹤/ Brightcove
/*Configure Media Module Functions */
s.Media.autoTrack= false;
s.Media.trackMilestones="50";
s.Media.playerName="brightcove";
s.Media.segmentByMilestones = true;
s.Media.trackUsingContextData = true;
s.Media.trackVars="events,prop9,eVar9,prop11,eVar11,prop12,eVar12,prop13,eVar13, prop14, eVar14, prop32, eVar34";
s.Media.trackEvents="event8,event11,event12";
s.Media.contextDataMapping = {
"a.media.name":"eVar2,prop2",
"a.media.segment":"eVar3",
"a.contentType":"eVar1",
"a.media.timePlayed":"event3",
"a.media.view":"event11",
"a.media.segmentView":"event8",
"a.media.complete":"event12",
"a.media.milestones":{
50:"event8"
}
}
我使用Brightcove的SmartPlayer API,以斷火Omniture的要求onMediaBegin,onMediaComplete和手動爲50%回放里程碑onMediaProgress檢查。
onMediaBeginFired : function(evt) {
s.Media.open('my_vid',320,'brightcove');
s.Media.play('my_vid',0);
}
我得到後續JS錯誤:
Uncaught TypeError: Object #<Object> has no method 'open'
我可以看到在控制檯s.Media對象,但我不知道爲什麼s.Media對象不具有任何的我需要的方法,'打開','播放','關閉'?
我仍然可以進行s.t()或s.tl()調用,所以我知道它與媒體模塊有關,或者我在配置過程中丟失了某些東西。
注意:我們不再需要使用Brightcove Flash插件,因爲它不會在移動設備上進行報告。
我不知道你可以回答你自己的問題,並將其作爲有效答案。謝謝你的提示! –
您可以詳細說明競賽狀況是什麼?我們有類似的問題。 – Christian
@Christian我不再在那個項目上工作,但我認爲它與requirejs以及什麼時候「準備好」有關。如果我沒有記錯的話,我在播放器被渲染的頁面上有一些代碼,而另一些代碼則在另一個requirejs模塊中。這就是我所能記得的一切,對不起。 – pjdicke