- 【已成功】只用云开发,如何发送公众号模板消息?
下发统一消息接口回收后,如果你只有云开发,没有服务器和域名,不妨尝试使用本文的方法来发送公众号模板消息。 前提: 小程序和公众号同主体且已绑定到同一个微信开放平台账号。 思路推理: 小程序用户访问任意云函数都可以拿到小程序openid和unionid,提前将它们保存到云数据库用户集合中。 发送模板消息: 使用云函数A发送模板消息,需要调用公众号发送模板消息的接口,调用接口需要用到公众号的access_token。 获取和保存access_token: 使用云函数B获取access_token,推荐使用Stable Access token接口获取,减少出错率,云函数B可固定IP。因接口有日调用限制且access_token默认2小时过期,获取到access_token之后需要保存到云数据库中。为防止access_token过期,推荐云函数B设置定时触发,每隔1小时执行一次去重新获取access_token保存到云数据库中。 使用最新access_token: 每次发模板消息时从云数据库查询最新的access_token记录,发送模板消息需要用到公众号的openid。 获取公众号openid: 将小程序的云环境共享给公众号,小程序可使用云函数C来获取公众号的openid和unionid。如何操作呢? 1、使用云开发静态网站制作一个授权页面D,在该页面中访问云函数C,使用静默授权方式访问在云函数C即可获取到访问用户的公众号openid和unionid。 2、小程序使用webview来访问页面D,授权成功后在页面显示公众号的二维码,提示用户关注公众号获取通知功能。 将小程序和公众号用户关联: 通过上述引导用户获取到的公众号unionid来查询云数据库中的用户信息,保存公众号的openid到用户信息中。 经历以上安排之后,小程序云数据库的用户集合中,用户信息已经包含了小程序openid、unionid、公众号openid,到发消息的时机就可以发了。
2023-09-24 - 小程序与公众号下发统一消息接口调整通知
各位开发者: 下发统一消息 接口曾支持小程序与公众号统一的模板消息下发。由于小程序模板消息能力已于 2020 年 1 月下线(详见 小程序模板消息能力调整通知),当前下发统一消息能力仅限于公众号范畴。为了优化开发体验,避免多个同一功能接口对开发者造成困扰,微信团队将对下发统一消息接口进行如下调整: 自 2023 年 9 月 20 日起(以下简称 “生效期”),下发统一消息接口将被收回。自生效期起,调用下发统一消息接口将会显示 “45109” 错误码,无法下发小程序模板消息与公众号模板消息。如业务需下发公众号模板消息,请使用 公众号模板消息能力 满足能力需求,具体适配操作可参考下方适配指引。 注意点: 1、下发统一消息接口与公众号模板消息接口的差异对比如下: [图片] 2、本次接口回收仅影响使用旧的下发统一消息接口的方式下发模板消息的情况,不代表公众号模板消息能力被收回,使用 公众号模板消息接口 下发公众号模板消息的能力不受影响。例如小程序 A、B 当前正使用不同接口下发公众号模板消息: [图片] 3、小程序订阅消息能力不受本次接口回收的影响。 4、请已使用下发统一消息接口的开发者尽快适配。若 2023 年 9 月上旬仍未适配,官方团队将分阶段通过站内信、微信开发者工具通知等方式同步告知指引修改。 适配指引: [图片] 检查当前调用下发统一消息接口的用户身份信息: 1、若当前下发模板消息的用户身份信息为公众号 openid,按照 公众号模板消息接口文档 适配 2、若当前下发模板消息的用户身份信息为小程序 openid,检查 微信开放平台 是否将小程序与公众号绑定在同一个主体 a) 若小程序与公众号绑定在同一个主体下,按照 公众号模板消息接口文档 适配 b) 若小程序与公众号没有绑定在同一个主体下,先完成绑定工作,再按照 公众号模板消息接口文档 适配 微信团队 2023年8月22日
2023-09-18