联系我们 - 广告服务
您的当前位置:主页 > 布局 > API >

模板消息

来源:未知 编辑:admin 时间:2018-02-09
导读: 对于使用过微信的用户来讲模板消息一点也不陌生,最常见的就是通过微信支付后,微信支付推送的支付消息就是模板消息。在小程序中我们也能使用模板消息给用户推送信息。需要注意的是只有微信6.5.2及以上版本能支持模板功能,低于该版本将无法收到模板消息。 1
对于使用过微信的用户来讲模板消息一点也不陌生,最常见的就是通过微信支付后,微信支付推送的支付消息就是模板消息。在小程序中我们也能使用模板消息给用户推送信息。需要注意的是只有微信6.5.2及以上版本能支持模板功能,低于该版本将无法收到模板消息。
1.调用模板消息接口
  发送模板信息需要通过POST方式调用微信后台接口,接口调用可以是前台调用,也可以是后台调用,接口地址为:
https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=ACCESS_TOKEN
post参数如下:
·touser:接收者(用户)的openid,通常是当前使用者的openid,必填项。
·template_id:所需下发的模板消息的id,必填项。
·page:点击模板卡片后的跳转页面,仅限本小程序内的页面。支持带参数,(示例index?foo=bar)。该字段不填则模板无跳转。
·form_id:表单提交场景下,为submit事件带上的formId;支付场景下,为本次支付的prepay_id,必填项。
·data:模板内容,不填则下发空模板,data中keyword对应模板keyword,必填项。
·color:模板内容字体的颜色,不填默认黑色。
·emphasis_keyword:模板需要放大的关键词,不填则默认无放大。
示例代码如下:
{   "touser": "OPENID",     "template_id": "TEMPLATE_ID",    "page": "index",   "form_id": "FORMID",   "data": {     "keyword1": {       "value": "薯片",        "color": "#173177"     },      "keyword2": {       "value": "2015年01月05日 12:30",        "color": "#173177"     }   },   "emphasis_keyword": "keyword1.DATA" }  
接口返回数据:
{"errcode": 0,"errmsg": "ok"}  
返回数据中常见错误码有:
·40037:template_id不正确。
·41028:form_id不正确,或者过期。
·41029:form_id已被使用。
·41030:page不正确。
·45009:接口调用超过限额(目前默认每个帐号日调用限额为100万)。
  调用模板消息时有几个参数非常关键,分别是:access_token(接口url参数),form_id,template_id和data。接下来我们一一分析这些参数。
(1)template_id和data
  template_id是需要调用模板的id,data为当前模板所需要的数据,小程序所有模板都在微信公共平台(https://mp.weixin.qq.com/)->模板消息进行管理,template_id可在模板管理界面中直接复制,如所示。

获取template_id没有模板时可以创建一个新模板,微信定制了多种类型的模板,每个模板可以选取需要填写哪些key值,这些key值会根据请求参数data属性进行填写,选取好后会生成相应的模板如下图所示。

当前模板按上文示例代码请求数据会给用户推送一条物品名称为“薯片”,付款时间为“2015年01月05日12:30”的付款成功通知消息。
(2)form_id
form_id的值由页面<form/>组件submit方法生成,获取时需要将<form/>的report-submit属性值为true,此时点击提交按钮触发submit事件时,可通过参数获取。
示例代码如下:
<form report-submit  bindsubmit="submit">      <button form-type="submit">提交</button> </form> Page( {   submit : function( e ) {     console.log( e.detail.formId );   } } );       当用户完成支付行为时,form_id的值应为统一下单接口返回的prepay_id。
(3)access_token
access_token是全局唯一的接口调用凭证,调用很多接口都需要使用access_token。access_token存储至少需要512个字符空间,获取access_token需要通过get方式调用微信后台接口:
  https://api.weixin.qq.com/cgi-bin/token?
grant_type=client_credential&appid=APPID&secret=APPSECRET
其参数如下:
·grant_type:接口类型,获取access_token时填写client_credential,必填项。
·appid:第三方用户唯一凭证,即小程序appid,可在微信公共平台官网->设置->开发设置中获取,必填项。
·secret:第三方用户唯一凭证密钥,即appsecret,可在微信公共平台官网->设置->开发设置中获取,必填项。
  正常情况下,微信会返回如下JSON数据:
{"access_token": "ACCESS_TOKEN", "expires_in": 7200}
返回数据中expires_in指凭证有效时间,单位秒。由此可看出access_token有效时间为2小时,失效后需要定时刷新,重复刷新将导致上次获取的access_token失效,同时access_token有失效时间而且每天调用接口次数有限制,如果每个服务(或小程序客户端)单独调用接口获取access_token将会导致access_token不一致,产生冲突,导致服务不稳定,所以我们通常利用中控服务器单独维护access_token,系统所有服务都依赖这个服务获取access_token,这样能保证access_token的一致性和有效生命周期,获取access_token方式如下:
·为了保密appsecrect,第三方需要一个access_token获取和刷新的中控服务器。而其他业务逻辑服务器所使用的access_token均来自于该中控服务器,不应该各自去刷新,否则会造成access_token覆盖而影响业务;
·目前access_token的有效期通过返回的expires_in来传达,目前是7200秒之内的值。中控服务器需要根据这个有效时间提前去刷新新access_token。在刷新过程中,中控服务器对外输出的依然是老access_token,此时公众平台后台会保证在刷新短时间内,新老access_token都可用,这保证了第三方业务的平滑过渡;
·access_token的有效时间可能会在未来有调整,所以中控服务器不仅需要内部定时主动刷新,还需要提供被动刷新access_token的接口,这样便于业务服务器在API调用获知access_token已超时的情况下,可以触发access_token的刷新流程。
2.下发条件
调用模板信息需要满足一些相应条件,按类型可将这些条件分为支付和提交表单:
·支付当用户在小程序内完成过支付行为,可允许开发者向用户在7天内推送有限条数的模板消息(1次支付可下发1条,多次支付下发条数独立,互相不影响)。
·提交表单当用户在小程序内发生过提交表单行为且该表单声明为要发模板消息的,开发者需要向用户提供服务时,可允许开发者向用户在7天内推送有限条数的模板消息(1次提交表单可下发1条,多次提交下发条数独立,相互不影响)。
3.模板管理规则
(1)模板审核
新建的模板需要通过审核才能使用,审核规则如下:标题:
1)标题不能存在相同。
2)标题意思不能存在过度相似。
3)标题必须以“提醒”或“通知”结尾。
4)标题不能带特殊符号、个性化字词等没有行业通用性的内容。
5)标题必须能体现具体服务场景。
6)标题不能涉及营销相关内容,包括不限于:消费优惠类、购物返利类、商品更新类、优惠券类、代金券类、红包类、会员卡类、积分类、活动类等营销倾向通知。
关键词:
1)同一标题下,关键词不能存在相同。
2)同一标题下,关键词不能存在过度相似。
3)关键词不能带特殊符号、个性化字词等没有行业通用性的内容。
4)关键词内容示例必须与关键词对应匹配。
5)关键词不能太过宽泛,需要具有限制性,例如:“内容”这个就太宽泛,不能审核通过。
(2)违规说明
除不能违反运营规范外,还不能违反以下规则,包括但不限于:
1)不允许恶意诱导用户进行触发操作,以达到可向用户下发模板目的。
2)不允许恶意骚扰,下发对用户造成骚扰的模板。
3)不允许恶意营销,下发营销目的模板。
4)不允许通过服务号下发模板来告知用户在小程序内触发的服务相关内容处罚说明。
(3)处罚说明
根据违规情况给予相应梯度的处罚,一般处罚规则如下:
1)第一次违规,删除违规模板以示警告,
2)第二次违规,封禁接口7天。
3)第三次违规,封禁接口30天。
4)第四次违规,永久封禁接口。
处罚结果及原因以站内信形式告知。

责任编辑:admin

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

上一篇:微信支付
下一篇:客服消息

网友评论:

在“\templets\demo\comments.htm”原来的内容全部删除,插入第三方评论代码,如果不需要评论功能,删除comments.html里面的内容即可
推荐使用友言、多说、畅言(需备案后使用)等社会化评论插件

Copyright © Tricks资讯网 版权所有
本站所有资讯来源于网络 如有侵权请联系QQ:940910888 技术支持鹏博科技
Top