写点什么

明道云对接小鹅通,沉淀内容付费平台数据

作者:明道云
  • 2021 年 12 月 17 日
  • 本文字数:2420 字

    阅读完需:约 8 分钟

明道云对接小鹅通,沉淀内容付费平台数据

如今,无论是 toB 还是 toC 公司都离不开在微信生态里做内容营销。传统的微信公众号、服务号都是最基础的微信营销平台,而更前沿的微信营销策略则要丰富音频、视频、直播等内容,甚至做到内容直接变现。

今天展示的是明道云与小鹅通的对接——一套全功能的内容付费工具,为商家提供了完整的付费内容营销解决方案。小鹅通提供了音频、视频、图文等多样化的内容付费支持,付费订阅、会员体系、渠道推广、用户运维、数据分析等功能模块。

利用小鹅通工具,企业可以快速、低成本地搭建付费频道,引导粉丝成为付费订阅用户。通俗地说,小鹅通是一款集品牌营销、知识产品交付、用户管理和商业变现为一体的平台。

接入步骤

1.开通小鹅通应用和 API 权限 ,具体流程可参考下图。

2.开通好权限后,登录(「小鹅通店铺管理台」- 「营销中心」- 「API 自主开发」- 「云服务控制台」)获取应用信息,配置 IP 白名单。

3.确认需要对接的 API ,本文案例里用到的 API 如下:

  • baseUrl {baseUrl})

  • Token 获取接口 {baseUrl}/token

  • 批量获取用户信息 {baseUrl}/xe.user.batch.get/1.0.0

  • 获取用户详情 {baseUrl}/xe.user.info.get/1.0.0

  • 课程列表 {baseUrl}/xe.resource.list.get/1.0.0

  • 订单列表 {baseUrl}/xe.order.list.get/1.0.1

  • 订单详情 {baseUrl}/xe.order.detail/1.0.0

  • 商品详情 {baseUrl}/xe.goods.detail.get/3.0.0

  • 商品有效期 {baseUrl}/xe.resource.purchase.get/1.0.0

  • 采集信息 {baseUrl}/xe.information.user.result.get/1.0.0

正式配置

1.配置明道云应用里的表单,效果如图。

2.设置基础数据同步的工作流,基础数据可以是用户、商品、专栏。注意:基础数据同步后,以后就不用再次同步了;后期每次只需同步对应的课程即可。

以下以“用户获取”的数据同步为例,展示代码块。

var fetch = require('node-fetch'); var params = JSON.parse(input.realParams); var url=input.url; params.access_token=input.token; async function getAll(data){ const res = await fetch(url,{      	method:"POST",       	headers: { "Content-Type": "application/json" },         body:JSON.stringify(data) }).then(function(response){ return  response.json(); }).catch(function(err){ return {"code":102,"error":"Fetch错误:"+err}; }); const result = await   res; return result;} var result=await getAll(params);var hasnew=false;if(result.code=="0"){   hasnew=result.data.list.length>0} output={result:result,url:url,hasnew:hasnew}
复制代码

3.下一步是同步订单数据。用户在小鹅通下单前是需要用户提交个人信息的,比如姓名、手机、职位、公司等。我们使用子流程逐条处理:先检索用户记录是否已存在明道云数据表里,若存在则更新;不存在就新建用户记录。流程配置图如下图,更多数据更新的代码块见下方。


//订单列表var fetch = require('node-fetch');var params = JSON.parse(input.realParams); var url=input.url; params.access_token=input.token; params.page_size=50 params.order_by="updated_at:asc"; var btime=new Date(params.begin_time); var etime=new Date(params.end_time+':59'); var loctime=3600*8; params.begin_time=((btime.getTime()/1000)-loctime).toString() params.end_time=((etime.getTime()/1000)-loctime).toString() async function getAll(data){ const res = await fetch(url,{     method:"POST",     headers:  {  "Content-Type": "application/json"  }, 	body:JSON.stringify(data)  }).then(function(response){  if(response.ok){ return  response.json(); }else{ return {"code":-1,"result_msg":response} }  }).catch(function(err){ return {"code":102,"error":"Fetch错误:"+err}; }); const result = await   res; return result;}var result=await getAll(params);var hasnext=false; var hasnew=false; var lasttime=''if(result.code=="0"){   hasnew=result.data.list.length>0hasnext=(result.data.total>(parseInt(params.page_index)*parseInt(params.page_size)))  if(hasnew){lasttime=result.data.list[result.data.list.length-1]["pay_time"];   lasttime=(lasttime==null?'':lasttime.replace(/-/g,'').replace(/ /g,'').replace(/:/g,''))  } } output={lasttime:lasttime,result:result,url:url,hasnew:hasnew,hasnext:hasnext,params:params,pstr:JSON.stringify(params)}
//采集信息获取var fetch = require('node-fetch');var params = {}; var url=input.url; params.access_token=input.token; params.user_id=input.userid; params.resource_id=input.resource_id; params.page=1; params.page_size=50; async function getAll(data){ const res = await fetch(url,{ method:"POST", headers: { "Content-Type": "application/json" }, body:JSON.stringify(data) }).then(function(response){ return response.json(); }).catch(function(err){ return {"code":102,"error":"Fetch错误:"+err}; }); const result = await res; return result;} var result=await getAll(params); var hasnew=false; var tempresult={} if(result.code=="0"){ hasnew=result.data.collection_list.length>0 var resultemp=result.data.collection_list; if(hasnew){
//var resultemp2= Object.keys(resultemp).sort(function(a,b){ return resultemp[a]["id"]-resultemp[b]["id"];}); tempresult=resultemp[0] } } output={result:result,url:url,hasnew:hasnew,tempresult:tempresult}
复制代码

所有数据都获取成功后,我们结合上篇《明道云对接企查查,一键矫正客户信息》的信息校准方法,进一步维护这个客户数据库。恭喜你,你的明道云数据库又强大了一点。

用户头像

明道云

关注

还未添加个人签名 2020.07.13 加入

明道云(www.mingdao.com)是一个帮助企业快速搭建个性化业务应用的APaaS平台

评论

发布
暂无评论
明道云对接小鹅通,沉淀内容付费平台数据