网站剖析:GA监测商务通线上客服的会话数

2021-02-24 04:05 admin

1、为何要应用GA监测商务通等线上客服的会话数?

关键是以便合理的区别会话的来源于。原本呢,这个事儿应当是线上客服服系统软件去做。假如要想合理的区别1个总流量的来源于,必须Landing page URL和referer相互配合才能够。现阶段绝大多数线上客服系统软件对这层面的适用都并不是那末好,而针对GA等网站剖析专用工具,在区别总流量来源于这层面做的则较为好。 因而,造成了这样的要求,用GA来追踪线上客服的会话数。

2、追踪的基础思路

这个的追踪思路实际上与出站点一下、文档免费下载的思路1致,便是在点一下会话对话框时运作_trackPageview或_trackEvent纪录下来就 能够了。可是,有1点不一样是,会话对话框1般全是根据JS动态性輸出的,因而,大家必须根据在Dom树上搜索到对应的元素,并加上恶性事件监视,当客户点一下会话按 钮时,则启用_trackPageview或_trackEvent纪录。

这里较为不便的是从Dom树里寻找要监视onclick恶性事件的目标。

3、实际的追踪案例

先详细介绍1个涵数。

function startListening (obj,evnt,func) {
  if (obj.addEventListener) {
    obj.addEventListener(evnt,func,false);
  } else if (obj.attachEvent) {
    obj.attachEvent("on" + evnt,func);
  }
}

这个关键是用来搞定访问器适配性。

这里有3个主要参数:

obj:要加上恶性事件监视的目标。

event:要监视的恶性事件,不必须写on。

func:捕获到恶性事件后要运作的涵数。这里要留意的是,func只必须写涵数名,而不必须(),其含意是当对应恶性事件产生了,运作涵数,而并不是涵数的結果。

这个涵数也有很多主要用途,例如监测网页页面内全部连接的点一下状况,追踪出站连接这些。

接下来最先是寻找要监视的恶性事件目标。

最先,我用firebug查询輸出的会话对话框,寻找这两个照片所属的部位。

<table id=”LR_Tb4″ align=”center” cellspacing=”0″ cellpadding=”0″ style=”WIDTH: 400px; HEIGHT: 104px;border:0;margin:0; padding:0;”>,键入这个table下面的两个a标识。
var table1=document.getElementById("LR_Tb4")
var links=table1.getElementsByTagName("a")

根据ID和tagName大家精准定位了这两个a标识。

接下来便是界定要运作的涵数。

function textacc(){
  alert("接纳")
  _gaq.push(['_trackPageview','/商务通/接纳']);
}
function textre(){
  alert("回绝")
  _gaq.push(['_trackPageview','/商务通/回绝']);
}

以便检测,我加上了两个alert。

最终,是为这两个按钮加上恶性事件监视,当按钮产生点一下恶性事件时,启用对应的涵数。

至此,基础的监测编码就详细了。

最终1步便是在GA中界定对应总体目标了。

4、1些留意事项

1、线上客服系统软件出示多种多样资询标志,不一样的资询标志,必须监视的目标不一样,例如,我看到的商务通,有两种标志。

2、商务通系统软件的载入较为慢,为防止因为商务通载入未取得成功而导致的不正确,能够将这些监测编码做为1个涵数,在window onload进行的情况下去运作。

3、这类方法只能监测客户是不是点一下资询按钮,可是,没法明确是不是是合理资询。

4、假如线上客服应用的是Flash方式,这类方式失效。

5、详细的编码示例

function trackChat(){
  if (document.getElementById("LR_Tb4")){
    var table1=document.getElementById("LR_Tb4")
    var links=table1.getElementsByTagName("a")
    startListening(links[0],"click",textacc);
    startListening(links[1],"click",textre);
  }
  if (document.getElementById("LRfloater0")){
    var _divchat=document.getElementById("LRfloater0")
    var _imgchat=_divchat.getElementsByTagName("img")
    startListening(_imgchat[1],"click",textacc);
  }
}
startListening(window,"load",trackChat);
function startListening (obj,evnt,func) {
  if (obj.addEventListener) {
    obj.addEventListener(evnt,func,false);
  } else if (obj.attachEvent) {
    obj.attachEvent("on" + evnt,func);
  }
}
function textacc(){
  _gaq.push(['_trackPageview','/商务通/接纳']);
}
function textre(){
  _gaq.push(['_trackPageview','/商务通/回绝']);
}