小程序统一服务消息_[miniblog]小程序订阅消息踩坑记
有阵子没有更新我的
mini-blog
了,这次把推送消息那块做了些改动,小程序的模板消息即将废弃,订阅消息终于来了。
关于订阅消息
订阅消息分为一次性订阅
和长期订阅
,长期订阅
就不说啦,不是个人号可以染指的。
而一次性订阅消息
本质和模板消息
差不多,包括看了文档,接口基本上也比较相似。
一次性订阅消息
最大的优势就是不再受到七天有效期
的限制,同时省去了生成formId
的动作,而劣势在于必须用户主动允许,且允许一次只能发送一条信息。
这样的方式其实对用户是友好的,对于自己不想要的服务通知消息都可以屏蔽,而对于自己需要的消息可以允许发送,甚至可以选择总是保持,不再询问
。而对于小程序的开发和运营来说,就要考虑订阅消息的质量,是否能让用户心甘情愿的去点击允许
,并能不再询问
。
正式接入
拿mini-blog
做试验,准备在提交评论的时候让用户选择是否可以接受评论消息提醒。但有点可惜的是现有模板中没有最契合这种场景的消息模板,所以只能拿留言通知
这个模板凑合用了「自己申请评论提醒的模板多数是被拒的」。
至于接入,还是比较简单的,文档比较详细的。首先通过wx.requestSubscribeMessage这个API来唤起订阅消息界面。注意一定要用户发生点击行为或者发起支付回调后,才可以调起订阅消息界面。用户操作后回调结果会告诉你该模版用户是否同意订阅「值包括accept
、reject
、ban
。accept
表示用户同意订阅该条id对应的模板消息,reject
表示用户拒绝订阅该条id对应的模板消息,ban
表示已被后台封禁」所以当用户accept
之后,你就发送该模板的订阅消息了,用户会收到。发送订阅消息可以通过云调用的方式「但现在看文档貌似找不到了,不懂什么情况」
const result = await cloud.openapi.subscribeMessage.send({ touser: openId, page: event.page, data: { name1: { value: nickName }, thing2: { value: event.content }, time3: { value: event.createDate } }, templateId: event.templateId})
不出意外,服务通知里就能收到消息了。
重点:哪些坑
订阅消息大致流程其实和模版消息差不多,但坑还是挺多的,这里总结下,避免大家接入的时候踩坑。
1.服务类目
小程序本身的服务类目决定你只能选择该服务类目下的订阅消息模板。公共模板库只出现绑定的类目下的模板。
2.调试
订阅消息只能通过真机调试,开发者工具不支持。
3.本质还是formId的思路
即使用户选择了不再询问
,wx.requestSubscribeMessage后台还是会默认调用,只是没有弹框,也不会生成formID
,这样对于我们来说不知道用户点了几次,相对的,我们也不知道可以给用户发送多少条成功的订阅消息「所以,以前是记录formID,现在依旧要记录用户点击次数,本质没差」
4.表单提交事件不支持
这也是比较坑,原本我的评论提交按钮是通过表单提交,但无法唤起订阅消息的弹框,逛了社区才知道不支持,只能改为bindtap事件
。
5.消息内容不支持数字
这个也好奇葩,在测试留言通知
这个消息模板的时候,发现偶尔会提示data.name1.value invalid
的错误,一直匪夷所思,明明都已经赋值,且日志打出来也有的,怎么会报这个错误呢,后来发现我的昵称是Bug生活2048
,当我把2048
去掉之后就成功发送了。后来仔细看了文档才发现,订阅消息参数值的内容有严格限制,其中姓名data.name
是不能包含数字的。
总结
订阅消息使用场景还是很多的,后面可以利用它慢慢丰富我的小程序。文档一定要仔细看,不然小坑不断,很浪费时间。
我的小程序
小程序统一服务消息_[miniblog]小程序订阅消息踩坑记相关推荐
- 小程序统一服务消息_微信团队发布小程序模板消息能力调整通知:小程序订阅消息接口正式上线...
10月13日,微信团队发布了小程序模板消息能力调整通知.微信团队表示,此前的模板消息接口将停止使用,小程序订阅消息接口正式上线.据了解,新上线的小程序订阅消息,同时支持一次性和长期性订阅消息,用户可以 ...
- 重磅 | 小程序模板消息能力调整,长期性订阅消息终于来了
原创: 冷思真 蒋鸿昌 首发:「知晓程序」公众号 - 最好的微信新商业媒体 尽管部分运营者还在传授如何运用模板消息召回用户的运营技巧,但对部分开发者而言,模板消息已经成了食之无味弃之可惜的存在.与其再 ...
- 微信公众账号后台怎么解除小程序_微信小程序怎么注销账号_微信小程序注销方法_快吧小程序...
微信小程序一直存在一个问题:开发者不能注销自己的小程序.之前当开发者需要彻底清除小程序信息时,只能够通过暂停服务或关闭"允许被搜索"的方式曲线救国.现在,这个问题终于解决了. 在微 ...
- android小程序_小程序踩坑记
小程序踩坑记 希望这个文章能尽量记录下小程序的那些坑,避免开发者们浪费自己的生命来定位到底是自己代码导致的还是啥神秘的字节跳变原因. 前记 小程序大多数坑是同一套代码在不同平台上表现不一致导致的,微信 ...
- 微信小程序踩坑记——ColorUI组件的使用
微信小程序踩坑记--组件的使用 组件类型 ColorUI Vant weapp ColorUI 首先贴上官网链接:官网链接,GitHub链接 简介 ColorUI是一个css库!!!在你引入样式后可以 ...
- 微信公众号怎么推送消息_微信公众号发送消息
A.模板消息发送 模板消息仅用于公众号向用户发送重要的服务通知,只能用于符合其要求的服务场景中,如信用卡刷卡通知,商品购买成功通知等.不支持广告等营销类消息以及其它所有可能对用户造成骚扰的消息. 备注 ...
- go nil json.marshal 完是null_字节跳动踩坑记#3:Go服务灵异panic
这个坑比较新鲜,刚填完,还冒着冷气. - 1 - 在字节跳动,我们服务的所有 log 都通过统一的日志库采集到流式日志服务.落地 ES 集群,配上字节云超(sang)级(xin)强(bing)大(ku ...
- 东八区转为0时区_踩坑记 | Flink 天级别窗口中存在的时区问题
❝ 本系列每篇文章都是从一些实际的 case 出发,分析一些生产环境中经常会遇到的问题,抛砖引玉,以帮助小伙伴们解决一些实际问题.本文介绍 Flink 时间以及时区问题,分析了在天级别的窗口时会遇到的 ...
- 安装sql server踩坑记【sql2000程序安装配置服务器失败】
安装sql server踩坑记 安装程序配置服务器失败.参考服务器错误日志和 C:\WINDOWS\sqlstp.log 了解更多信息. 在C:\Program Files\Microsoft SQL ...
最新文章
- 全球与中国节能冷却塔销售渠道分布及市场营销状况分析报告2022-2028年版
- 【动态顺序表】 c语言的动态顺序表
- Java将map置空_Java实现过滤掉map集合中key或value为空的值示例
- git 2.30.1最新版本的使用
- 我死了,你会娶别的女人吗?
- linux 文件系统 xfs、ext4、ext3 的区别
- 设计模式1-简单工厂模式
- 5.4 机器翻译 数据集
- 05-信息管理系统--主页面显示当前用户实现退出功能实现
- 机顶盒 img打包工具_网络机顶盒刷机、固件升级图文详解 宏旺半导体包教包会...
- 去除Ubuntu 20桌面图标的快捷方式箭头
- 从零开始搭建一个前端框架(一)环境准备并完成简单打包
- VMware下的Ubuntu连接无线网络解决方案
- 计算机会计试题原型法的优缺点,《计算机会计学》1..doc
- C语言入门:helloworld
- 网络安全之手机安全使用手册
- openresty中应用murmurHash
- 怎么在Excel中查找指定文本并标记颜色
- 最全unicode编码
- linux用root权限执行命令,Linux root权限获取之sudo命令详解
热门文章
- 计算机科学和Python编程导论(三) 一些简单的数值程序
- 【廖雪峰python进阶笔记】面向对象编程
- 八成名校AI教授,都拿过谷歌微软亚马逊们的钱
- 什么,PyTorch还能开发新药?哈佛推出这款工具包,10行代码训练“药神”模型...
- CV 方向,长期看好,短期谨慎?
- 高等数学·为什么f``(x)小于0:则f(x)在[a,b]上的图形是凹的。f``(x)大于0:则f(x)在[a,b]上的图形是凸的。
- 一文读懂CV中的注意力机制
- 十个效果酷炫的Linux系统操作指令(像黑客帝国般的效果~)
- 激光雷达与相机—哪种更适合自动驾驶?
- Mac下pycharm如何安装pytorch