借助云开发实现小程序模版消息推送(含源码)

简介: 借助云开发实现小程序模版消息推送(含源码)

上一节给大家将了借助云开发实现小程序支付功能,那么我们就要想了,能不能借助云开发实现小程序消息推送功能呢? 还别说,云开发还真能实现推送的功能。


一直关注我的同学肯定知道老师之前也写过借助java后台实现小程序消息推送的文章。 我们借助java后台虽然也能轻松的实现消息推送。但是呢?用java开发后台推送,必须要搭建服务器,学习java代码,部署java代码当然你就是做java开发的,或者学习过java,这没什么。但是作为小程序开发人员来说,用java显得太重了。


传送门:

借助小程序云开发实现小程序支付功能(含源码)https://www.jianshu.com/p/ddccf5f95e8c

5行代码实现微信小程序模版消息推送 (含推送后台和小程序源码):https://www.jianshu.com/p/35da86f309d4

下面就来教大家如何借助云开发实现小程序模版消息的推送功能。

老规矩,先看效果图



下面来讲实现步骤


一,定义推送的云函数


由于我们的云推送功能只能在云函数里调用,所以我们这里必须要在云函数里实现推送功能。

1,首先我们定义一个云函数push0524。

如果你还不知道如何使用云开发,如何定义云函数,去翻下老师之前的文章。有写的。


把完整的代码贴给大家

// 云函数入口文件const cloud = require('wx-server-sdk')
cloud.init()// 云函数入口函数exports.main = async(event, context) => {  console.log(event)  return sendTemplateMessage(event)
}//小程序模版消息推送async function sendTemplateMessage(event) {  const {
    OPENID
  } = cloud.getWXContext()  // 接下来将新增模板、发送模板消息、然后删除模板
  // 注意:新增模板然后再删除并不是建议的做法,此处只是为了演示,模板 ID 应在添加后保存起来后续使用
  const addResult = await cloud.openapi.templateMessage.addTemplate({    id: 'AT0002',    keywordIdList: [3, 4, 5]
  })  const templateId = addResult.templateId //新增的模版id
  const sendResult = await cloud.openapi.templateMessage.send({    touser: OPENID,
    templateId,    formId: event.formId,    page: 'pages/index/index',    data: {      keyword1: {        value: '云开发实现推送',
      },      keyword2: {        value: '2019 年 5 月 24 日',
      },      keyword3: {        value: '编程小石头',
      },
    }
  })  //删除模版id
  await cloud.openapi.templateMessage.deleteTemplate({
    templateId,
  })  return sendResult
}

上面代码所实现的就是

1,创建模版,拿到模版id

2,使用模版ID,填充模版消息,发送模版

3,删除模版。

我们正常开发时,模版都是在小程序后台获取到的。这里是为例演示方便。所以正常开发时,只需要实现第二步就行了。

推送的关键代码就是这个方法:

cloud.openapi.templateMessage.send

通常我们定义完push0524云函数以后,如果直接调用的话,会报错误的。



来看下这个错误,看到红色框里的permission就知道,肯定是权限的问题。所以我们在定义完云函数以后,要在push0524云函数下面添加权限配置页面。如下图



重要的就是这个: "templateMessage.send", 推送权限。因为推送是云开发给我们提供的,我们这里调用时,必须配置相关权限,才能使用的。

到这里我们的推送功能就实现了。下面我们来验证下。


二,验证云开发推送


验证其实很简单,和我们之前的《5行代码实现微信小程序模版消息推送 (含推送后台和小程序源码)》 类似。只不过一个是在java后台推送,一个是在小城里推送。下面我们简单写个小程序里验证推送的demo。

功能很简单

1,获取formid,因为推送必须有formid的

2,点击调用push0524实现推送


简单的贴下代码


需要注意的一点:我们测试时,必须要真机测试。因为模拟器没法获取到formid的。



我们在推送成功的success回调中打印下log。如果log中出现,send:ok字样,就代表我们推送成功了。来看下推送成功的效果。

微信聊天列表接收到了消息提醒



消息内容

到这里我们就用云开发实现完整的消息推送功能了。是不是很简单。

相关文章
|
4月前
|
人工智能 小程序 前端开发
一个小程序轻量AR体感游戏,开发实现解决方案
针对青少年运动兴趣不足问题,AR体感游戏凭借沉浸式互动体验脱颖而出。结合小程序“AI运动识别”插件与WebGL渲染技术,可实现无需外设的轻量化AR健身游戏,如跳糕、切水果等,兼具趣味性与锻炼效果,适用于儿童健身及职工团建,即开即玩,低门槛高参与。
|
4月前
|
移动开发 小程序 前端开发
小程序开发平台有哪些?哪个好
小程序的开发方式丰富多元,开发团队可根据自身的技术背景、项目具体需求以及资源状况,灵活挑选最为适宜的开发路径。以下将详细介绍几种主流的小程序开发方式。
483 1
|
4月前
|
运维 小程序 数据可视化
小程序开发平台有哪些?SaaS小程序制作平台哪个好
小程序开发模式详解:自主开发、SaaS小程序制作平台与外包全对比 选择合适的小程序开发模式,是项目成功的基石。这三种模式在成本、周期、控制力和灵活性上各有千秋,适用于不同阶段和不同类型的企业。下面我们将逐一深入剖析。
367 7
|
4月前
|
移动开发 小程序 前端开发
小程序快速开发平台有哪些?
小程序开发并非“一刀切”,需结合技术储备、资金预算、时间规划及功能需求等多维度因素综合考量。以下为您详细拆解五种主流开发方案及其适用场景,助您精准匹配开发路径。
296 3
|
4月前
|
移动开发 小程序 前端开发
小程序开发平台有哪些?小程序开发制作软件推荐
小程序开发方案全解析:5种主流方式与选择指南 小程序开发需根据技术能力、预算、时间及功能需求综合决策。以下为5种主流开发方案及适用场景分析:
25843 0
|
5月前
|
缓存 小程序 前端开发
商城/点餐/家政类小程序源码合集_微信抖音小程序源码开发从入门到精通实战
本文系统讲解如何利用现有源码快速开发商城、点餐、家政类微信/抖音小程序,涵盖环境搭建、核心功能实现、多平台部署与优化,提供完整技术方案。实战导向,助力开发者高效入门与落地。
|
5月前
|
小程序 PHP 图形学
热门小游戏源码(Python+PHP)下载-微信小程序游戏源码Unity发实战指南​
本文详解如何结合Python、PHP与Unity开发并部署小游戏至微信小程序。涵盖技术选型、Pygame实战、PHP后端对接、Unity转换适配及性能优化,提供从原型到发布的完整指南,助力开发者快速上手并发布游戏。
|
5月前
|
存储 小程序 Java
热门小程序源码合集:微信抖音小程序源码支持PHP/Java/uni-app完整项目实践指南
小程序已成为企业获客与开发者创业的重要载体。本文详解PHP、Java、uni-app三大技术栈在电商、工具、服务类小程序中的源码应用,提供从开发到部署的全流程指南,并分享选型避坑与商业化落地策略,助力开发者高效构建稳定可扩展项目。

热门文章

最新文章