微信小程序「订阅消息」能力,终于来了!(之前,因为要手动收集模版消息的formId,被模版消息的触发机制坑了很久有木有......)
与「模板消息」不同的是,其是在用户点击触发或者支付成功之后,开发者可在 7天内推送1-3条服务通知。而「订阅消息」则需要用户主动订阅消息通知,开发者才可向用户推送,但不受时间限制,具体发送信息条数根据该能力的不同类型有不同标准。
此外,值得注意的是,使用「订阅消息」后,原小程序模板消息接口将于2020年1月10日下线,也就无法再使用原接口推送模板消息,开发者们需要注意及时调整接口。但是,微信服务号模板消息暂不受影响。
那么,「订阅消息」,到底有何特别之处?
1、选择权回到用户手中。在小程序中,「订阅消息」像是一个开关,需要用户主动点击授权之后,小程序才能向其推送服务通知,当然,用户也可以随时拒收该小程序的服务通知。而此前,用户只能被动地接收消息。
2、时长不受限制。「订阅消息」取消了7天内推送消息的时间限制,只要用户没有主动拒收消息推送,开发者就可以随时推送服务通知。对于服务周期超过7天的小程序而言,这就完美解决了此前的疑虑。
订阅消息类型:
1、一次性订阅消息:用户订阅一次后,开发者可下发一条消息,不限时间。若用户勾选了“总是保持以上选择,不再询问”且点击了允许,那么以后都默认同意订阅这条消息。用户不再做多次选择,开发者也避免了更繁琐的提醒。
2、长期性订阅消息:用户订阅一次后,可长期下发多条消息。目前长期性订阅消息向政务、医疗、交通、金融、教育等线下公共服务开放,后续将综合评估行业需求和用户体验持续完善。(长期订阅消息只针对特定行业开放,所以普通开发者并无法使用)。
最后附上一篇订阅消息体验踩坑记录:
使用方法:
wx.requestSubscribeMessage({
tmplIds: ['模板消息id1','模板消息id2'],
success (res) { }
})
第一个坑
如果不勾选红色方框内的内容,用户每次触发订阅消息功能都会弹出授权窗口,如果用户勾选了则不会出现弹窗。
第二个坑
和模板消息一样,不支持开发者工具,只能通过真机调试。
第三个坑
长期订阅消息只针对特定行业开放(目前长期性订阅消息向政务、医疗、交通、金融、教育等线下公共服务开放),所以普通开发者并无法使用,而且,现在长期消息模板是没有的,添加的入口估计目前没全量放开。
---------------补充--------------------------------------------------------------------------------
第四个坑
比如,你现在有两个订阅消息,第一个你勾选了不再询问,第二个没勾选,第二个下次点击还是会提示的,每个订阅消息是独立的。
第五个坑
用户如果同意订阅这条消息之后,wx.requestSubscribeMessage后台还是会默认调用,只是没有弹出框了。比如你订阅了5次,就发5次,我测试是这样子的。但是官方并没有具体说明,所以你最好自己试试为准。