微信的消息订阅

一、申请消息模版

微信公众平台,申请消息模版

二、在uni-app 里面下载这个插件uni-subscribemsg

三、根据文档定义一个message.js 云函数

文档里面都有现成的代码

javascript 复制代码
'use strict';

const uidObj = require('uni-id');
const {
 Controller
} = require('uni-cloud-router');
// 引入uni-subscribemsg公共模块
const UniSubscribemsg = require('uni-subscribemsg');
// 初始化实例
let uniSubscribemsg = new UniSubscribemsg({
 dcloudAppid: "填你的应用id",
 provider: "weixin-mp",
});

module.exports = class messagesController extends Controller {

 // 发送消息 
 async send() {

  let response = { code: 1, msg: '发送消息失败', datas: {} };
  const {
   openid,
   data,
  } = this.ctx.data;
  // 发送订阅消息
  let resdata = await uniSubscribemsg.sendSubscribeMessage({
   touser: openid,// 就是用户的微信id,决定发给他
   template_id: "填你刚刚申请的消息模版id",
   page: "pages/tabbar/home", // 小程序页面地址
   miniprogram_state: "developer", // 跳转小程序类型:developer为开发版;trial为体验版;formal为正式版;默认为正式版
   lang: "zh_CN",
   data: {
    thing1: {
     value: "信息审核通知"// 消息标题
    },
    thing2: {
     value: '你有新的内容需要审核' // 消息内容
    },
    number3: {
     value: 1 // 未读数量
    },
    thing4: {
     value: '管理员' // 发送人
    },
    time7: {
     value: data.time // 发送时间
    }
   }
  });
  response.code = 0;
  response.msg = '发送消息成功';
  response.datas = resdata;

  return response;
 }
}

四、用户主动订阅消息

微信为了防止打扰用户,需要用户订阅消息,并且每次订阅只能发送一次,不过我取巧,在用户操作按钮上偷偷加订阅方法,让用户一直订阅,我就可以一直发

javascript 复制代码
// 订阅
  dingYue() {
   uni.requestSubscribeMessage({
    tmplIds: ["消息模版id"], // 改成你的小程序订阅消息模板id 
    success: (res) => {
     if (res['消息模版id'] == 'accept') {

     }

    }
   });
  },

五、坑

我安装了那个uni-app 的消息插件,但是一直报错找不到那个模块。原来是unicloud 云函数要主动关联公共模块,什么意思呢,直接上图。

如果你喜欢我的文章,可以关注我哦~

相关推荐
微笑的曙光16 小时前
第八期 · 情绪闯关挑战盒:一个「无惩罚」成就系统的数据建模
java·微信小程序
andrsted20 小时前
练题簿在线免费刷题:顺序续练、优先新题与题型筛选,让复习一轮轮推进
微信小程序·小程序·刷题
拖孩21 小时前
全程 AI 写的小程序,刚接上会员虚拟支付,上线第二天就有人真金白银买单了|双签名、定价、iOS 的坑我全踩了一遍
前端·后端·微信小程序
醒醒1111 天前
深入浅出:如何用 Python 实现一个小程序污点分析引擎
微信小程序
andrsted1 天前
练题簿在线免费刷题:Excel、CSV 批量导题与章节整理,把现成表格变成日常题库
学习·微信小程序·小程序·刷题·在线刷题
计算机毕设定制辅导-无忧学长1 天前
《基于微信小程序的校园文化活动报名与管理系统》
java·spring boot·微信小程序·uniapp·校园文化活动报名与管理小程序
fengGer的bugs2 天前
新生儿喂养记录微信小程序:本地存储、四套主题,以及一份可改期的疫苗体检日程
微信小程序
5G微创业2 天前
去除抖音视频水印的Python实现
python·微信小程序·去水印
WeiXin_DZbishe2 天前
基于微信小程序的本地闲置物品交易平台-计算机毕设 附源码【课程设计】26825
vue.js·spring boot·python·微信小程序·架构·php·课程设计
小蒜学长2 天前
基于微信小程序的医院医疗废弃物追溯管理系统(代码+数据库+LW)
java·spring boot·后端·微信小程序·医疗废弃物