miniprogram

package
v1.2.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 5, 2020 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrAppIDNotMatch appid不匹配
	ErrAppIDNotMatch = errors.New("app id not match")
	// ErrInvalidBlockSize block size不合法
	ErrInvalidBlockSize = errors.New("invalid block size")
	// ErrInvalidPKCS7Data PKCS7数据不合法
	ErrInvalidPKCS7Data = errors.New("invalid PKCS7 data")
	// ErrInvalidPKCS7Padding 输入padding失败
	ErrInvalidPKCS7Padding = errors.New("invalid padding on input")
)

Functions

This section is empty.

Types

type AnalysisRetainItem

type AnalysisRetainItem struct {
	Key   int `json:"key"`   // 标识,0开始表示当天,1表示1甜后,以此类推
	Value int `json:"value"` // key对应日期的新增用户数/活跃用户数(key=0时)或留存用户数(k>0时)
}

AnalysisRetainItem 留存项结构

type Color

type Color struct {
	R string `json:"r"`
	G string `json:"g"`
	B string `json:"b"`
}

Color QRCode color

type MiniProgram

type MiniProgram struct {
	*context.Context
}

MiniProgram struct extends context

func NewMiniProgram

func NewMiniProgram(context *context.Context) *MiniProgram

NewMiniProgram 实例化小程序接口

func (*MiniProgram) Code2Session

func (wxa *MiniProgram) Code2Session(jsCode string) (result ResCode2Session, err error)

Code2Session 登录凭证校验

func (*MiniProgram) CreateWXAQRCode

func (wxa *MiniProgram) CreateWXAQRCode(coderParams QRCoder) (response []byte, err error)

CreateWXAQRCode 获取小程序二维码,适用于需要的码数量较少的业务场景 文档地址: https://developers.weixin.qq.com/miniprogram/dev/api/createWXAQRCode.html

func (*MiniProgram) Decrypt

func (wxa *MiniProgram) Decrypt(sessionKey, encryptedData, iv string) (*UserInfo, error)

Decrypt 解密数据

func (*MiniProgram) DecryptPhone added in v1.2.1

func (wxa *MiniProgram) DecryptPhone(sessionKey, encryptedData, iv string) (*PhoneInfo, error)

DecryptPhone 解密数据(手机)

func (*MiniProgram) GetAnalysisDailyRetain

func (wxa *MiniProgram) GetAnalysisDailyRetain(beginDate, endDate string) (result ResAnalysisRetain, err error)

GetAnalysisDailyRetain 获取用户访问小程序日留存

func (*MiniProgram) GetAnalysisDailySummary

func (wxa *MiniProgram) GetAnalysisDailySummary(beginDate, endDate string) (result ResAnalysisDailySummary, err error)

GetAnalysisDailySummary 获取用户访问小程序数据概况

func (*MiniProgram) GetAnalysisDailyVisitTrend

func (wxa *MiniProgram) GetAnalysisDailyVisitTrend(beginDate, endDate string) (result ResAnalysisVisitTrend, err error)

GetAnalysisDailyVisitTrend 获取用户访问小程序数据日趋势

func (*MiniProgram) GetAnalysisMonthlyRetain

func (wxa *MiniProgram) GetAnalysisMonthlyRetain(beginDate, endDate string) (result ResAnalysisRetain, err error)

GetAnalysisMonthlyRetain 获取用户访问小程序月留存

func (*MiniProgram) GetAnalysisMonthlyVisitTrend

func (wxa *MiniProgram) GetAnalysisMonthlyVisitTrend(beginDate, endDate string) (result ResAnalysisVisitTrend, err error)

GetAnalysisMonthlyVisitTrend 获取用户访问小程序数据月趋势

func (*MiniProgram) GetAnalysisUserPortrait

func (wxa *MiniProgram) GetAnalysisUserPortrait(beginDate, endDate string) (result ResAnalysisUserPortrait, err error)

GetAnalysisUserPortrait 获取小程序新增或活跃用户的画像分布数据

func (*MiniProgram) GetAnalysisVisitDistribution

func (wxa *MiniProgram) GetAnalysisVisitDistribution(beginDate, endDate string) (result ResAnalysisVisitDistribution, err error)

GetAnalysisVisitDistribution 获取用户小程序访问分布数据

func (*MiniProgram) GetAnalysisVisitPage

func (wxa *MiniProgram) GetAnalysisVisitPage(beginDate, endDate string) (result ResAnalysisVisitPage, err error)

GetAnalysisVisitPage 获取小程序页面访问数据

func (*MiniProgram) GetAnalysisWeeklyRetain

func (wxa *MiniProgram) GetAnalysisWeeklyRetain(beginDate, endDate string) (result ResAnalysisRetain, err error)

GetAnalysisWeeklyRetain 获取用户访问小程序周留存

func (*MiniProgram) GetAnalysisWeeklyVisitTrend

func (wxa *MiniProgram) GetAnalysisWeeklyVisitTrend(beginDate, endDate string) (result ResAnalysisVisitTrend, err error)

GetAnalysisWeeklyVisitTrend 获取用户访问小程序数据周趋势

func (*MiniProgram) GetWXACode

func (wxa *MiniProgram) GetWXACode(coderParams QRCoder) (response []byte, err error)

GetWXACode 获取小程序码,适用于需要的码数量较少的业务场景 文档地址: https://developers.weixin.qq.com/miniprogram/dev/api/getWXACode.html

func (*MiniProgram) GetWXACodeUnlimit

func (wxa *MiniProgram) GetWXACodeUnlimit(coderParams QRCoder) (response []byte, err error)

GetWXACodeUnlimit 获取小程序码,适用于需要的码数量极多的业务场景 文档地址: https://developers.weixin.qq.com/miniprogram/dev/api/getWXACodeUnlimit.html

type PhoneInfo added in v1.2.1

type PhoneInfo struct {
	PhoneNumber     string `json:"phoneNumber"`
	PurePhoneNumber string `json:"purePhoneNumber"`
	CountryCode     string `json:"countryCode"`
	Watermark       struct {
		Timestamp int64  `json:"timestamp"`
		AppID     string `json:"appid"`
	} `json:"watermark"`
}

PhoneInfo 用户手机号

type QRCoder

type QRCoder struct {
	// page 必须是已经发布的小程序存在的页面,根路径前不要填加 /,不能携带参数(参数请放在scene字段里),如果不填写这个字段,默认跳主页面
	Page string `json:"page,omitempty"`
	// path 扫码进入的小程序页面路径
	Path string `json:"path,omitempty"`
	// width 图片宽度
	Width int `json:"width,omitempty"`
	// scene 最大32个可见字符,只支持数字,大小写英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~,其它字符请自行编码为合法字符(因不支持%,中文无法使用 urlencode 处理,请使用其他编码方式)
	Scene string `json:"scene,omitempty"`
	// autoColor 自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调
	AutoColor bool `json:"auto_color,omitempty"`
	// lineColor AutoColor 为 false 时生效,使用 rgb 设置颜色 例如 {"r":"xxx","g":"xxx","b":"xxx"},十进制表示
	LineColor Color `json:"line_color,omitempty"`
	// isHyaline 是否需要透明底色
	IsHyaline bool `json:"is_hyaline,omitempty"`
}

QRCoder 小程序码参数

type ResAnalysisDailySummary

type ResAnalysisDailySummary struct {
	util.CommonError
	List []struct {
		RefDate    string `json:"ref_date"`    // 日期
		VisitTotal int    `json:"visit_total"` // 累计用户数
		SharePV    int    `json:"share_pv"`    // 转发次数
		ShareUV    int    `json:"share_uv"`    // 转发人数
	} `json:"list"`
}

ResAnalysisDailySummary 小程序访问数据概况

type ResAnalysisRetain

type ResAnalysisRetain struct {
	util.CommonError
	RefDate    string               `json:"ref_date"`     // 日期
	VisitUVNew []AnalysisRetainItem `json:"visit_uv_new"` // 新增用户留存
	VisitUV    []AnalysisRetainItem `json:"visit_uv"`     // 活跃用户留存
}

ResAnalysisRetain 小程序留存数据返回

type ResAnalysisUserPortrait

type ResAnalysisUserPortrait struct {
	util.CommonError
	RefDate    string       `json:"ref_date"`     // 日期
	VisitUVNew UserPortrait `json:"visit_uv_new"` // 新用户画像
	VisitUV    UserPortrait `json:"visit_uv"`     // 活跃用户画像
}

ResAnalysisUserPortrait 小程序新增或活跃用户的画像分布数据返回

type ResAnalysisVisitDistribution

type ResAnalysisVisitDistribution struct {
	util.CommonError
	RefDate string                   `json:"ref_date"` // 日期
	List    []VisitDistributionIndex `json:"list"`     // 数据列表
}

ResAnalysisVisitDistribution 小程序访问分布数据返回

type ResAnalysisVisitPage

type ResAnalysisVisitPage struct {
	util.CommonError
	RefDate string          `json:"ref_date"` // 日期
	List    []VisitPageItem `json:"list"`     // 数据列表
}

ResAnalysisVisitPage 访问小程序页面访问数据返回

type ResAnalysisVisitTrend

type ResAnalysisVisitTrend struct {
	util.CommonError
	List []struct {
		RefDate         string  `json:"ref_date"`          // 日期
		SessionCnt      int     `json:"session_cnt"`       // 打开次数
		VisitPV         int     `json:"visit_pv"`          // 访问次数
		VisitUV         int     `json:"visit_uv"`          // 访问人数
		VisitUVNew      int     `json:"visit_uv_new"`      // 新用户数
		StayTimeUV      float64 `json:"stay_time_uv"`      // 人均停留时长
		StayTimeSession float64 `json:"stay_time_session"` // 次均停留时常
		VisitDepth      float64 `json:"visit_depth"`       // 平均访问深度
	} `json:"list"`
}

ResAnalysisVisitTrend 小程序访问数据趋势(日、月、周)

type ResCode2Session

type ResCode2Session struct {
	util.CommonError

	OpenID     string `json:"openid"`      // 用户唯一标识
	SessionKey string `json:"session_key"` // 会话密钥
	UnionID    string `json:"unionid"`     // 用户在开放平台的唯一标识符,在满足UnionID下发条件的情况下会返回
}

ResCode2Session 登录凭证校验的返回结果

type UserInfo

type UserInfo struct {
	OpenID    string `json:"openId"`
	UnionID   string `json:"unionId"`
	NickName  string `json:"nickName"`
	Gender    int    `json:"gender"`
	City      string `json:"city"`
	Province  string `json:"province"`
	Country   string `json:"country"`
	AvatarURL string `json:"avatarUrl"`
	Language  string `json:"language"`
	Watermark struct {
		Timestamp int64  `json:"timestamp"`
		AppID     string `json:"appid"`
	} `json:"watermark"`
}

UserInfo 用户信息

type UserPortrait

type UserPortrait struct {
	Index     int                `json:"index"`     // 分布类型
	Province  []UserPortraitItem `json:"province"`  // 省份,如北京、广东等
	City      []UserPortraitItem `json:"city"`      // 城市,如北京、广州等
	Genders   []UserPortraitItem `json:"genders"`   // 性别,包括男、女、未知
	Platforms []UserPortraitItem `json:"platforms"` // 终端类型,包括iPhone, android, 其他
	Devices   []UserPortraitItem `json:"devices"`   // 机型,如苹果iPhone 6, OPPO R9等
	Ages      []UserPortraitItem `json:"ages"`      // 年龄,包括17岁以下、18-24对等区间
}

UserPortrait 用户画像

type UserPortraitItem

type UserPortraitItem struct {
	ID                  int    `json:"id"`                     // 属性值id
	Name                string `json:"name"`                   // 属性值名称
	AccessSourceVisitUV int    `json:"access_source_visit_uv"` // 该场景访问uv
}

UserPortraitItem 用户画像项目

type VisitDistributionIndex

type VisitDistributionIndex struct {
	Index    string                       `json:"index"`     // 分布类型
	ItemList []VisitDistributionIndexItem `json:"item_list"` // 分布数据列表
}

VisitDistributionIndex 访问分布单分布类型数据

type VisitDistributionIndexItem

type VisitDistributionIndexItem struct {
	Key                 int `json:"key"`                    // 场景id
	Value               int `json:"value"`                  // 该场景id访问pv
	AccessSourceVisitUV int `json:"access_source_visit_uv"` // 该场景id访问uv
}

VisitDistributionIndexItem 访问分数数据结构

type VisitPageItem

type VisitPageItem struct {
	PagePath       string  `json:"page_path"`        // 页面路径
	PageVisitPV    int     `json:"page_visit_pv"`    // 访问次数
	PageVisitUV    int     `json:"page_visit_uv"`    // 访问人数
	PageStaytimePV float64 `json:"page_staytime_pv"` // 次均停留时常
	EntrypagePV    int     `json:"entrypage_pv"`     // 进入页次数
	ExitpagePV     int     `json:"exitpage_pv"`      // 退出页次数
	PageSharePV    int     `json:"page_share_pv"`    // 转发次数
	PageShareUV    int     `json:"page_share_uv"`    // 转发人数
}

VisitPageItem 访问单个页面的数据结构

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL