JavaScript SDK 接入指南

客服MM发表于:2016年07月11日 17:10:55更新于:2018年12月18日 10:30:23


最新版本V 2.1.0
更新时间2017-9-18
更新内容

1,新增sdk标签

2,新增自定义sdk标签



JS SDK接入流程

注意:

        在android app自带的webview加载活动盒子的活动页面的时候要设置setDomStorageEnabled(true)允许使用localStorage功能,不然会出现加载白屏现象。




步骤一 : 在活动盒子后台设置应用内活动,拿到KEY。教程:https://huodonghezi.kf5.com/hc/kb/article/203161/

步骤二 : 引入js文件,配置SDK。

// 引入SDK的js文件
<script src="https://emma-sdk.huodonghezi.com/dist/js/emma.js"></script>
<script type='text/javascript'>
   // 配置    
   emma.config({
       // 活动后台申请的key 
       key : 'xsfrw32sf45435435342143212fre12',
       // 是否是测试,默认false
       debug:false,
       // test:默认为false,表示当前操作为正式发布模式,值为true是表示当前操作为测试模式 
       test:false,
       //可选参数,是否接入活动盒子的统计分析,默认为true,不接入设置成false
       statistics:true,
       // 本页面预设用到的活动类型,可不填
       eventList : ['iconSmall','iconBig','banner'],
       //可选参数,jssdk文件所在的域名,一般只在部署在非官方域名下才需要传入该参数
       baseUrl:'' 
  });
</script>


步骤三(icon图标触发类型活动) : 在相应的地方触发活动

<script type='text/javascript'>
  // 触发类型(触发活动)
  emma.push({     
    'type':        'icon',          // 埋点类型,触发或投放(必填)
    'event':       'logged',        // 事件代号(必填)
    'username':    'user_10001',    // 用户账号(必填)   
    'mobile':      '13800013800',   // 手机号码(必填)
    'price':       '100.00',        // 消费金额(可选)
    'nickname':    '活动盒子',       // 昵称(可选)   
    'sex':         '男',            // 性别(可选)
    'province':    '广东省',         // 省份(可选)
    'city':        '广州',           // 城市(可选)
    'extra_params':        {key:value},           // 投放触发条件判断,例如传入{price:100},当price符合后台设置条件,就能成功触发或投放
    'custom_datas':        {test:'这是自定义数据'},           // 用户自定义数据(可选),可以传json对象或者json字符串
    //'getUrl': function(url){ console.log("活动链接:" + url); } // (可选,默认不选)
    });
</script>
步骤三(banner图投放类型活动) : 在相应的地方触发活动
<script type='text/javascript'>
  // 投放类型(投放活动)
  emma.push({     
    'type':        'banner',        // 埋点类型,触发或投放(必填)
    'position_key': 'c0e0260bea',   // 后台生成的位置key(必填)
    'username':    'user_10001',    // 用户账号(必填)   
    'mobile':      '13800013800',   // 手机号码(必填)
    'price':       '100.00',        // 消费金额(可选)
    'nickname':    '活动盒子',       // 昵称(可选)   
    'sex':         '男',            // 性别(可选)
    'province':    '广东省',         // 省份(可选)
    'city':        '广州',           // 城市(可选)
    'extra_params':        {key:value},           // 投放触发条件判断,例如传入{price:100},当price符合后台设置的条件,就能成功触发或投放
    'custom_datas':        {test:'这是自定义数据'},           // 用户自定义数据(可选),可以传json对象或者json字符串
    //'getUrl': function(url){ console.log("活动链接:" + url); } // (可选,默认不选)
    });
</script>
banner广告投放 接入特殊说明:

如果是banner接入,需要在页面插入banner的容器添加一个属性。

如:

<div data-emmaBanner='yourPositionKey' class='anyClass'></div>

这个div是开发人员自己定义样式的,id或者class都是自己根据自己的需求去写,注意要给这个div一个相对或者绝对定位。

重点是要在容器上加一个属性data-emmaBanner

这样就会把我们的banner内容注入到容器里面,这个data-emmaBanner的值,就是你的positionKey。这个positionKey是后台配置banner的时候生成。


步骤四:SDK标签功能使用(可选)

SDK标签值列表规范:SDK标签值列表规范

<script type='text/javascript'>
  // 触发类型(触发活动)
  emma.push({     
    'type':        'icon',          // 埋点类型,触发或投放(必填)
    'event':       'logged',        // 事件代号(必填)
    'username':    'user_10001',    // 用户账号(必填)   
    'mobile':      '13800013800',   // 手机号码(必填)
    'price':       '100.00',        // 消费金额(可选)
    'nickname':    '活动盒子',       // 昵称(可选)   
    'sex':         '男',            // 性别(可选)
    'province':    '广东省',         // 省份(可选)
    'city':        '广州',           // 城市(可选)
    'extra_params':        {key:value},           // 投放触发条件判断,例如传入{price:100},当price大于后台设置的值,就能成功触发或投放
    'custom_datas':        {test:'这是自定义数据'},           // 用户自定义数据(可选),可以传json对象或者json字符串
    //'getUrl': function(url){ console.log("活动链接:" + url); }, // (可选,默认不选)
   
    // 系统自带SDK标签分类
    'age': '1',                           // 年龄段
    'constellation ': '1',                // 星座 
    'education': '1',                     // 学历 
    'salary': '1',                        // 年收入
    'interest': '1',                      // 兴趣
    'industry ': '1',                     // 行业
    'car ': '1',                          // 车辆
    'house ': '1',                        // 住房 
    'marital ': '1',                      // 婚姻状况
    'children ': '1',                     // 子女状况
    'online_shop ': '1',                  // 网购行为
    'risk_sensitivity ': '1',             // 风险敏感度
    'price_sensitivity ': '1',            // 价格敏感度
    'category_preferences ': '1',         // 品类偏好
    'shopping_times ': '1',               // 每月购物频次
    'shopping_time_preference': '12:59',  // 购物时间偏好
    'max_price': '100.00',                // 单次购物最高金额
    
    // 自定义SDK标签分类与标签值(二者必须同时存在)
    'defined_category': '班级',            // 自定义标签分类
    'defined_tag': '学生'                  // 自定义标签
    
    // 同时定义多个标签(格式必须为json字符串,键名为标签分类,键值为标签)
    'defined_tags': "{\"手机品牌\":\"华为\",\"手机型号\":\"Note10\"}"
  });
</script>


参数说明:

参数名必选类型说明
keystring应用秘钥
debugstring是否调试模式
eventListarray回调页面需要用到的组件
eventList的配置参数值的描述


iconSmallstring小图标形式
iconBigstring大图标形式
bannerstringbanner形式
参数名                    必选                   类型说明
活动触发 icon
                          数据交互参数值的描述
typestring触发类型(icon)
eventstring

事件代号 :

logged(登录成功)

registered(注册成功)

purchase_success(付款成功)
或自定义行为代号

usernamestring用户账号
mobilestring手机号码
nicknamestring昵称
sexstring性别
pricestring消费金额
citystring城市
参数名必选类型说明
广告触发 banner

数据交互参数值的描述
typestring触发类型(banner)
position_keystringbanner类型必须字段,位置key
usernamestring用户账号
mobilestring手机号码
nicknamestring昵称
sexstring性别
pricestring消费金额
citystring城市




相关问题



001596eff0df37be8166197eb06c1cd