1.1.8 • Published 2 years ago

shumou-sdk-mini v1.1.8

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

前提准备

在数谋后台,将自己的小程序 appid 绑定在自己的账号下,如果直接使用sdk会初始化失败

小程序请求域名

安装

npm install --save shumou-sdk-mini

# or

yarn add shumou-sdk-mini

API说明及使用

// js
const { shumou } = require('shumou-sdk-mini')

// ts
import { shumou } from 'shumou-sdk-mini'

初始化及字段说明 bashumou.config shumou.init

shumou.config({
    // 此处 `appId` 是必传字段,就是小程序的 `appId`,需要商家提前在数谋后台绑定
    appId: "wx131231231231",
    // 对接小程序的版本
    miniAppVersion: "1.0.0",
    // 用户ID 是否使用 openid 作为唯一键,默认 false
    isUseOpenId: false,
    // 是否支持对分享数据上报
    followShare: false
})

shumou.init()

shumou标示(选用) bashumou.setOpenId

初始化 sdk,系统录入用户身份,这里sdk会默认使用一个随机字符串作为用户的标示ID,也可以使用用户的 openid 作为唯一标示

shumou.config({
    appId: "appId",
    isUseOpenId: true
})

// 一定要在 init() 前设置 openid 值
shumou.setOpenId("openId")

shumou.init()

会员身份 bashumou.setCustomerLoginUserId

为了保证数据统计的准确性,需要用户在登录后调用该方法传入用户的真实编号

shumou.config({
    appId: "appId"
})

// 初始化位置不做要求
shumou.init()

// 一定要在会员登录后将会员标号传入
shumou.setCustomerLoginUserId("userId")

数据上报 bashumou.trackEvent

shumou.trackEvent(eventId, {key,value})

这个上报中,eventId 可以从 sdk 中获取默认的事件名及对应的类型数据

const { DEFAULT_EVENTS_TYPES, DEFAULT_EVENTS } = require('shumou-sdk-mini')

// DEFAULT_EVENTS_TYPES 会约束传递参数的类型
shumou.trackEvent<DEFAULT_EVENTS_TYPES.IShareShop>(DEFAULT_EVENTS.SHOP_SHARE, {shopId: 'a1321312'})

坑位推荐数据获取 bashumou.shumouRecommend

数谋会根据用户上报数据帮助商家分析出推荐商品,可在适当的位置上获取数谋推荐的商品数据供用户选择

shumou.shumouRecommend("SHOP_CART").then(res => goodsList)

api 返回一个 promise ,参数就是位置参数,传入不同的坑位标示,数谋会返回不同的推荐数据

坑位枚举:

export enum SHUMOU_RECOMMEND_ENUM {
    // 购物车
    SHOP_CART = 'SHOP_CART',
    // 商品详情
    GOODS_DETAIL = 'GOODS_DETAIL',
    // 商品列表
    GOODS_LIST = 'GOODS_LIST',
    // 个人中心
    USER_CENTER = 'USER_CENTER',
    // 会员中心
    CUSTOMER_CENTER = 'CUSTOMER_CENTER',
    // 收藏商品
    COLLECT_GOODS = 'COLLECT_GOODS',
    // 支付成功页
    PAY_SUC = 'PAY_SUC',
    // 分类
    GOODS_CATE = 'GOODS_CATE',
    // 魔方
    MAGIC_BOX = 'MAGIC_BOX',
    // 分类页
    CATE_PAGE = 'CATE_PAGE'
}

该枚举可直接从 sdk 导入。

import { SHUMOU_RECOMMEND_ENUM } from 'shumou-mini-sdk'

原生

// app.js 文件

shumou.config({
  appId: "7788482fdsafsafsaf"
})
shumou.init()

// 在任意处上报数据
shumou.trackEvent("shop", {shopId: 'a1321312'})

taro(typescript)

// 在 global.d.ts 文件内添加
// 该声明只为了让 shumou 对象注入到
declare namespace Taro {
  namespace shumou {
    interface ITrackEvent {
      trackEvent<T>(key: string, value: T): void
      setCustomerLoginUserId(userId: string): void
    }
  }
  let shumou: shumou.ITrackEvent
}

// 在 app.ts 中初始化

shumou.config({
  appId: "13123123123123123"
})

shumou.init()

// 由于上面的全局声明,这里可以将shumou对象注入到 Taro 对象下,这样可以在任何地方使用了
Taro.shumou = shumou

// 上报方法 在任意处使用该API上报
Taro.shumou.trackEvent(eventId, {key,value})

关于数谋导购分享参数 shumouCode

shumouCode 为数谋内部加密字符,对接小程序不需要关注,如果要统计导购分享后的点击量成交量这类数据时,就需要这个字段

生成二维码

可以拼接在路径后生成有限次码

pages/home/index?shumouCode=32132135fdsg1321

或者将参数设置在 secen 中生成无限次码

小程序端处理

如果通过其他方式获取到 shumouCode 字段,那么也可以通过如下方式传输,只要在任意路径中携带该参数即可

pages/cart/index?shumouCode=32132135fdsg1321

sdk 会自动截取该参数,即可获取导购信息正确上报数据

主动设置

新增API,可主动设置该字段

Taro.shumou.setCustomerShumouCode(shumouCode);

默认事件名及类型对照表

DEFAULT_EVENTS 对象包含了事件名

DEFAULT_EVENTS_TYPES 事件类型

事件对照表:

事件名事件ID参数类型参数是否追加导购ID
页面浏览记录CURRENT_PAGE默认事件--
分享记录SHARE_PATH_SRC默认事件--
店铺分享DEFAULT_EVENTS.SHOP_SHAREDEFAULT_EVENTS_TYPES.IShopShare{ "parentId": "A321321", "shopId": 'A123321'}
浏览店铺DEFAULT_EVENTS.SHOP_VIEWDEFAULT_EVENTS_TYPES.IShopView{ "parentId": "A321321", "shopId": 'A123321'}
商品分享DEFAULT_EVENTS.GOODS_SHAREDEFAULT_EVENTS_TYPES.IGoodsShare{ "parentId": "A321321", "shopId": 'A123321', "spuId": "33123213", "skuId": ""}
浏览商品DEFAULT_EVENTS.GOODS_VIEWDEFAULT_EVENTS_TYPES.IGoodsView{ "parentId": "A321321", "shopId": 'A123321', "spuId": "424243242", "skuId": "g13213213"}
下单DEFAULT_EVENTS.CREATE_ORDERDEFAULT_EVENTS_TYPES.ICreateOrder{ "parentId": "A321321", "shopId": 'A123321', "tid": "TC3131321"}
店铺收藏DEFAULT_EVENTS.FAVORITE_SHOPDEFAULT_EVENTS_TYPES.IFavoriteShop{ "parentId": "A321321", "shopId": 'A123321'}
加入购物车DEFAULT_EVENTS.ADD_CARTDEFAULT_EVENTS_TYPES.IAddCart{ "parentId": "A321321", "shopId": 'A123321', "skuId": "g12321", "spuId": "123123", "count": 1}
浏览导购分享的商品DEFAULT_EVENTS.GUIDE_GOODS_VIEWDEFAULT_EVENTS_TYPES.IGoodsView{ "parentId": "A321321", "shopId": 'A123321', "spuId": "424243242", "skuId": "g13213213"}
浏览导购分享的营销活动DEFAULT_EVENTS.GUIDE_MC_VIEWDEFAULT_EVENTS_TYPES.IMcShare{ "parentId": "A321321", "shopId": 'A123321', "actId": "mc1312312321321321", "mcType": "COUPON"}
数谋注册引导GUIDE_REGISTER{"parentId": "A321321", "shopId": 'A123321'}

mcType 是营销的类型,COUPON 优惠券,LIMIT_DISCOUNTS 限时折扣

字段说明:

字段名描述
parentId总部编号
shopId门店编号
userId用户会员编号
guideId导购ID
spuId/skuId商品对应ID
tid订单编号

上报字段说明

基础数据,每次上报必传 base:

字段名描述
appId小程序 appid
shumouUserId用户数谋编号
idType用户类型 UUID/OPENID
ts时间戳
sdkVersionsdk 版本
sessionId会话
deviceType设备型号
systemVersion手机系统版本
guideId导购ID
miniAppVersion对接小程序版本
userId会员实际编号

分析数据,是个数组 analytics:

字段名描述
eventId事件名,上文中的事件表中的事件
args上报的数据
eventType事件类型 "DEFAULT_EVENT" / "CUSTOME_EVENT"
ts时间戳
1.1.8

2 years ago

1.1.7

2 years ago

1.1.6

2 years ago

1.1.5

2 years ago

1.1.4

2 years ago

1.1.3

3 years ago

1.1.2

3 years ago

1.0.1-beta-26

3 years ago

1.0.1-beta-27

3 years ago

1.0.1-beta-24

3 years ago

1.0.1-beta-23

3 years ago

1.0.1-beta-21

3 years ago

1.0.1-beta-20

3 years ago

1.0.1-beta-11

3 years ago

1.0.1-beta-12

3 years ago

1.0.1-beta-15

3 years ago

1.0.1-beta-16

3 years ago

1.0.1-beta-13

3 years ago

1.0.1-beta-14

3 years ago

1.0.1-beta-19

3 years ago

1.0.1-beta-17

3 years ago

1.0.1-beta-9

3 years ago

1.0.1-beta-8

3 years ago

1.0.1-beta-7

3 years ago

1.0.1-beta-10

3 years ago

1.0.1-beta-1

3 years ago

1.0.1-beta-5

3 years ago

1.0.1-beta-4

3 years ago

1.0.1-beta-2

3 years ago

1.0.1-beta-6

3 years ago

1.0.13

3 years ago

1.0.11

3 years ago

1.0.12

3 years ago

1.0.10

3 years ago

1.0.9

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago