小程序 如何申请长期订阅(设备消息)?

这篇具有很好参考价值的文章主要介绍了小程序 如何申请长期订阅(设备消息)?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

现在长期订阅模板被好多人滥用了,比如我司没有特殊资质的话是很难申请,这个时候如果想实现长期订阅模板怎么办?刚好我司有蜻蜓设备可以试试设备信息
设备消息是长期订阅消息的一种,用户只需订阅一次,后续可根据设备状态的更新向用户发送服务通知。

设备消息接入指引

一、申请类目

1.1 申请工具-设备管理类目

登录小程序管理后台mp.weixin.qq.com,左侧最下方“设备”-基本设置-服务类目,添加“工具-设备管理”类目(该类目无需资质。如已有该类目可忽略此流程)
小程序长期订阅实现,小程序,前端

二、设备接入

2.1 开通设备管理功能

进入小程序案例台-功能-硬件设备,阅读设备使用条件和接入流程等,点击“开通”。管理员扫码确认后开通成功,进入设备管理页面。

小程序长期订阅实现,小程序,前端

2.2 添加硬件设备 (需审核)

进入硬件设备,点击添加设备,按照每个字段对应的说明填写信息,如实填写设备相关信息,否则会导致审核不通过。
小程序长期订阅实现,小程序,前端

2.3 获取设备 model_id

设备注册成功后,可获得平台分配的 model_id ,model_id 是调用小程序设备能力相关接口的重要凭证。获取 model_id 后,小程序可按照相关文档指引调用「设备消息」等硬件能力。

2.4 申请设备能力(需审核)

model_id 获取之后,在设备管理入口,点击右侧“申请设备能力”-“消息能力”。

小程序长期订阅实现,小程序,前端
(设备消息能力审核通过状态)

三、获取设备消息

「小程序设备消息」能力指的是,只要用户在小程序内订阅通知,开发者就可以将这些事件以订阅消息的形式发送给用户。消息在微信内的产品形态,目前以“服务通知”形式呈现。 申请设备消息必须先完成“二、设备接入”。关于小程序订阅消息的基础介绍可参考文档

3.1 获取模板

登录小程序管理后台——功能——订阅消息——公共模板库——长期订阅,查看可选用的设备消息模板。

小程序长期订阅实现,小程序,前端

基于设备状态的变化,对于一些需要对用户进行提醒的情况,专门为设备提供了长期订阅消息,会以「服务通知」的形式下发给用户。目前可能用到的场景包括但不限于:

  1. 对生命财产可能造成影响的告警:烟雾/水浸/温度/防盗传感器告警、门锁被撬、陌生人闯入等
  2. 影响到设备正常使用的提前预警:低电量预警、故障提醒、耗材用尽提醒等
  3. 需要人工介入做进一步操作的提醒:门铃呼叫、洗衣完成等

3.2 获取模板ID

选择设备消息模板中需要的关键词,并提交。
注意:设备消息模版的关键词内容由平台生成,为枚举值,开发者不能够自定义内容。

小程序长期订阅实现,小程序,前端
提交后,可在“我的模板”中找到对应模板的模板 ID ,每个模板以 template_id 标记。
小程序长期订阅实现,小程序,前端

3.3 获取设备票据

获取 snTicket 用于「发起订阅」步骤。详见服务端设备票据接口 hardwareDevice.getSnTicket 。

四、触发设备消息

4.1 发起用户订阅

发起订阅调用 wx.requestSubscribeDeviceMessage 接口会有以下授权弹窗出现,用户同意订阅消息后,才会有设备消息发送至用户的微信会话

呼叫、告警等消息,可引导用户在小程序内完成设备消息订阅,用户需勾选左侧消息,并点击右侧强提醒按钮后提交“允许”。
小程序长期订阅实现,小程序,前端
(以上为小程序门禁设备长期消息弹窗样式)

示例代码

import { sn } from './utils/util'

wx.requestSubscribeDeviceMessage({
    sn: sn(), //sn序列号是前端随机生成的 
    snTicket: 'xxxxx', //获取 snTicket 用于「发起订阅」步骤。详见服务端设备票据接口 hardwareDevice.getSnTicket 。
    modelId: 'xxxxx',  //设备注册成功后,可获得平台分配的 model_id ,model_id 是调用小程序设备能力相关接口的重要凭证。
    tmplIds: ['xxxxx'],  //模板id
    success(res) {
        console.log('[wx.requestSubscribeDeviceMessage success]: ', res)
        // { 'QCpBsp1TGJ1ML-UIwAIMkdXpPGzxSfwJqsKsvMVs3io': 'accept' }
    },
    fail(res) {
        console.log('[wx.requestSubscribeDeviceMessage fail]: ', res)
    }
})

sn序列号

export function sn(){
  var date = new Date();
  var year = date.getFullYear();
  var month = date.getMonth()+1;
  var day = date.getDate();
  var hour = date.getHours();
  var minute = date.getMinutes();
  var second = date.getSeconds();
  //var milliseconds = date.getMilliseconds();
  var rand = Math.round(Math.random()*100);  
  return year+""+month+""+day+""+hour+""+minute+""+second+""+rand;
}

接入文档

4.2 发送设备消息

开发者通过微信服务端接口向用户推送设备消息。详见服务端设备消息发送接口 hardwareDevice.send

注意:开发者需要在小程序的合理场景内,给用户提供长期消息的授权弹窗。如用户实现房屋认证后通过用户操作触发“门禁机呼叫提醒”的订阅弹窗。

开发过程反馈bug

2023年5月24号 调试时遇到问题文章来源地址https://www.toymoban.com/news/detail-532746.html

sn必须是设备序列号 不是前端生成的 参考2.4 申请设备能力下图中的设备型号就是

到了这里,关于小程序 如何申请长期订阅(设备消息)?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序 如何订阅消息?

    微信公众号分为两种类型:订阅号和服务号,它们在功能和使用方式上有一些区别。 1.订阅号(Subscription Account): 2.服务号(Service Account): 微信公众号的类型是在注册时选择的,一旦选择了订阅号或服务号,无法直接转换。如果您主要是提供资讯和更新性内容,订阅号可

    2024年02月06日
    浏览(48)
  • uniapp小程序如何给用户推送订阅消息? 及订阅消息参数值内容限制规则

    uniapp小程序如何订阅消息,给用户推送消息? 小程序的模板推送分为“一次性订阅”和“长期订阅” 一次性订阅:用户订阅小程序后,程序只能对指定OpenId进行一次推送模板消息,无法多次推送 长期订阅:用户长期订阅,能够多次推送模板消息(长期订阅模板需要向微信官方

    2023年04月08日
    浏览(42)
  • spring boot +微信小程序项目,通过微信公众号实现指定用户消息长期推送

    用户登录小程序,后台记录用户的小程序openId和用户唯一的UnionId。然后用户触发公众号事件(关注公众号或者发送指定消息),后台获取到用户公众号的openId,再调用接口通过公众号的openId查询用户的UnionId,再和数据库里的UnionId进行匹配,将用户的公众号openId存入数据库。此

    2024年02月03日
    浏览(40)
  • 小程序实现消息订阅及发送

    在我们的家政服务小程序中,用户可以新增预约。一般的场景是新增预约的时候提醒用户接收通知,在状态变更的时候我们来发送订阅消息。本篇我们来讲解一下小程序订阅消息功能的开发。 要想发送订阅消息,首先需要选用一个消息模板。打开你自己的小程序后台,点击订

    2024年02月07日
    浏览(28)
  • 微信小程序实现订阅消息功能

             * 源码已经上传到资源处,需要的话点击跳转下载 |  源码下载         小程序中的订阅内容在日常中大家都会使用到,一般在支付的时候,会收到支持成功的消息,里面有一些基础信息花费多少以及是使用在什么地方,订阅消息是小程序向用户发送消息的方式

    2024年02月08日
    浏览(46)
  • 微信小程序如何判断是否已经订阅某条消息

    判断订阅消息是否已经订阅 res.subscriptionsSetting.itemSettings 返回的是所有订阅消息的对象集合,\\\'accept\\\' 表示用户同意订阅这条消息,\\\'reject\\\' 表示用户拒绝订阅这条消息,\\\'ban\\\' 表示已被后台封禁。

    2024年02月11日
    浏览(51)
  • 微信小程序实现订阅消息推送的实现步骤

    1、准备工作   准备小程序账号、开发环境,我小程序是基于uniapp开发,后台代码基于SpringBoot开发。同时先阅读官方文档,了解小程序订阅消息和后端如何发送订阅消息等相关知识,官方文档地址如下: 《小程序订阅消息》 《发送订阅消息》 2、实现步骤 2.1、启用并配置

    2024年02月15日
    浏览(37)
  • 使用Java实现微信小程序订阅消息

    首先到微信小程序的官网,选择合适自己的订阅消息模板。 寻找到适合自己的模板之后,记住模板ID,点开详情,记住每个字段id 微信小程序订阅消息官网文档介绍地址:小程序订阅消息 | 微信开放文档 (qq.com) 微信小程序订阅消息接口:发送订阅消息 | 微信开放文档 (qq.com

    2024年02月03日
    浏览(40)
  • 微信小程序实现订阅消息功能(Node服务器篇)

            * 源码已经上传到资源处,需要的话点击跳转下载 |  源码下载         在上一篇内容当中在微信小程序中实现订阅消息功能,都在客户端(小程序)中来实现的,在客户端中模拟了服务器端来进行发送订阅消息的功能,那么本篇就将上一篇内容中仅在客户端中实现

    2024年02月03日
    浏览(46)
  • MQTT,如何在SpringBoot中使用MQTT实现消息的订阅和发布

    1.1 什么是MQTT? MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。 MQTT最大优点在于用极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息

    2024年02月10日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包