微信发送消息接口

为了保证用户不受到骚扰,在开发者出现需要主动提醒、通知用户时,才允许开发者在公众平台网站中模版消息库中选择模版,选择后获得模版ID,再根据模版ID向用户主动推送提醒、通知消息。

模版消息调用时主要需要模版ID和模版中各参数的赋值内容。请注意:

1.模版中参数内容必须以".DATA"结尾,否则视为保留字;

2.模版保留符号"{{ }}"

具体调用方法

第一步:获取模版ID

通过在模版消息功能的模版库中使用需要的模版,可以获得模版ID。

第二步:请求接口

请注意,URL置空,则在发送后,点击模版消息会进入一个空白页面(ios),或无法点击(android)。

POST请求

https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN

请求包为一个json:

{
"touser":"OPENID",
"template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY",
"url":"http://weixin.qq.com/download",
"topcolor":"#FF0000",
"data":{
"User": {
"value":"黄先生",
"color":"#173177"
},
"Date":{
"value":"06月07日 19时24分",
"color":"#173177"
},
"CardNumber":{
"value":"0426",
"color":"#173177"
},
"Type":{
"value":"消费",
"color":"#173177"
},
"Money":{
"value":"人民币260.00元",
"color":"#173177"
},
"DeadTime":{
"value":"06月07日19时24分",
"color":"#173177"
},
"Left":{
"value":"6504.09",
"color":"#173177"
}
}
}

发送效果图:

img

事件推送

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

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

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

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>

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>
返回码说明

在调用模版消息接口后,会返回JSON数据包。正常时的返回JSON数据包示例:

{
"errcode":0,
"errmsg":"ok",
"msgid":200228332
}

错误时的返回JSON数据,形式类似,错误码请见本页下方返回码说明。

返回码说明
-1系统繁忙
0请求成功
40001验证失败
40002不合法的凭证类型
40003不合法的OpenID
40004不合法的媒体文件类型
40005不合法的文件类型
40006不合法的文件大小
40007不合法的媒体文件id
40008不合法的消息类型
40009不合法的图片文件大小
40010不合法的音频文件大小
40011不合法的视频文件大小
40012不合法的缩略图文件大小
40013不合法的APPID
41001缺少access_token参数
41002缺少appid参数
41003缺少refresh_token参数
41004缺少secret参数
41005缺少多媒体文件数据
41006access_token超时
42001需要GET请求
43002需要POST请求
43003需要HTTPS请求
44001多媒体文件为空
44002POST的数据包为空
44003图文消息内容为空
45001多媒体文件大小超过限制
45002消息内容超过限制
45003标题字段超过限制
45004描述字段超过限制
45005链接字段超过限制
45006图片链接字段超过限制
45007音频播放时间超过限制
45008图文消息超过限制
45009接口调用超过限制
46001不存在媒体数据
47001解析JSON/XML内容错误

G0svK37qlYufdQAuq1rd0wr5yI2IHs9UNPdE0GIZ_18

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信公众号消息发送接口demo是一种可以通过接口调用来发送消息给用户的演示示例。通过该demo,我们可以了解如何使用微信公众号提供的开发接口,来向用户发送不同类型的消息,如文本、图片、语音、视频、音乐、图文等。 在这个demo中,我们首先需要获取自己的微信公众号的AppID和AppSecret,并进行相关的配置。然后,我们需要使用前面获取到的AppID和AppSecret来获取access_token,这是调用接口的凭证。 在调用公众号消息发送接口前,我们还需要获取到要发送消息的用户的openid,可以通过用户授权或其他方式获取。然后,我们可以通过接口调用,向指定用户发送不同类型的消息。 例如,如果我们想发送文本消息,我们需要通过接口指定要发送的用户openid、消息类型为text,并填写文本内容。通过接口调用后,该用户便可以收到我们发送的文本消息。 除了文本消息,我们也可以发送其他类型的消息,如图片、语音、视频、音乐和图文等。对于不同类型的消息,我们需要按照接口要求提供相应的参数,如图片、语音和视频需要提供media_id,音乐需要提供音乐的相关信息,图文需要提供文章列表等。 通过这个demo,我们可以学习和了解如何使用微信公众号的消息发送接口,实现向用户发送不同类型的消息。这对于那些希望通过微信公众号与用户进行互动和传播信息的开发者和企业来说,具有重要的参考和借鉴意义。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值