彻底抛弃模板消息!拥抱一个更优秀的订阅消息吧!

小程序支持订阅消息:打破小程序对模版消息的限制,让商家与用户更加灵活的互动。通过用户的授权或者主动发起订阅,商家可以根据时间规律或者业务节点规律为用户订阅消息提醒,帮助商家唤醒用户提高转化和粘性,也为用户提供更好的使用体验。

传统推送模式

以往/目前的小程序,向用户推送消息,需要采用一个比较麻烦的能力:模板消息
具体步骤如下:

  1. 小程序前端代码,采用表单或者支付功能,获取到用户的推送码
  2. 小程序后端需要获取access_token,并维持其有效性
  3. 后端通过用户openId和上边推送码,结合小程序模板id+access_token,请求给微信推送API接口,完成一次推送流程

说起来挺简单的,但操作起来却很浪费时间和精力。
所以后来,就有了一些推送平台的出现。

比如我们的古人云小程序推送平台(https://mssnn.cn),能更简单地辅助开发者集成模板推送功能。

但是呢,这个模板消息,也是有弊端的:

  1. 需要用户主动触发
  2. 有时效性,7天内用户如果无触发操作,则无法向该用户推送消息了
10044645-2af1d9219b8d1b53.png
小程序模板消息

什么是订阅消息

为了解决上边的弊端问题,微信又推出了一种更高效的推送方式:订阅消息推送。

简单的说,就是只需用户点击一次推送授权(类似获取头像等授权)之后,开发者就可以不需要经过其他如收集推送码等操作,在任意时间(大概是这样,没有时间限制)都可以向该用户下发小程序卡片消息

当然,也是会有限制的,比如不能频繁下发等。

这个非常棒的能力,目前仍在内测中,我们也暂时无法获知已经使用上线的案例。除了官方的小程序示例。

功能实现探索

经过一番资料搜索整理,包括官方的开发文档,都未找到相关的资料。
那么,该功能是如何实现的呢?
我们深入研究了官方的小程序示例源码。

该小程序是开源的,项目地址是:
https://github.com/wechat-miniprogram/miniprogram-demo

通过对订阅消息页面的代码整理,我们发现了关键点:


10044645-9318744584bbb1ea.png

首先,是采用open-type为subscribe的button组件,来获取用户的授权

然后,我们追踪一下具体的推送函数dosendmsg:

10044645-f79b92b41f468b35.png

subscribeMessageUrl变量在config.js配置文件中:

10044645-fee8afadc25d1f8a.png

所以。。其实。。

我们也获取不到后端的具体实现代码了
但我们终究还是明白了前端是如何实现的这个订阅消息功能,这对广大开发者来说都是一件值得关注的好事!

我们将会持续关注该能力,争取第一时间为大家提供具体的消息!

猜你喜欢

转载自blog.csdn.net/weixin_33898233/article/details/87020978