微信模板消息发送成功,只是代表微信服务器成功接收了这个消息,不代表粉丝已经收到。
微信服务器负责将消息投递给接收者,并将投递结果以消息推送的方式通知开发者服务器。但是多数情况下,公众号往往只绑定了延誉宝CMS(微读客)这一个第三方服务器,那么在其他应用中如何获取这个消息的发送状态呢?
对的API接口如下:
https://cms.weiduke.com/openapi/WeixinMp/template_msg_status
需要的参数为(建议通过POST发送,支持GET请求):
序号 | 参数 | 说明 |
---|---|---|
1 | weiduke_id | weiduke_token值 |
2 | weiduke_secret | weiduke_secret值 |
3 | openid | 接收模板消息的openid |
4 | msgid | 发送模板消息成功后微信返回的消息ID |
查看weiduke_id的方法如下图所示:
返回参数为:
序号 | 参数 | 说明 |
---|---|---|
1 | errcode | 值为0代表请求成功 |
2 | errmsg | errcode不为0,则显示具体错误信息 |
3 | msgid | 查询的模板消息发送任务ID |
4 | status_code | 查询状态,目前有的状态为0,1,2,3,4。见下表说明 |
5 | status_str | 状态值的具体说明 |
6 | memo | 如果发送失败,这里放具体的失败信息。 |
对应的状态编码和状态说明如下:
状态码 | 说明 |
---|---|
0 | 未发送 |
1 | 发送成功接收未知 |
2 | 发送成功接收成功 |
3 | 发送失败 |
4 | 发送成功接收失败 |