# 模板消息

说明:服务号订阅通知功能开启灰度测试,模板消息能力可正常使用

模板消息仅用于服务号向用户发送重要的服务通知,只能用于符合其要求的服务场景中,如信用卡刷卡通知,商品购买成功通知等。不支持广告等营销类消息以及其它所有可能对用户造成骚扰的消息。

关于使用规则,请注意:

  1. 所有服务号都可以在功能->添加功能插件处看到申请模板消息功能的入口,但只有认证后的服务号才可以申请模板消息的使用权限并获得该权限;
  2. 请根据认证服务号所属的行业和需要的模板消息类型,申请合适的服务类目,开放的服务类目可查看服务类目
  3. 每个服务号最多设置5个类目,每月可更改5次所选类目,更改或删除类目后,原类目下的模板将被删除;
  4. 设置类目后,可在公共模板库中查询、选用已有的模板进行调用,每个账号可以同时使用25个模板;
  5. 当前每个账号的模板消息的日调用上限为10万次,单个模板没有特殊限制。【2014年11月18日将接口调用频率从默认的日1万次提升为日10万次,可在MP登录后的开发者中心查看】。当账号粉丝数超过10W/100W/1000W时,模板消息的日调用上限会相应提升,以服务号MP后台开发者中心页面中标明的数字为准。

关于接口文档,请注意:

  1. 模板消息调用时主要需要模板ID和模板中各参数的赋值内容;
  2. 模板中参数内容必须以".DATA"结尾,否则视为保留字;
  3. 模板保留符号""。

# 接口列表

接口名称英文名请求路径
发送模板消息sendTemplateMessage/cgi-bin/message/template/send
获得模板idaddTemplate/cgi-bin/template/api_add_template
查询拦截的模板消息queryBlockTmplMsg/wxa/sec/queryblocktmplmsg
删除模板deleteTemplate/cgi-bin/template/del_private_template
获取已选用模板列表getAllTemplates/cgi-bin/template/get_all_private_template
获取行业信息getIndustry/cgi-bin/template/get_industry
设置所属行业setIndustry/cgi-bin/template/api_set_industry

# 事件推送

在模版消息发送任务完成后,微信服务器会将是否送达成功作为通知,发送到开发者中心中填写的服务器配置地址中。

1、送达成功时,推送的XML如下:

<xml> 
  <ToUserName><![CDATA[gh_7f083739789a]]></ToUserName>  
  <FromUserName><![CDATA[oia2TjuEGTNoeX76QEjQNrcURxG8]]></FromUserName>  
  <CreateTime>1395658920</CreateTime>  
  <MsgType><![CDATA[event]]></MsgType>  
  <Event><![CDATA[TEMPLATESENDJOBFINISH]]></Event>  
  <MsgID>200163836</MsgID>  
  <Status><![CDATA[success]]></Status> 
</xml>

参数说明

参数 说明
ToUserName 服务号微信号
FromUserName 接收模板消息的用户的openid
CreateTime 创建时间
MsgType 消息类型是事件
Event 事件为模板消息发送结束
MsgID 消息id
Status 发送状态为成功

2、送达由于用户拒收(用户设置拒绝接收服务号消息)而失败时,推送的XML如下:

<xml> 
  <ToUserName><![CDATA[gh_7f083739789a]]></ToUserName>  
  <FromUserName><![CDATA[oia2TjuEGTNoeX76QEjQNrcURxG8]]></FromUserName>  
  <CreateTime>1395658984</CreateTime>  
  <MsgType><![CDATA[event]]></MsgType>  
  <Event><![CDATA[TEMPLATESENDJOBFINISH]]></Event>  
  <MsgID>200163840</MsgID>  
  <Status><![CDATA[failed:user block]]></Status> 
</xml>

参数说明

参数 说明
ToUserName 服务号微信号
FromUserName 接收模板消息的用户的openid
CreateTime 创建时间
MsgType 消息类型是事件
Event 事件为模板消息发送结束
MsgID 消息id
Status 发送状态为用户拒绝接收

3、送达由于其他原因失败时,推送的XML如下:

 <xml> 
  <ToUserName><![CDATA[gh_7f083739789a]]></ToUserName>  
  <FromUserName><![CDATA[oia2TjuEGTNoeX76QEjQNrcURxG8]]></FromUserName>  
  <CreateTime>1395658984</CreateTime>  
  <MsgType><![CDATA[event]]></MsgType>  
  <Event><![CDATA[TEMPLATESENDJOBFINISH]]></Event>  
  <MsgID>200163840</MsgID>  
  <Status><![CDATA[failed: system failed]]></Status> 
</xml>

参数说明

参数 说明
ToUserName 服务号微信号
FromUserName 接收模板消息的用户的openid
CreateTime 创建时间
MsgType 消息类型是事件
Event 事件为模板消息发送结束
MsgID 消息id
Status 发送状态为发送失败(非用户拒绝)