微信团队前不久公测了「订阅消息」,原有的小程序模板消息接口将于 2020 年 1 月 10 日下线,届时将无法发送模板消息。「订阅消息」将完全替代「模板消息」,这两天得空测试了一波。

1、下发权限机制

我这边留言小程序用模板消息比较多,最有利的变化就是订阅消息只需用户授权即可,取消了模板消息的 formId,避免了获取、上传、储存、下发 formId 的流程,这个对开发者来说是好事。

同时将 7 天有效期的模板消息改成了用户自主订阅后,开发者可不限时间下发一条对应的服务消息,也就是没下发消息就永不过期。而模板消息只有 7 天有效期,过期没有使用需要写代码判断到期后自动清除,说不麻烦那是假话。

2、选择权交给用户

之前的模板消息下发是不需要用户授权的,理论上可以设计成一次点击操作得到发送一条消息的权限,这个过程用户是无感知的。

更有大神想出了骚操作,「隐藏、嵌套」大法,一次点击可以获取几十上百条模板消息下发的 formId,这个路子非常野,被一些小程序用来骚扰用户,后面被微信团队修复。

模板消息只要获取到了 formId,公共模板库里有的,都能下发,且数据类型没有限制的,也就是说,前面标识是姓名,但是开发者却可以推送时间给你。用户收到什么样的消息,完全取决于开发者。

订阅消息获取下发消息权限则需要用户确认,接不接收订阅消息,接收什么样的订阅消息,一次性订阅还是长期订阅,用的什么消息模板,用户都能看到,且只能发送已授权的订阅消息,决定权都在用户手里

订阅消息还严格的控制了数据的类型和长度,类型和长度不符合要求服务消息将无法下发。不过搞不好订阅消息也能玩出一些想不到的骚操作。

3、一次性订阅 and 长期订阅

目前订阅消息我这边只能体验到「一次性订阅」,测试了一下订阅次数可以累加,这里有需要的话开发者可自行记录可发订阅数和剩余订阅数。

「长期订阅」现阶段仅向政务民生、医疗、交通、金融、教育等线下公共服务开放,后期应该会开放更多的服务类目,同时申请长期订阅模板的审核也会更严格。

目前因为兼容性的问题,低版本的微信每次只能授权一条订阅消息,高版本才能一次授权多个订阅模板消息。

10 月 21 日更新的开发者工具无法识别「订阅消息」的 API,调试不能拉起授权框,直接报错。一开始我还以为是代码写错了,不过在真机上是可以正常拉起授权的。

4、用户体验

虽然这次的「订阅消息」对于开发者来说不太友好,但是我还是支持的,因为,除了支持我也不能咋地哈。新出来的功能没人喷那是不可能的,这个功能真辣鸡啊!

订阅消息的更新也是为了减少对用户不必要的打扰,一个良好的生态不管是对用户、开发者还是微信自身都很重要。

微信的用户体验在众多 APP 中还是挺不错的,最起码启动页无广告绝大多数 APP 做不到,一个日活过亿的 APP 能做到这个地步很不容易了。

前几天还出了通知,类似于“砍一刀”、“帮我加速吧”这类好友助力、加速、砍价和任务收集等将被微信视为违规活动,其中不少都在腾讯旗下,龙哥威武!再也不用向生活(PDD)低头了!

微信小程序新服务消息推送 —— 订阅消息的更多相关文章

  1. 微信小程序新单位rpx与自适应布局

    rpx是微信小程序新推出的一个单位,按官方的定义,rpx可以根据屏幕宽度进行自适应,在rpx出现之前,web页面的自适应布局已经有了多种解决方案,为什么微信还捣鼓出新的rpx单位?在解释这个单位前,我 ...

  2. 微信小程序语音识别服务搭建全过程解析(https api开放,支持新接口mp3录音、老接口silk录音)

    silk v3(或新录音接口mp3)录音转olami语音识别和语义处理的api服务(ubuntu16.04服务器上实现) 重要的写在前面 重要事项一: 所有相关更新,我优先更新到我个人博客中,其它地方 ...

  3. 微信小程序开发之formId使用(模板消息)

    基于微信小程序的模板消息:基于微信的通知渠道,我们为开发者提供了可以高效触达用户的模板消息能力,以便实现服务的闭环并提供更佳的体验.模板推送位置:服务通知模板下发条件:用户本人在微信体系内与页面有交互 ...

  4. 微信小程序语音识别服务搭建全过程解析(项目开源在github)

    silk v3录音转olami语音识别和语义处理的api服务(ubuntu16.04服务器上实现) ## 重要的写在前面 重要事项一: 目前本文中提到的API已支持微信小程序录音文件格式:silk v ...

  5. 微信开发之获取openid及推送模板消息

    有很多的朋友再问我怎么获取code,openid之类的问题,在这里我就给大家分享一下. 在做微信支付是需要获取openid的,推送模板消息也是需要openid包括其他一些功能分享等也都是需要的,ope ...

  6. 微信小程序统一服务消息下发接口 公众号和小程序消息都可以在一个接口推送了

    昨天晚上,2018年9月11日,微信官方又更新了一大波的小程序功能.重点我们来谈谈这个功能,微信叫做统一服务消息下发接口. 这个是官方的文档  统一服务消息 · 小程序https://develope ...

  7. 多个微信小程序一个服务端架构

    由于某些特定的业务场景,当多个小程序需要一个服务端后台提供数据时,大家可能想到是HTTP路由.是的,实际上我们使用微服务的GateWay网关也是一样的,如下图微服务架构: 网关GateWay的作用在于 ...

  8. .net平台借助第三方推送服务在推送Android消息(极光推送)

    最近做的.net项目(Windows Service)需要向Android手机发送推送消息,真是有点困难,没有搞过就不停的搜文档,最后看到了一个开源项目PushSharp,可以在.net平台推送IOS ...

  9. 齐博x1 小程序与公众号长期永久订阅消息的申请方法

    要给用户发送消息提醒的话,需要申请订阅消息.订阅消息分一次性订阅与长期永久性订阅.一次性订阅没有实际意义,用户订阅一次就只能发送一次.这里主要是指导大家如何申请永久长期订阅功能.对于公众号而言,大家先 ...

随机推荐

  1. Python学习之编码

    Python2默认解释器的编码:ascii: Python3默认解释器的编码:UTF-8 ascii码:只会识别英文字母.数字和标点.8位表示一个英文字符,1个字节 万国码Uicode:目前的所有语言 ...

  2. Yii2 框架整体结构

    Yii2框架是一个非常庞大但是并不臃肿的 php 框架.使用 Yii2 框架,可以极大的提升开发效率. 秉持着要知其然也要知其所以然的思想,花了一周的时间,看了 linuor 的 <深入理解Yi ...

  3. Git很麻烦?只要掌握这几个命令,轻松将代码提交远程仓库

    在上一章节,跟大家介绍了拉取代码的操作,简单暴力.这一章节要介绍的是如何将现有的项目,直接提交到仓库. 现在,如果大家有一个项目要提交到GitHub仓库,安装上一张的方法,需要先在GitHub上建一个 ...

  4. day04逻辑运算符短路、多分支结构(if和switch)、循环结构、while循环

    复习 1.运算符和表达式 1)表达式 2)算数运算符 + - * / % 3)关系运算符 >  <  >=  <=  ==  != 4)逻辑运算符 &&   | ...

  5. 关于css布局的记录(二) --网格布局

    网格布局 学习来自阮一峰老师的教程网格布局和网络上的一些资料的学习 1.定义: 顾名思义,网格布局是将页面按行(row)和列(column)划分成一个个网格来进行布局 使用方法:display:gri ...

  6. MySQL主从复制配置(Docker容器内配置)

    主从工作原理: 配置介绍: MASTER:172.17.0.2 SLAVE:172.17.0.3 MASTER内数据库: 仅仅同步以上两个库(在configerdata库中创建了wu2表) SLAVE ...

  7. java8新特性之——lambda表达式的使用

    lambda表达式简介 个人理解,lambda表达式就是一种新的语法,没有什么新奇的,简化了开发者的编码,其实底层还是一些常规的代码.Lambda 是一个匿名函数,我们可以把 Lambda 表达式理解 ...

  8. PHP-FPM 使用(含多站点多端口)

    PHP-FPM 使用 PHP-FPM 是在 Linux 环境下用来管理调度 PHP 执行的调度器,源码安装时会自动安装,PHP 安装可参考Centos 下安装 PHP (新) 查看版本 # php-f ...

  9. JS---体验DOM操作

    体验DOM操作 1. <!--html代码--> <input type="button" value="弹框" onclick=" ...

  10. 将 云数据库MongoDB(阿里云)物理备份文件下载恢复至本地自建数据库 遇到的5个问题

    有时候我们可能需要将云上数据库下载到本地,下面是我们在操作MongoDB数据库时遇到的五个小问题. 其实现在RDS的 帮助文档 写的都比较详细了,大家在第一次操作时,可以细读一下,避免一些不必要的问题 ...