首页 > 其他分享 >动态消息

动态消息

时间:2024-12-25 09:31:58浏览次数:3  
标签:提醒 状态 齐时 消息 动态 模板

动态消息

从基础库 2.4.0 开始,支持转发动态消息。动态消息对比普通消息,有以下特点:

  1. 消息发出去之后,开发者可以通过后台接口修改部分消息内容。
  2. 消息有对应的提醒按钮,用户点击提醒按钮可以订阅提醒,开发者可以通过后台修改消息状态并推送一次提醒消息给订阅了提醒的用户

消息属性

动态消息有状态、文字内容、文字颜色、系统消息提醒。

模板

动态消息目前有两个模板,应用于组队场景,分别以‘开始时’和‘到齐时’为状态变更和提醒节点。

变更和提醒节点 模板ID
开始时 21B034D08C5615B9889CE362BB957B1EE69A584B
到齐时 666F374D69D16C932E45D7E7D9F10CEF6177F5F5

状态

每个模板有三个状态,分别有其对应的文字内容和颜色。其中状态 0 可以转移到状态 0 和 1 和 2,状态 1 可以转移到状态 2,状态 2 不可以转移。

‘开始时’

状态 文字内容 颜色 允许转移的状态
0 "成员正在加入,当前 {member_count}/{room_limit} 人" #10AEFF 0, 1, 2
1 "已开始" #07C160 2
2 "已结束" #CCCCCC

‘成员到齐时’

状态 文字内容 颜色 允许转移的状态
0 "成员正在加入,当前 {member_count}/{room_limit} 人" #10AEFF 0, 1, 2
1 "已到齐" #07C160 2
2 "已结束" #CCCCCC

保持状态 0 无数据传入或状态 1 24h后自动进入状态 2。

状态参数

每个状态转移的时候可以携带参数,具体参数说明如下。

参数 类型 说明
member_count string 状态 0 时有效,文字内容模板中 member_count 的值
room_limit string 状态 0 时有效,文字内容模板中 room_limit 的值
path string 状态 1 时有效,点击「进入」启动小程序时使用的路径。对于小游戏,没有页面的概念,可以用于传递查询字符串(query),如 "?foo=bar"
version_type string 状态 1 时有效,点击「进入」启动小程序时使用的版本。有效参数值为:develop(开发版),trial(体验版),release(正式版)

系统消息

用户点击含动态消息的卡片退出小程序后会下发系统消息,状态转移的时候会变更系统消息内容或下发新的系统消息,具体的消息内容如下。

模板 内容
开始时 1.开始时,请提醒我 2.开始时,将收到提醒 3.已开始,进入“小程序”
到齐时 1.成员到齐时,请提醒我 2.成员到齐时,将收到提醒 3.成员已到齐,进入“小程序”

使用方法

一、创建 activity_id

每条动态消息可以理解为一个活动,活动发起前需要通过 createActivityId 接口创建 activity_id。后续转发动态消息以及更新动态消息都需要传入这个 activity_id

二、在转发之前声明消息类型为动态消息

通过调用 wx.updateShareMenu 接口,传入 isUpdatableMessage: true,以及 templateInfoactivityId 参数。其中 activityId 从步骤一中获得。

wx.updateShareMenu({
  withShareTicket: true,
  isUpdatableMessage: true,
  activityId: '', // 活动 ID
  templateInfo: {
    parameterList: [{
      name: 'member_count',
      value: '1'
    }, {
      name: 'room_limit',
      value: '3'
    }]
    templateId: '21B034D08C5615B9889CE362BB957B1EE69A584B'
  }
})

三、修改动态消息内容

动态消息发出去之后,可以通过 setUpdatableMsg 修改消息内容。

低版本兼容

对于不支持动态消息的客户端版本,收到动态消息后会展示成普通消息

标签:提醒,状态,齐时,消息,动态,模板
From: https://www.cnblogs.com/AtlasLapetos/p/18624217

相关文章

  • 一种面向户外动态环境的自适应ORB-SLAM3系统
        此文章为对论文AnAdaptiveORB-SLAM3SystemforOutdoorDynamicEnvironments的解读,文章链接如下知网节超时验证    文章寻找一种新的解决户外动态环境下视觉SLAM低精度的方法。提出了一种针对户外动态环境的自适应特征点选择系统。首先,利用YOLOv5s和......
  • 【Python项目】用pywin32在聊天窗口发送QQ好友/群消息
    源码中涉及到的函数用法:win32clipboard.SetClipboardData(format,hMem):它需要一个格式化的数据对象和一个数据块。CF_DIB——DIB图片,它包含一个BITMAPINFO结构,然后是位图位。CF_DIF——软件领域的数据交换格式。CF_PALETTE——调色板。每当应用程序放置数据在剪贴板......
  • 动态规划算法之子数组系列----最长湍流子数组
    最长湍流子数组 最长湍流子数字问题描述给定一个整数数组 arr ,返回 arr 的 最大湍流子数组的长度 。如果比较符号在子数组中的每个相邻元示例1:输入:arr=[9,4,2,10,7,8,8,1,9]输出:5解释:arr[1]>arr[2]<arr[3]>arr[4]<arr[5]示例2:输入:arr=[4,8,12,16......
  • 动态规划算法之子序列问题----环绕字符串中唯一的子字符串
    环绕字符串中唯一的字符串https://leetcode.cn/problems/unique-substrings-in-wraparound-string/submissions/589070606/题目描述定义字符串 base 为一个 "abcdefghijklmnopqrstuvwxyz" 无限环绕的字符串,所以 base 看起来是这样的:"...zabcdefghijklmnopqrstuvwxyzab......
  • Windows DLL 文件,动态链接库,可以调用已编译的全局公共方法
    创建一个WindowsDLL文件通常需要使用C或C++编程语言,并且需要一个编译器,如MicrosoftVisualStudio。下面是一个简单的示例,展示了如何创建一个包含基本函数的DLL文件。首先,创建一个名为MyLibrary.h的头文件,它声明了DLL中将要导出的函数://MyLibrary.h#ifdefMYLIB......
  • C++ 指针进阶:动态内存与复杂应用
    1.动态内存分配:new与delete运算符在C++编程中,动态内存分配是一项至关重要的技术,它允许我们在程序运行时根据实际需求分配和释放内存。new运算符用于在堆内存中分配内存,delete运算符则用于释放通过new分配的内存。当我们需要动态分配单个变量时,可以这样使用new:int*ptr......
  • 找到一个linux静态库动态库的好资料.1
    #正文前一篇说找到了这个资料:https://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html;它的首页是https://tldp.org/HOWTO/Program-Library-HOWTO/index.html。原文很好懂,所以我这里算是写一下自己学到的东西,不是翻译,也不按顺序,先整理一下静态库、共享库以及......
  • mybatis动态sql标签
    根据条件--sql发生改变。需要使用mybatis的动态sql标签作用这些动态SQL标签在MyBatis中提供了灵活的查询和更新操作的能力,可以根据不同的条件动态生成SQL语句,使SQL映射文件更具可读性和可维护性。常见的mybatis动态sql标签<trim>:通过修剪SQL语句的开头和结尾来动态......
  • Qt父窗口处理子窗口大小变化消息installEventFilter
    1.需求描述父窗口从上到下时标题栏,播放窗口和工具栏,希望监测中间播放窗口的大小变化,来根据分辨率自动调整播放画面的宽高;因为工具栏和标题栏可以隐藏,所以父窗口大小不变,中间的播放窗口也会随着工具栏和标题栏隐藏而变大,所以父窗口的resize函数无法检查到这种情况下播放窗口的大小......
  • 【杂谈】合理使用Kafka,防止消息丢失
    前言并非所有业务场景都要求消息绝对不丢失。对很多应用来说,为了追求更高的吞吐量,少量的消息丢失是可以容忍的。然而,在一些关键的业务场景中,确保消息不丢失至关重要。本文将重点讨论需要保证消息可靠性的场景,并提供相关的优化建议。消息丢失的场景消息丢失的场景可以归纳为三......