返回顶部
首页 > 资讯 > 移动开发 >小程序订阅消息
  • 202
分享到

小程序订阅消息

小程序微信小程序微信 2023-09-02 18:09:11 202人浏览 薄情痞子
摘要

小程序的订阅通知,可以极大提升用户的使用体验感,消息能力是小程序能力中的重要组成。 小程序的订阅通知权限申请会以卡片的形式从底部弹出,用户点击订阅消息按钮之后,微信会向开发者服务器推送消息。 消息类型 1. 一次性订阅消息 一次性订阅,相

小程序的订阅通知,可以极大提升用户的使用体验感,消息能力是小程序能力中的重要组成。

小程序的订阅通知权限申请会以卡片的形式从底部弹出,用户点击订阅消息按钮之后,微信会向开发服务器推送消息。

消息类型

1. 一次性订阅消息

一次性订阅,相当于用户给使用的小程序门票,用户每约定一次,开发者就会有一次向用户发送消息的机会,开发者不可无限制的i向用户发送消息,每条消息可单独订阅或退订。

2. 长期订阅消息

一次性订阅消息可满足小程序的大部分服务场景需求,用户订阅一次后,开发者可长期下发多条消息。

目前长期性订阅消息仅向政务民生、医疗、交通、金融、教育等线下公共服务开放,后期将逐步支持到其他线下公共服务业务。

使用说明

1.获取模板id

在微信公众平台手动配置获取模板 ID:

登录 https://mp.weixin.qq.com 获取模板,如果没有合适的模板,可以申请添加新模板,审核通过后可使用。

 

2.获取下发权限

一次性订阅消息、长期订阅消息,详见接口 wx.requestSubscribeMessage

设备订阅消息,详见接口 wx.requestSubscribeDeviceMessage

3.调用接口下发订阅消息

一次性订阅消息、长期订阅消息,详见服务端接口 subscribeMessage.send,次数限制:开通支付能力的小程序下发上限是3kw/日,没开通的是1kw/日。

注意事项

  • 用户勾选 “总是保持以上选择,不再询问” 之后,下次订阅调用 wx.requestSubscribeMessage 不会弹窗,保持之前的选择,修改选择需要打开小程序设置进行修改。

订阅消息事件推送

1、当用户触发订阅消息弹框后,用户的相关行为事件结果会推送至开发者所配置的服务器地址或微信云托管服务。

XML格式示例

            1610969440                                                        2                                                    2            

JSON 格式示例

{  "ToUserName": "gh_123456789abc",  "FromUserName": "o7esq5OI1Uej6Xixw1lA2H7XDVbc",  "CreateTime": "1620973045",  "MsgType": "event",  "Event": "subscribe_msg_popup_event",  "List": [   {        "TemplateId": "hD-ixGohYmUfjOnI8MCzQMPshzGVeux_2vzyvQu7O68",        "SubscribeStatusString": "accept",        "PopupScene": "0"    }], }

若 "List" 只有一个对象,则只返回对象本身;若 "List" 多于一个对象,则返回一个包含所有对象的数组

参数说明

参数说明
ToUserName小程序帐号ID
FromUserName用户openid
CreateTime时间戳
TemplateId模板id(一次订阅可能有多个id)
SubscribeStatusString订阅结果(accept接收;reject拒收)
PopupScene弹框场景,0代表在小程序页面内,小程序外为空
MsgType消息类型
Event事件类型

参数处理

xml转map工具

public static Map xmlToMap(String xml) throws Exception {    Map map = new HashMap();    Document document = DocumentHelper.parseText(xml);    Element root = document.getRootElement();    List elements = root.elements();    for (Element element : elements) {        map.put(element.getName(), element.getText());    }    return map;}

因为推送的是时间戳格式,转换成"yyyy-MM-dd:HH-mm-ss"格式

long timestamp = Long.parseLong(subscribeTimeStamp);//将时间戳转换为long类型Date date = new Date(timestamp * 1000);//将时间戳转换为Date类型SimpleDateFORMat sdf = new SimpleDateFormat("yyyy-MM-dd:HH-mm-ss");//设置时间格式String subscribeTime = sdf.format(date);//将时间戳转换为String类型

当用户在手机端服务通知里消息卡片右上角“...”管理消息时,相应的行为事件会推送至开发者所配置的服务器地址或微信云托管服务。(目前只推送取消订阅的事件,即对消息设置“拒收”)

XML 格式示例

            1610969440                                                      

jsON 格式示例

{      "ToUserName": "gh_123456789abc",      "FromUserName": "o7esq5OI1Uej6Xixw1lA2H7XDVbc",      "CreateTime": "1610968440",      "MsgType": "event",      "Event": "subscribe_msg_change_event",      "List": [  {                "TemplateId":"BEwX0BOT3MQK3Uc5oTU3CGBqzjpndk2jzUf7VfExd8",                "SubscribeStatusString": "reject"      }],}

这里变换的只有SubscribeStatusString参数reject为拒收accept为接收

调用订阅消息接口发送消息给用户的最终结果,会推送下发结果事件至开发者所配置的服务器地址或微信云托管服务。

XML 格式示例

            1610969468                                       1700827132819554304            0                        

JSON 格式示例

{    "ToUserName": "gh_123456789abc",    "FromUserName": "o7esq5PHRGBQYmeNyfG064wEFVpQ",    "CreateTime": "1620963428",    "MsgType": "event",    "Event": "subscribe_msg_sent_event",    "List": {        "TemplateId": "BEwX0BO-T3MqK3Uc5oTU3CGBqzjpndk2jzUf7VfExd8",        "MsgID": "1864323726461255680",        "ErrorCode": "0",        "ErrorStatus": "success"      }      }

"ErrorCode": "0" 表示成功

来源地址:https://blog.csdn.net/ssghzxc/article/details/130273305

--结束END--

本文标题: 小程序订阅消息

本文链接: https://lsjlt.com/news/391242.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 小程序订阅消息
    小程序的订阅通知,可以极大提升用户的使用体验感,消息能力是小程序能力中的重要组成。 小程序的订阅通知权限申请会以卡片的形式从底部弹出,用户点击订阅消息按钮之后,微信会向开发者服务器推送消息。 消息类型 1. 一次性订阅消息 一次性订阅,相...
    99+
    2023-09-02
    小程序 微信小程序 微信
  • 微信小程序订阅消息
    subscribeMessage.send | 微信开放文档 由于业务需求 , 需要实现小程序订单状态发送给用户 , 于是微信小程序发送订阅消息就被找到了 这里前端是使用了uniapp , 具体实现方式不清楚,就不瞎bb了 后端这里就是...
    99+
    2023-09-03
    微信小程序 小程序 php
  • 微信小程序-小程序订阅消息(四)
    一、小程序订阅消息 小程序订阅消息 | 微信开放文档 功能介绍 消息能力是小程序能力中的重要组成,我们为开发者提供了订阅消息能力,以便实现服务的闭环和更优的体验。 订阅消息推送位置:服务通知订阅消息下发条件:用户自主订阅订阅消息卡片跳转能力...
    99+
    2023-09-06
    微信小程序 小程序
  • 微信小程序如何实现订阅消息功能
    这篇文章将为大家详细讲解有关微信小程序如何实现订阅消息功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。小程序模板消息即将被废弃掉,于是有了新接口wx.requestSu...
    99+
    2024-04-02
  • 小程序 如何申请长期订阅(设备消息)?
    前言 现在长期订阅模板被好多人滥用了,比如我司没有特殊资质的话是很难申请,这个时候如果想实现长期订阅模板怎么办?刚好我司有蜻蜓设备可以试试设备信息 设备消息是长期订阅消息的一种,用户只需订阅一次,后续可根据设备状态的更新向用户发送服务通知。...
    99+
    2023-08-30
    小程序 前端
  • 微信小程序——服务通知,发送订阅消息
    一、什么是消息推送 二、整体效果 三、实现步骤 1 小程序开通订阅消息 2 postApi测试效果 三、uniapp配置 这里有个需要特别注意的点,我们要给用户发送消息,就必须引导用户授权,如下 因为用户不点击允许,你是没有办法...
    99+
    2023-08-16
    微信小程序 小程序 微信
  • 小程序发送订阅消息,微信公众号发送消息模板
    首先讲两个注意事项 小程序和微信公众号的用户openid是不同的。 小程序需要用户手动授权订阅消息通知(一次性订阅是订阅一次发一次,长期订阅可以多发)。 关于小程序和公众号AppID和AppSecret的获取可以自行百度一下,挺简单的。 小...
    99+
    2023-08-31
    小程序 php
  • uniapp小程序订阅消息推送+Thinkphp5后端代码教程示例
    记录一下通过uniapp开发小程序消息推送的实例,配合后端tp推送,之前写的项目是微信小程序而且后端是原生php,这次通过项目记录一下 目录 回顾access_token获取规则以及思路 第一步:设计前端触发订阅事件第二步:设...
    99+
    2023-08-16
    uni-app 小程序 数学建模 Thinkphp
  • uni-app结合.NET 7实现微信小程序订阅消息推送
    目录功能介绍消息类型基本流程注意事项获取模板IDuni-app代码服务端代码生成订单发送模板消息总结微信小程序的订阅消息是小程序的重要能力之一,为实现服务的闭环提供更优的体验。订阅消...
    99+
    2023-02-05
    uni-app .NET 7小程序消息推送 uni-app  小程序消息推送
  • uniapp微信小程序订阅消息发送服务通知--超详细
    uniapp微信小程序订阅消息发送服务通知 由于公司需求,刚学完的小程序的我,要求开发一个直播通知的微信小程序,学了vue的我,选择还是使用uniapp开发,wx原生语法学完已经快忘了。在利用uniapp写代码的过程中,遇到很多问题,通过这...
    99+
    2023-08-16
    微信小程序 小程序 django
  • Springboot Websocket Stomp 消息订阅推送
    目录需求背景websocket协议stomp协议需求背景 闲话不扯,直奔主题。需要和web前端建立长链接,互相实时通讯,因此想到了websocket,后面随着需求的变更,需要用户订...
    99+
    2024-04-02
  • 小程序发送模板消息给用户 —— 一次性模板实现“长期订阅”
    大家好!我是我玩亚索我会C,在写小程序时,我们会有向用户发送消息的需求,比如发送提醒通知,或者是一些重要通知来形成一个服务的闭环。这就要用到微信的发送消息功能了,下面我使用Java语言来详细演示下如何使用一次性订阅消息发送消息给用户。 ...
    99+
    2023-08-17
    微信小程序 javascript java 小程序 开发语言
  • PHP调用微信消息订阅推送
    分享一下消息订阅推送 相信小伙伴们在做项目的时候都会有消息订阅推送的功能,比方说做外卖项目或者是商城的时候, 用户下单,需要给用户微信推送一条订阅消息 废话不多说 直接上代码 1.首先需要在微信小程序...
    99+
    2023-08-31
    微信 php 微信小程序
  • Spring boot+redis实现消息发布与订阅
    一.创建spring boot项目 org.springframework.boot spring-boot-starter-data-redis ...
    99+
    2017-09-29
    Spring boot+redis实现消息发布与订阅
  • C#用RabbitMQ实现消息订阅与发布
    目录Fanout交换机模型RabbitMQ控制台操作新增两个队列绑定fanout交换机示例效果图核心代码消息发布消息订阅Fanout交换机模型 扇形交换机,采用广播模式,根据绑定的...
    99+
    2024-04-02
  • 【微信小程序】wx.requestSubscribeMessage无法唤起小程序订阅弹窗
    报错信息:requestSubscribeMessage:fail can only be invoked by user TAP gesture. 报错原因:在某个场景的方法里面调用而不是直接通过用户点击 解决方法:一般可做成显示一个弹框...
    99+
    2023-08-17
    微信小程序
  • 【赵强老师】Redis的消息发布与订阅
    Redis 作为一个publish/subscribe server,起到了消息路由的功能。订阅者可以通过subscribe和psubscribe命令向Redis server订阅自己感兴趣的消息类型,当发布者通过publish...
    99+
    2021-07-29
    【赵强老师】Redis的消息发布与订阅
  • vue中消息订阅与发布如何使用
    这篇文章主要介绍“vue中消息订阅与发布如何使用”,在日常操作中,相信很多人在vue中消息订阅与发布如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue中消息订阅与发布如何使用”的疑惑有所帮助!接下来...
    99+
    2023-07-05
  • Redis实现消息的发布订阅原理分析
    目录一、什么是发布和订阅二、Redis的发布和订阅三、redis 发布订阅常用命令四、命令实战1、基本使用2、订阅符合要求的频道3、查看活跃频道五、发布订阅原理1、订阅频道原理2、发布信息原理3、退订信息原理一、什么是发...
    99+
    2022-07-25
    Redis消息发布 Redis消息订阅
  • C#如何用RabbitMQ实现消息订阅与发布
    这篇文章给大家分享的是有关C#如何用RabbitMQ实现消息订阅与发布的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Fanout交换机模型扇形交换机,采用广播模式,根据绑定的交换机,路由到与之对应的所有队列。一个...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作