云眼AB测试Web接口使用手册

1.Data对象

Data对象中记录了所有关于AB测试的信息:配置信息、优化方案运转情况、当前用户信息等。开发者可以读取这些信息,利用这些信息满足一些特殊的需求。

1.1.优化方案

window[‘eyeofcloud’].data.experiments

给出该应用所有的优化方案相关信息,包含各版本号、激活方式、全局js代码、全局css属性等。

window[‘eyeofcloud’].data.experiments[experimentid].code

给出优化方案的全局js代码,这个代码在该优化方案的所有版本上都会执行。

window[‘eyeofcloud’].data.experiments[experimentid].manual

给出一个布尔值,说明该优化方案是否是手动激活的。

window[‘eyeofcloud’].data.experiments[experimentid].name

给出优化方案的名称。

window[‘eyeofcloud’].data.experiments[experimentid].variation_ids

给出一个数组,该数组含有该优化方案下所有版本的版本号。

1.2.所有状态

window[‘eyeofcloud’].data.state

给出优化方案当前的一些状态,如激活的实验、选中的版本号等。

window[‘eyeofcloud’].data.state.activeExperiments

给出一个数组,该数组包含所有已经激活的实验id。

window[‘eyeofcloud’].data.state.activeExperiments

给出一个数组,该数组包含所有已经激活的实验id。

window[‘eyeofcloud’].data.state.redirectExperiment

当优化方案版本中含有重定向时,可以在重定向后的页面中读取改值,其中记录版本相关信息,包括实验id、版本号、referrer。

window[‘eyeofcloud’].data.state.variationIdsMap

给出版本的抽签结果,是一个从实验id到版本号的映射表。只要一个实验曾经激活过并选中某个版本,那么它也会被记录到该映射表中。对于一个实验来说,一旦版本抽签确定就不会改变(除非清除cookie)。

window[‘eyeofcloud’].data.state.variationNamesMap

给出版本抽签的结果,是一个实验id到版本名称的映射表。其他同上。

1.3.版本

window[‘eyeofcloud’].data.variations

给出Web端所有优化方案的所有版本信息。

window[‘eyeofcloud’].data.variations[variationId].name

读取特定版本的名称。

window[‘eyeofcloud’].data.variations[variationId].code

读取特定版本的js代码。

1.4.访客

window[‘eyeofcloud’].data.visitor

给出当前访客的所有信息。

window[‘eyeofcloud’].data.visitor.audiences

给出一个映射表,键是受众id,值是一个布尔值,来表明该访客是否处于该受众中。该应用Web端下所有的受众(不包括未被使用的)都会被列出。

window[‘eyeofcloud’].data.visitor.browser

给出当前访客使用的浏览器。

window[‘eyeofcloud’].data.visitor.location

window[‘eyeofcloud’].data.visitor.location.city

window[‘eyeofcloud’].data.visitor.location.region

window[‘eyeofcloud’].data.visitor.location.country

给出当前访客的地理位置信息,这些地理位置信息包括了:城市、地区、国家。

window[‘eyeofcloud’].data.visitor.referrer

给出当前访客的跳转来源。

 

2.可调用的方法

云眼AB测试系统提供多种可调用的方法,这些方法提供了强大的功能来满足用户多样的需求。我们提供两种调用的方式:js代码、url参数。

在URL中加入对应的参数:http://www.example.com/test.html?eyeofcloud_opt_out=true。当用户访问这个URL的时候,optOut方法就会被调用,使得这次访问将不会被记录。只有不带参数的方法才能这样调用。

在网页中插入下面这些js代码也可以执行对应的方法。

window[‘eyeofcloud‘] = window[‘eyeofcloud’] || [];

window[‘eyeofcloud’].push([‘optOut‘]);

2.1.手动激活

window[‘eyeofcloud’].push([‘activate‘]);

启动所有手动激活的优化方案。优化方案在激活之后依旧会检查受众是否会满足条件,只有满足条件的优化方案才会被激活。

window[‘eyeofcloud’].push([‘activate‘, experimentId]);

启动指定的手动激活的优化方案。

2.2.受众控制

window[‘eyeofcloud’].push([‘addToAudience‘, audienceId]);

将当前访客强制添加到id为audienceId的受众中。系统会认为访客和该受众匹配。

window[‘eyeofcloud’].push([‘removeFromAudience’, audienceId]);

将当前访客强制从id为andienceId的受众中移除。系统会认为访客和该受众不匹配。

window[‘eyeofcloud’].push([‘removeFromAudiences‘]);

将当前访客强制从所有受众中移除。系统会认为访客和所有受众都不匹配。

2.3.版本抽签

window[‘eyeofcloud’].push([‘bucketVisitor‘, experimentId, variationId, true]);

强制为优化方案选择对应的版本,需要注意的是这种选择版本方式是不会检查受众的。

window[‘eyeofcloud’].push([‘bucketVisitor‘, experimentId, variationIndex, true]);

使用variation在优化方案中的序号调用,效果同上。variationIndex是从0开始计数的。

2.4.推迟pageview

window[‘eyeofcloud’].push([‘delayPageViewTracking‘, 1000]);

pageview发送的时间将会被推迟1000ms。

2.5.关闭云眼系统

window[‘eyeofcloud’].push([‘disable‘]);

彻底关闭云眼相关的功能,必须在云眼SDK运转之前执行该代码。

window[‘eyeofcloud’].push([‘disable, tracking‘]);

关闭云眼的数据收集。

2.6.打开日志

window[‘eyeofcloud’].push([‘log‘]);

浏览器将会在console中输出日志,可以帮助调试。

2.7.目标跟踪

window[‘eyeofcloud’].push([‘trackEvent‘, ‘goal-name‘]);

触发目标。

免费AB测试,注册即可开通使用! 立即开通