网站分析:GA监测商务通在线客服的对话数

所属分类: 网站运营 / 建站经验 阅读数: 112
收藏 0 赞 0 分享

一、为什么要使用GA监测商务通等在线客服的对话数?

主要是为了有效的区分对话的来源。本来呢,这个事情应该是在线客服服系统去做。如果想要有效的区分一个流量的来源,需要Landing page URL和referer配合才可以。目前大部分在线客服系统对这方面的支持都不是那么好,而对于GA等网站分析工具,在区分流量来源这方面做的则比较好。 因此,产生了这样的需求,用GA来跟踪在线客服的对话数。

二、跟踪的基本思路

这个的跟踪思路其实与出站点击、文件下载的思路一致,就是在点击对话窗口时运行_trackPageview或者_trackEvent记录下来就 可以了。但是,有一点不同是,对话窗口一般都是通过JS动态输出的,因此,我们需要通过在Dom树上查找到对应的元素,并添加事件监听,当用户点击对话按 钮时,则调用_trackPageview或者_trackEvent记录。

这里比较麻烦的是从Dom树里找到要监听onclick事件的对象。

三、具体的跟踪实例

先介绍一个函数。

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

这个主要是用来搞定浏览器兼容性。

这里有三个参数:

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。

最后,是为这两个按钮添加事件监听,当按钮发生点击事件时,调用对应的函数。

至此,基本的监测代码就完整了。

最后一步就是在GA中定义对应目标了。

四、一些注意事项

1、在线客服系统提供多种咨询图标,不同的咨询图标,需要监听的对象不同,比如,我看到的商务通,有两种图标。

2、商务通系统的加载比较慢,为避免由于商务通加载未成功而造成的错误,可以将这些监测代码作为一个函数,在window onload完成的时候去运行。

3、这种方式只能监测用户是否点击咨询按钮,但是,无法确定是否是有效咨询。

4、如果在线客服使用的是Flash形式,这种方法无效。

五、完整的代码示例

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','/商务通/拒绝']);
}
更多精彩内容其他人还在看

个人网站可以申请经营性ICPP许可证

中国草根站长给工信部的一个建议,中国个人网站应实施ICPP准入制度.
收藏 0 赞 0 分享

虚拟主机基础知识全接触 新手必备知识

虚拟主机,是在网络服务器上划分出一定的磁盘空间供用户放置站点、应用组件等,提供必要的站点功能与数据存放、传输功能。
收藏 0 赞 0 分享

网络编辑应该如何突破职业发展瓶颈 推荐

网络编辑突破职业发展瓶颈的几点准备,让你更具价值。
收藏 0 赞 0 分享

如何降低网站跳出率 网站运营分析

跳出率必须分开分析,因为主要有四种不同的用户来源:低价值的引荐、其他网站的直接链接、搜索引擎和忠实的用户。
收藏 0 赞 0 分享

对即将上线的奇艺视频网站的思考

百度旗下视频公司近日公布了“奇艺”这一中文名称及域名,并透露,“奇艺”将于3月份上线。
收藏 0 赞 0 分享

网站功能不同设计服务公司的报价自然不同

首先,网站功能不同价格肯定也不同,复杂的价格自然很高,简单的自然就低。
收藏 0 赞 0 分享

电子商务平台服务的核心价值

网站运营:电子商务平台服务的核心价值.
收藏 0 赞 0 分享

不同公司网页设计报价不同的原因分析

根据不同地区的经济水平和实际的行业状况,这些通用性的准则不一定都能发挥效用,但是仍然可以使我们保持清晰的头脑,在价格因素日趋透明的情况下保证自己的利益。
收藏 0 赞 0 分享

提高Alexa排名的20种方法小结

操纵与提高Alexa排名的方法总结.
收藏 0 赞 0 分享

大型网站建站要考虑数据库压力和服务器负载

所谓大型网站就是访问量与流量都很大的一些网站,因此在建站初期就要考虑好当流量达到某一级别是是否可以支撑网站继续正常运营下去。
收藏 0 赞 0 分享
查看更多