后端发布版本
本文列出了所有 RainMaker 后端发布版本。如需获取支持,请联系 esp-rainmaker-support@espressif.com。
2026 年后端发布版本
3.10.0(12-08-2026)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
升级后端之后,请将 RainMaker 管理面板升级到 2.8.0 或 2.9.0 版本。
-
新功能:
- 原生 Google 登录:移动应用现在除现有托管 UI 的 Google 流程外,还可通过 Google ID 令牌进行原生 Google 登录。适用于非中国区部署。详情参见 Federated Login API。
- 更改邮箱或手机号:现在可通过双重 OTP 验证安全地更新已注册的邮箱或手机号。管理员在需要时可跳过对旧联系方式的验证。详情参见 Username Change API。
- 管理员广播消息:超级管理员现在可向所有用户、选定列表,或按用户标签分组的用户发送电子邮件或推送通知。系统会根据用户所拥有设备的类型与型号自动打标签,因此一次广播即可触达所有拥有某设备类型或型号的用户。详情参见 Admin Message API。
- 可配置的 "Get In Touch" 支持:管理员现在可为 "Get In Touch" 请求配置应用内的支持分类、收件人、主题前缀与消息模板。详情参见 Get In Touch API。
- 设备天气数据:设备现在可获取当前天气数据,缓存的天气信息也可通过用户 API 获取。详情参见 Weather Data API。
- RainMaker Controller 登录:RM Controller 设备现在可基于移动应用的现有登录获取各自的 RainMaker 会话,无需单独的设备登录。新端点:
POST /oauth/controller/token。适用于非中国区部署。
-
其他变更:
- 用户数据导出:数据导出现在会将用户可通过现有 API 访问的全部内容(个人资料、节点、共享、自动化等)汇总为单个文件,并通过预签名链接提供,用于满足隐私合规(例如 GDPR)请求。详情参见 Data Request API。
- 节点列表中的 Matter 节点:
- 管理员节点列表 API 现在会返回 Matter 节点,此前会省略它们。
- 管理员与用户的节点列表 API 中,纯 Matter 节点以及 Matter + RainMaker 节点现在会包含新的可选
matter_details数组,列出该节点所属每个 Matter fabric 群组的matter_node_id与group_id(节点可加入多个 fabric,故为数组)。详情参见 User Nodes API 与 Admin Nodes API。
- 管理员节点列表:
GET /v1/admin/user/nodes现在会返回激活时间、上次配置更新时间和上次活动时间戳,并包含与GET /v1/user/nodes相同的每节点字段(role、sub_role、primary、cmd_resp)。详情参见 Admin Nodes API。 - 原始管理员访问日志:
GET /v1/admin/api_stats与GET /v1/admin/mqtt_stats现已支持aggregate=raw,可返回原始访问日志行,包括请求/响应的payload字段。原始模式要求比count更严格的过滤条件(API 统计:api_path/method;MQTT 统计:node_id/topic_name)。详情参见 Admin API Stats API。 - 节点代理时间序列接入:Node Proxy API 现在支持
tsdata动作,因此无法直接访问互联网的节点(例如仅 BLE)可通过与参数、配置和 OTA 状态相同的已签名代理流程提交简单时间序列数据。详情参见 Node Proxy API。 - 不指定目标用户名的节点共享:主用户现在可以在不指定目标用户的情况下创建节点共享请求,并分享生成的
request_id;第一个接受的用户将获得相应节点。群组共享自 3.8.0 起已支持此功能;节点共享现在也支持。详情参见 Node Sharing API。 - 删除设备上传的文件:用户现在可通过
DELETE /v1/user/file(entity_type=node)删除其设备上传的文件。详情参见 Delete User File API。 - 文件上传确认返回 md5:文件上传确认响应现在包含文件的 md5 校验和,客户端无需再单独调用获取文件接口即可验证上传。详情参见 File Upload API。
- 管理员用户角色分页:
GET /v1/admin/user_role现在在按role_name查询时会分页,最多返回num_records个用户(默认 25),并附带next_id游标,而不再返回完整列表。详情参见 Admin User Role API。
-
问题修复:
- 共享请求:过期的节点或群组共享请求此前仍可被接受(从而错误授予本应失效的访问权限)、被拒绝,或显示为待处理。现在在接受、拒绝以及待处理列表中都会立即校验是否过期,并在适用时返回
expires_on字段。 - 设备群组:修复了两个设备群组一致性问题:在互斥群组之间移动设备时,不再丢失用户所有权;取消共享时,设备也不会再出现仍映射到群组却未映射到任何用户的情况。此外,会对现有部署执行一次性数据修复,纠正受影响的映射,包括在 3.4.0 可见性修复之前,对群组其他共享用户不可见的共享子群组。
- Matter:
GET /v1/user/nodes/matter/data现已可通过 HTTP API 正常使用(此前返回 404),手机应用因此可以获取节点的 Matter 二维码或手动配对码。- Matter fabric 子群组此前不应单独共享,却可能被单独共享。单独共享子群组会使接收方缺少在 fabric 级别操 作其节点所需的 Matter 访问权限,因此现已再次正确阻止对子群组的单独共享——Matter 群组应在顶层 fabric 进行共享。
GET /v1/user/nodes?is_matter=false先前会忽略false值并返回所有节点(包括 Matter 节点);现在仅返回非 Matter 节点。- 现场 DAC 配网在多个证书批次共享相同 VID/PID 时可能失败,因为可能选中了已用尽或已禁用的批次。现在会选择第一个可用批次。
- 用户管理:
- 无密码 (OTP) 登录时,验证码错误时将会返回 HTTP 400 “验证码错误”,而非 HTTP 502,便于用户直接重试。
- 访客用户转换现在会校验密码长度与空白字符,并在验证码错误时返回 HTTP 400(而非 HTTP 500)。
- 用户数据请求状态 API 现在会对无效的
status值返回明确错误,而不再返回空对象来代替请求详情。
- 指令响应:
GET /v1/admin/nodes/cmd现在始终返回user_name(与时间范围无关);当记录引用了已删除用户或由节点发起的指令时,也不再返回 HTTP 500。对 command-history-not-enabled 错误的提示也更清晰。 - 管理员 API:
- 修复了在使用状态过滤且每页条数较少时,
GET /v1/admin/node_registrations/requests出现的 HTTP 504 超时。 GET /v1/admin/policy上的num_records=0不再返回全部记录,而是使用默认分页大小。- 更新 Cognito 应用客户端(
PUT /v1/admin/cognito_appclient)时,未知 client id 现在返回 HTTP 404,未配置的身份提供商返回 HTTP 400,而不再返回 HTTP 500。
- 修复了在使用状态过滤且每页条数较少时,
- OTA:
- 创建 OTA 任务时,现在会去除任务名的首尾空白,并拒绝空或仅含空白的名称;名称中间的空格保持不变。
- 对从未归档的 OTA 镜像执行取消归档时,现在会返回错误,而非 HTTP 200。
- 简单时间序列:修复了设备在同一
payload中发送多条读数时累计值不正确的问题;现在会在聚合前按时间顺序处理记录。 - 用户删除:当用户曾创建过未指定目标用户名的共享请求时,删除用户账号不再失败;删除此类单个请求也可成功。
- 共享请求:过期的节点或群组共享请求此前仍可被接受(从而错误授予本应失效的访问权限)、被拒绝,或显示为待处理。现在在接受、拒绝以及待处理列表中都会立即校验是否过期,并在适用时返回
3.9.0 (2026.6.5)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
升级后端之后,请将 RainMaker 管理面板升级到 2.8.0 版本。
-
新功能:
-
管理员用户群组管理:管理员现在可代表终端用户管理其设备群组。可创建、查看、更新和删除用户的群组,添加或移除节点,向其 他用户自动共享群组(无需接收方批准),以及查看或取消待处理的共享邀请。由新的
admin_user_operations部署设置控制。详情参见 Admin User Group API。 -
取消待处理指令:用户现在可取消自己的待处理指令响应请求。管理员可取消自己的以及任意用户的待处理请求。可按请求 ID、按节点,或按节点加指令 ID 取消。已取消的请求将以新的
cancelled状态报告。详情参见 Command Response API。 -
管理员节点注册:新增管理员 API,用于查看节点注册历史并检查单个注册任务的详细状态。详情参见 Admin Node Registrations API。
-
节点生产数据:管理员现在可通过 CSV 文件批量上传节点的生产数据(二维码、手动配对码,以及可选的 MAC 和序列号)。文件在后台处理;管理员可轮询状态、查看重复计数,并下载失败行的报告。终端用户可通过相应的用户 API 读取已上传的节点二维码和手动配对码。详情参见 Admin File API。
-
节点代理:用户(通过手机应用)现在可代表其节点上报 OTA 状态。适用于节点无法访问互联网的场景(例如仅 BLE 节点)。详情参见 Node Proxy API。
-
简单时间序列:设备现在可通过设置
ts_data_version: "2026-04-01",在现有node/+/tsdataMQTT 主题上发布多参数简单时间序列数据。时区优先使用新的tz字段;旧的tzp仍可用,但已弃用。在使用 AWS Timestream 的部署中,同一载荷会被路由到两个不同的存储位置:
ts_data_version: 2021-09-13进入时间序列存储,2026-04-01进入简单时间序列存储。简单时间序列流程可选择包含validity、tz和cumulative字段,其聚合行为与时间序列存储不同,参见 Time Series API 和 Simple Time Series API。详情参见 Simple Time Series API。
-
-
其他变更:
- RainMaker Controller:
PUT /v1/user/nodes/{node_id}/groups/{group_id}/controller现在接受enable和disable作为operation取值,以替代subscribe/unsubscribe。旧的subscribe/unsubscribe仍可继续使用,但已作为旧值保留。手机应用及任何自动化后续应改用新取值。 - 指令响应:
- 单条指令 MQTT 下发:节点重连后,后端现在一次只下发一条待处理指令(按最早的请求优先),避免短时间内向固件下发大量指令。指令按时间戳顺序下发,发往节点的指令 载荷中包含原始请求时间戳。收到 MQTT 确认后,才会触发下一条待处理指令的下发。Override 操作现在也会取消已经在执行中的指令。
- 更明确的错误:如果单条已存储的指令响应或请求载荷无法解码,API 现在会为该指令返回明确错误,并继续返回其余条目。此前,一条无法解码的记录会导致整次调用失败。
- 用户数据请求:用户数据请求状态 API 现在返回完整请求记录,并为每个生命周期状态(包括 queued、in progress、failed、ready)提供明确说明。详情参见 Data Request API。
- RainMaker Controller:
-
问题修复:
- 用户管理:
- 注册:未完成的注册请求中的密码会被存储并在后续尝试中复用,因此,用户确认账号后,实际使用的是第一次注册请求中设置的密码。现已修复,将应用最近一次注册尝试的密码。已确认的账号仍会收到
ERROR_ACCOUNT_ALREADY_EXISTS。 - 忘记密码:因触发验证码频率限制而失败的请求现在返回 HTTP 400(客户端错误),而不再返回 HTTP 500。
- 注册:未完成的注册请求中的密码会被存储并在后续尝试中复用,因此,用户确认账号后,实际使用的是第一次注册请求中设置的密码。现已修复,将应用最近一次注册尝试的密码。已确认的账号仍会收到
- 群组共享:在不指定目标用户名的情况下共享群组时(3.8.0 新增),接收方无法获取发送方信息。现在可通过请求 ID 查询,方式与常规共享请求相同。
- 自动化触发器:上报不相关参数时,自动化可能被再次触发。现在仅当当前更新涉及规则所引用的参数时才会运行触发器。现有
AND/OR规则语义保持不变。 - 时间序列分页:
GET /v1/user/nodes/tsdata和GET /v1/admin/nodes/tsdata可能在结果集末尾返回过时的next_id,导致客户端重复获取已见过的行,或无法正确识别结果集的末尾。数据流结束时现在会正确返回空的next_id。 - 简单时间序列聚合:设备在简单时间序列主题上发布非数值(数组、布尔值、字符串或对象)时,聚合流程会失败并进入重试循环,推高 CloudWatch 费用。原始数据存储正确。聚合现在会安全跳过非数值类型;浮点数和整数聚合行为不变。
- 指令响应:设备以空载荷上报参数更新指令(指令 ID 为 1)失败时,云端会错误地将该响应判为无效。失败的参数更新响应现在会正确记录。
- 角色权限管理:通过
PUT /v1/admin/deployment_settings/rbac切换 RBAC 时,变更并非总能及时生效——部分 API 调用仍会按先前设置运行。现在变更会立即生效,并会在 15 分钟内同步至整个部署。
- 用户管理:
3.8.0 (2026.4.16)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
升级到此版本之前,必须在部署区域将 Amazon API Gateway 配额 Routes per HTTP API 增加到 500。详情和控制台示例请参阅部署 FAQ 中的 增加 Amazon API Gateway 限制。
升级后端之后,请将 RainMaker 管理面板升级到 2.8.0 版本。
-
新增功能:
- 支持在不知道目标用户名的情况下共享组。可以通过二维码、邮件等方式分享请求 ID,任何用户都能接受共享。这适用于目标用户尚未注册或你不确定其用户名的场景。详情请参阅 组共享 API。
- 访客用户转换:访客账号现在可以转换为正式用户账号,转换后需要验证电子邮件地址。详情请参阅 转换访客用户 API。
- 共享子角色:节点和组共享时可以设置
sub_role字段(取值 1–4 ),实现更精细的权限控制。指令响应中也会包含此字段。详情请参阅 节点共享 API。注意:此功能主要由手机应用和固件使用,后端不会强制执行基于此字段的访问控制。 - 活跃用户统计:管理员可以通过新增的 API 查询指定时间以来的活跃用户数。详情请参阅 管理员用户 API。
- 用户活动记录:
last_activity_timestamp字段现在在所有环境类型中都会更新(之前仅在启用归档功能的环境中更新)。
- 用户活动记录:
- MQTT 访问日志增强:访问日志和统计信息现在包含设备属性(
type、model、fw_version),并支持获取原始 MQTT 消息。可以按设备类型、型号和固件版本筛选统计数据。详情请参阅 MQTT 统计 API。 - iOS 推送通知:新增基于令牌(.p8 密钥)的 APNS 认证方式,这是 Apple 官方推荐的做法,无需再管理证书过期问题。建议使用证书认证的应用迁移到令牌认证。详情请参阅 移动平台应用程序 API。
- 用户数据导出:数据文件准备就绪后,系统会自动发送邮件通知用户下载。
- Lambda 运行时升级:Go Lambda 运行时已从
provided.al2升级至provided.al2023,性能和 安全性得到提升。 - 标签管理:
- 管理员通过 admin/tags API 查询时可以查看标签来源。详情请参阅 管理员标签 API。
-
重大变更:
- 标签:
- 新的
rmaker.event.tags_updated事件替换了tag_added和tag_removed事件。
- 新的
- 标签:
-
其他变更:
- 组共享优化:重复共享同一节点/组给同一用户时(无论角色是否相同),将跳过审批流程。
- 用户文件删除:用户可以通过 删除用户文件 API 删除自己上传的文件。
- 管理员文件审批:管理员批准公共文件上传时,现在可以添加备注信息。
-
问题修复:
- 节点连接:短暂的断开连接会连续生成不必要的“节点已断开”和“节点已连接”通知。由于节点在约 10 秒内重试连接,因此将断开事件处理延迟从 5 秒增加到 20 秒。
- 指令响应:
- 当提供了
start_time和end_time但未启用历史记录时,不会返回验证错误。 - 用户 API (
GET /v1/user/nodes/cmd) 在返回用户自己的命令的同时还返回了管理员发起的命令。
- 当提供了
- 标签:
- 当节点使用不同的标签重新注册(带有
update_nodes标志)时,节点注册流程未清理悬空/僵尸节点标签。 - 在 user-node-mapping 期间添加的标签对管理员不可见,并且它们的 Tag_Name/Tag_Value 计数向所有管理员显示不正确。
- 当节点使用不同的标签重新注册(带有
- 用户组:当
node_details=true时 ,GET /v1/user/node_group的node_details条目中缺少primary标志,而GET /v1/user/nodes包含了它。 - 节点注册:电子邮件发送失败会阻止节点注册流程。
- 用户节点 API:当存在非活动映射时,带有
node_details=true的GET /v1/user/nodes中的分页功能损坏。 - 访问日志:提前退出的 MQTT Lambda 调用(例如,反序列化失败、未找到节点)未被捕获到 Firehose 访问日志中。
- 统计 API:UTC+ 时区用户在查询当天统计信息时会收到不正确的
ERROR_DATE_RANGE_HAS_FUTURE_DATES错误。 - 简单时间序列:
node/+/simple_tsdata上的简单时间序列数据消息未写入 MQTT 访问日志。- 查询聚合时,非 UTC 节点返回的日期范围不正确。
- 查询聚合时,每日范围聚合会为额外的一天返回数据。
- 当
end_date是今天且num_records为 1 时,不会返回next_id。
- OTA 网络序列化:使用了通用的
enabled/config_data信封,而不是专用的concurrency_count字段。旧端点ota_network_serialisation_degree现在被ota_network_serialisation替换。 - 安全签名密钥:没有验证来防止创建 KMS 中已存在名称的密钥。
3.7.0 (2026.2.18)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
升级后端之后,请将 RainMaker 管理面板升级到 2.6.0 版本。
-
新增功能:
- 访客账号登录:支持以访客身份登录,无需邮箱验证和设置密码。访客可以使用除 Alexa/Google 语音助手外的所有 RainMaker 功能,但无法重新登录或修改密码等用户设置。详情请参阅 创建访客用户 API。
- 用户数据导出增强:数据导出功能现在包含节点、用户组、自动化触发器和节点共享等信息。管理员也可以代表用户导出数据。详情请参阅 数据请求用户 API 或 数据请求管理员 API。
- 公共文件共享:用户上传的文件经管理员批准后,可以添加到公共文件库供所有用户访问。详情请参阅 使文件公开 API。
- 指令响应配置:新增
skip_fw_cmd_resp_support_check部署设置。启用后,节点无需在配置中声明即可使用指令响应功能。默认为禁用状态。 - 节点删除 API:新增统一的节点删除接口,可一次性将节点从所有共享用户和组中移除。建议使用此 API 替代之前的 用户节点删除 和 从组中删除 接口。详情请参阅 删除节点 API。
- RainMaker 控制器:支持创建控制器,可订阅指定组的主题来接收消息。
- 简单时间序列聚合:支持对时间序列数据进行聚合统计,可按小时、天、周、月计算计数、总和、最小值、最大值和平均值。详情请参阅 简单时间序列 API。
-
问题修复:
- 设备组:
- 修复了从组中删除已删除节点时返回 500 错误的问题,现在正确返回 400 错误。
- 推送通知:
- 修复了 Aurora 推送通知,现已支持 RainMaker China 的 FCM v1。
- 修复了请求包含 type 和 additional_info 时安卓通知失败的问题,新增
send_data_only标志支持。详情请参阅发布消息 API。 提示:此功能可用于发送公告、促销或广告消息,支持包含图片链接。
- OAuth 专用 RainMaker:修复了使用不同名称但相同配置创建重复第三方身份提供商 (OIDC) 的问题。
- 角色权限管理:修复了角色级别的创建、更新和删除功能。新增验证机制,禁止使用负数级别,防止同一请求中出现冲突的角色级别操作。
- 修复了配置 Cognito 应用客户端时未提供回调 URL 导致的错误。
- 修复了用户-节点映射时无法将节点添加到不同互斥组的问题。
- 设备组:
2025 年后端发布版本
3.6.1 (2025.12.4)
此发布版本修复了一个关键问题,请尽早升级。更多详情请查阅 FAQ。
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
对于 SAR 部署方式,升级后端之后,请将节点注册模块升级到 v29。
升级后端之后,请将 RainMaker 管理面板升级到 2.6.0 版本。
-
新增以下功能
- 成本优化:新增一项部署设置,用于启用或禁用
advanced_user_features。禁用此功能可使单用户成本降低约 63%。对于现有部署,advanced_user_features默认处于禁用状态。对于 2024 年 11 月 22 日之后创建的新部署,此设置默认启用。为优化成本,可考虑通过 Deployment Setting API 禁用此设置。 - 自定义 MQTT 域名:现支持在所有相关 API 中返回已配置的物联网 MQTT 自定义域名。
- 管理员用户节点映射:管理员用户现可创建和删除终端用户与节点的映射关系。详情请参阅 Admin user node association API。
- 成本优化:新增一项部署设置,用于启用或禁用
-
修复以下漏洞
- 修复了 RainMaker 升级后,管理面板 CloudFront 分发的自定义 SSL 证书和域名设置被重置为空的问题。现升级将保留现有的自定义域名配置。
- 节点群组成员关系异常变更:修复了当新用户关联到节点或节点被重置时,同时属于用户群组和管理员群组的节点会从管理员群组中被错误移除的问题。现此类操作仅会影响节点在用户群组中的成员关系。
-
已知问题
- 受限于 AWS 新的验证机制(自 2026 年 1 月 22 日起生效),该机制禁止并行堆栈部署,目前在 us-east-1 区域,RainMaker 后端部署和升级到此版本均会失败。
3.6.0 (2025.11.5)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
对于 SAR 部署方式,升级后端之后,请将节点注册模块升级到 v28。
升级后端之后,请将 RainMaker 管理面板升级到 2.6.0 版本。
-
新增以下功能
- OTA
- OTA 任务:允许对 OTA 任务执行强制推送重试,节点可由此恢复执行失败或已中止的任务。详情参阅 Retrigger OTA Job API。
- OTA 状态:新增节点发送状态更新时间戳支持,以提高状态准确性并优化去重处理。同时添加了时间戳来源标识:NODE/CLOUD。详情参阅 OTA Status Topic。
- 管理员通知:超级管理员现可添加额外邮箱地址以接收节点注册状态更新。详情参阅 Swagger。
- 用户数据访问:为满足特定隐私法规 要求,用户现可导出并下载其存储于 RainMaker 中的数据。管理员用户亦可代表终端用户执行此操作。详情参阅 Data Request API。当前支持导出基础用户信息。
- 基于位置的自动化
- 所有基于 Python 3.9 的 Lambda 函数均已升级至 Python 3.13。
- OTA
-
其他变更
- 节点注册:节点 ID 默认改为本地生成。请更新至 RainMaker Admin CLI v1.2.3。
-
修复以下漏洞
- OTA
- 签名加密的 OTA 镜像无法通过 MQTT 下载。
- 目标节点超过 5000 个时,签名加密的 OTA 任务无法下发。
- 在创建强制推送 OTA 任务期间,若有节点已完成该任务,则任务无法推送至所有节点的问题。对于非强制推送任务,修复了部分节点缺少“已触发”状态的问题。节点在获取 OTA 时,现可正常接收 OTA 任务更新。
- 自定义短信模板 :找回密码与注册流程使用相同短信模板。
- 节点断开事件:节点断开事件处理延迟超过 20 秒。
- 用户节点分组
- 若节点在用户-节点映射期间被添加至某分组,随后又被添加至另一分组,则删除原映射分组时会移除用户-节点映射关系,但该节点仍可通过第二分组访问。
- 用户节点分组共享
- 分组共享功能在同一时间内仅允许一个待处理请求,且最新请求会覆盖之前请求(即使这些请求面向不同用户)。
- 用户将自有节点添加至共享分组后,为该用户取消共享该分组时报错。
- 删除用户时,其关联的分组共享请求未被同步删除。
- 节点注册
- 使用
--update_nodes参数注册时,节点未添加至所创建分组。 - 有时生成的节点数量少于请求数量。
- 注册超过 5 万个节点时,节点证书注册失败。
- 使用
- OTA
-
已知问题
- 管理员节点组映射问题:详情请查看 FAQ。
- 受限于 AWS 新的验证机制(自 2026 年 1 月 22 日起生效),该机制禁止并行堆栈部署,目前在 us-east-1 区域,RainMaker 后端部署和升级到此版本均会失败。
3.4.2 (2025.9.1)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
对于 SAR 部署方式,升级后端之后,请将节点注册模块升级到 v27。
升级后端之后,请将 RainMaker 管理面板升级到 2.5.0 版本。
-
新增以下功能
- 用户与节点历史:管理员用户和终端用户现在可以访问用户与节点的关联历史。详见 Swagger。可通过 Deployment Setting API 启用该配置。
- 在所有 API 中,于 Authorization 头新增对 Bearer 令牌认证的支持。
- RainMaker 部署并行化:SAR 与 SAM 的新部署与升级耗时降低 70 % ~ 80 %。
-
已知的问题
- 管理员节点组映射问题:详情请查看 FAQ。
- 受限于 AWS 新的验证机制(自 2026 年 1 月 22 日起生效),该机制禁止并行堆栈部署,目前在 us-east-1 区域,RainMaker 后端部署和升级到此版本均会失败。
3.4.1 (2025.8.5)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
对于 SAR 部署方式,升级后端之后,请将节点注册模块升级到 v27。
升级后端之后,请将 RainMaker 管理面板升级到 2.5.0 版本。
-
修复以下漏洞
- 推送通知:即使在 节点或用户级别禁用了事件,用户仍会收到通知。
- RainMaker 新建/升级部署:RainMaker Base 栈失败,原因为 "no table ARN export found"。
- 新注册的 RainMaker 节点未上报至 ESP Insights。
-
已知的问题
- 管理员节点组映射问题:详情请查看 FAQ。
3.4.0 (2025.7.24)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
对于 SAR 部署方式,升级后端之后,请将节点注册模块升级到 v26。
升级后端之后,请将 RainMaker 管理面板升级到 2.4.0 版本。
-
新增以下功能
- 现场 Matter 支持
- 支持向在现场的 RainMaker 设备提供 Matter DAC 和接入载荷。详见 Swagger。详情请联系 RainMaker 支持团队 (esp-rainmaker-support@espressif.com)。
- 新增设备类型:Camera
- 节点生产
- 拉取最新的 RainMaker Admin CLI。
- 在
generate命令中,添加标志--videostream并设置为 true。 - 在
register命令中,添加参数--node_policies videostream。
- 关于许可和其他技术信息,请联系 RainMaker 支持团队 (esp-rainmaker-support@espressif.com)。
- 节点生产
- 推送通知
- 同时支持 Android 与 iOS 平台的优先级,并可配置优先级等级。Android:
"priority": "high/normal";iOS 优先级取值 1–10。参见 Push notifications templates API 进行配置。 - Android 通知:从旧格式迁移到新的 FCMv1 格式。详见有效载荷。注意,这无需对手机应用作任何改动 ,并且向后兼容。
- 用于删除消息模板、event_data 标志或优先级的 Delete API。
- 同时支持 Android 与 iOS 平台的优先级,并可配置优先级等级。Android:
- 指令响应
- 用户与管理员的指令响应请求均支持无限超时。仅在节点返回响应后才会删除这些请求(1 天内)。详见 Swagger。
- 集成:Post API 用于创建应用客户端(Cognito 与 OAuth 均支持),以将 RainMaker 作为外部集成的 OAuth 提供方。
- 现场 Matter 支持
-
修复以下漏洞
- OTA
- 当强制推送一个不同且优先级更低的任务时,会发送错误的 OTA 固件镜像。
- OTA 任务在创建后立即取消时仍保持活跃状态。
- 当节点在极短时间内连续上报多个 OTA 状态消息时的竞争条件处理。该问题可能导致节点获得一个已完成的任务。竞争条件:当状态在毫秒级时间差内发送时,节点会再次收到一个已成功/被拒绝的 OTA 任务。
- 节点元数据与分组自定义数据:空 JSON
{}未被忽略,反而清空了自定义元数据。这同样影响到用户公开资料。 - 用户与节点关联:即使同一用户重新关联同一节点且提供了
group_id,节点仍会被从分组中移除。 - 节点分组:分组的共享用户无法访问新创建的子分组。
- 持久节点连接:由于 未丢弃之前的断连事件,在线节点被标记为离线。仅当固件中启用了
CONFIG_ESP_RMAKER_MQTT_PERSISTENT_SESSION(默认禁用)时适用。 - 更改超级管理员/sender email 的验证码被发送到了错误的邮箱地址。
- 节点 CA 证书:重复 CA 注册处理不正确。
- 当通过默认密码创建用户(如在 Admin User API 中)时的邮件格式问题。
- 推送通知:修复了用户节点移除推送通知模板的校验。
- OTA
-
其他变更
- 改进了 Time-Series APIs 的验证错误提示消息。
-
已知的问题
- 管理员节点组映射问题:详情请查看 FAQ。
3.3.0 (2025.6.17)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
对于 SAR 部署方式,升级后端之后,请将节点注册模块升级到 v25。
升级后端之后,请将 RainMaker 管理面板升级到 2.4.0 版本。
-
新增以下功能
- 消息自定义:在短信模板中新增对验证码动态定位的支持。用于注册、忘记密码和删除账户流程的模板中的占位符
{#var#}现会替换为实际验证码,从而实现更灵活的消息格式。详见 Swagger。
- 消息自定义:在短信模板中新增对验证码动态定位的支持。用于注册、忘记密码和删除账户流程的模板中的占位符
-
修复以下漏洞
- OTA:管理员用户与终端用户无法下载安全签名的 OTA 镜像。
- 第三方身份提供商 (Google/GitHub/SignInWithApple) 无法完成配置。
- 当管理员获取节点列表时,终端用户附加的节点标签不会被返回。
- OAuth-only RainMaker:终端用户能够调用管理员用户与超级管理员 API。
- 自动化触发器:在日照/天气自动化中提供了无效坐标时,之前返回服务器错误;现在改为返回客户端错误。
-
其他变更
- OTA:此前 OTA 镜像 URL 仅在 15 分钟内有效,现在有效期为 1 天。
- 用户-节点映射:当通过用户与节点映射 API 将节点添加到分组时,转移该分组会同时转移该 节点,原用户将完全失去访问权限。详见 Swagger。
- 节点注册:为节点 ID 与证书通用名称添加校验;若节点注册失败,则删除该节点。
- 身份提供商:新增删除身份提供商的支持。详见 Swagger。
- 简易时间序列:将查询参数
data_type更名为type,以与常规时序 API 保持一致。为兼容历史,仍会支持data_type,但应视为弃用。详见 Swagger。 - 新增支持修改 RainMaker 资源 Lambda 的日志保留期。多数 Lambda 默认保留 7 天,部分为“永久不过期”。详见 Swagger。为节省成本,可以设置为更短的保留期,但在生产环境建议至少保留 7 天。
- 自动化触发器:按节点 ID 获取自动化触发器时新增分页支持。详见 Swagger。
-
已知的问题
- 管理员节点组映射问题:详情请查看 FAQ。
3.2.1 (2025.5.20)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
升级后端之后,请将节点注册模块升级到 v24。
升级后端之后,请将 RainMaker 管理面板升级到 2.4.0 版本。
-
修复以下漏洞
- 用户-节点映射:节点端恢复出厂设置未将设备从用户账户中解绑。
- 推送通知
- 当节点共享请求被接受或拒绝时,没有发送通知。
- 通知收到时有 5 到 6 秒的延迟。
-
其他更新
- 推送通知:如果事件数据被禁用,iOS 推送通知中已添加对可变内容的支持。
- 用户-节点映射:如果节点已绑定到当前用户,从节点发起的重置请求将不会重置用户绑定。
-
已知的问题
- 管理员节点组映射问题:详情请查看 FAQ。
3.2.0 (2025.4.23)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
升级后端之后,请将节点注册模块升级到 v24。
升级后端之后,请将 RainMaker 管理面板升级到 2.4.0 版本。
-
新增以下功能
- 持续 OTA:即使所有现有节点已完成 OTA(无论是报告成功还是被拒绝),OTA 任务仍可保持激活状态。详见 Swagger 文档。
-
修复以下漏洞
- 节点注册:未校验
node_id和节点证书中 CN 字段的匹配。当节点证书 CSV 文件中的node_id与证书不一致时,可能导致异常行为。 - API 访问日志:查询时设定的时间窗口未被正确应用,返回了额外的数据记录。详见 Swagger 文档。
- 用户-节点映射:如果节点已链接到同一用户并属于同一分组,则在节点映射过程中添加到分组会失败。详见 Swagger 文档。
- OTA:取消的任务状态未被处理。
- Node HTTP API:当提供 CA 链时,仅注册了根 CA,导致 RainMaker + Matter 节点尝试通过 HTTP 连接时失败。仅影响这些 API。
- MQTT 访问日志:存储的
/params/local和/params/local/init主题名错误。 - 语音助手:添加节点时,语音助手集成未收到任何通知。
- 节点自动化:对于字符串参数,“不等于”条件无法正常工作。详见 Swagger 文档。
- 推送通知:RainMaker 升级后消息模板丢失。
- OTA 镜像:如果 OTA 镜像关联了其他文件(如安全签名镜像和 bootloader),原始镜像可能被替换。详见 Swagger 文档。
- 通过 RainMaker 升级或 API 更新发送者邮箱时,该值会被重置为默认发送者邮箱。
- 指令响应:用户无法覆盖已有命令。详见 Swagger 文档。
- OTA:当 OTA 镜像是安全签名镜像时,
file_md5校验值未通过/otaurl主题发送给节点。 - OAuth-only RainMaker:在新部署和现有部署中,超级管理员登录失败。
- 节点注册:未校验
-
其他更新
- 管理员 API:为避免当数据量较大时管理员 API 超时或失败,已省略
total字段。以下是相关管理员 API 列表:- /admin/otaimage
- /admin/otajob
- /admin/event_filter
- /admin/secure_sign/signed_images
- /admin/secure_sign/signing_keys
- /admin/webhook_integration
- /admin/rainmaker_license
- /admin/otajob/status
- /admin/user
- /admin/user2
- /admin/nodes/cmd
- /admin/node_group
- /admin/file
- /admin/role
- /admin/policy
- /admin/key
- 管理员 API:为避免当数据量较大时管理员 API 超时或失败,已省略
-
已知的问题
- 管理员节点组映射问题:详情请查看 FAQ。
3.1.2 (2025.4.14)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
升级后端之后,请将节点注册模块升级到 v24。
-
修复以下漏洞:升级到 3.1.0 版本期间以及完成升级后,第三方登录 (Google/GitHub/SignInWithApple) 和语音助手集成功能无法正常工作。
-
已知的问题
- 管理 员节点组映射问题:详情请查看 FAQ。
3.1.0 (2025.4.3)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
升级后端之后,请将节点注册模块升级到 v24。
-
新增了以下功能
- 通知推送:iOS 推送通知默认包含 "sound" 字段,因此所有 iOS 通知不会静默推送。详见 RainMaker 推送通知 Payload。
- 管理员用户管理:管理员可以检索所有 RainMaker 用户。详见 Swagger API。
- 管理员文件上传:在创建上传请求时可以指定可选功能校验和 (Checksum),后端将校验上传文件的完整性。详见 Swagger API。
- 管理员消息模板:管理员可以配置多种语言的邀请/欢迎/删除邮件和短信模板。详见 Swagger API。
- OAuth-only RainMaker:现支持用户密码授权类型 (Resource Owner Password Credentials, ROPC),可跳过浏览器重定向,提升登录体验。详见 Swagger API。
- 许可证详情:Get License API 已修改,将返回更多有关最新许可证的详细信息。详见 Swagger API。
- 支持删除简单时序 (Simple Time Series) 数据。
-
修复以下漏洞
- RainMaker 版本升级后,Cognito 设置会被重置,修复后将自动备份与恢复 Cognito 设置。
- 云到云认证:创建用户的 API 存在延迟问题。
- 指令响应:指令响应历史未按时间排序。详见 Swagger API。
- 自动化触发器:使用 AND 运算符的自动化触发器在一个条件新 满足、另一个条件已满足时无法执行。
- API 透传服务:Get Configurations API 错误允许管理员访问,现已修复为仅超级管理员可访问。
- 设备分组:重复的组 ID 会导致共享时服务器错误。
- OAuth-only RainMaker
- 单个用户的多个会话共用刷新令牌。
- 基于前缀的用户筛选功能失效。
- 升级后 OAuth 登录不可用。
- 重新登录后未更新提供商的刷新令牌,导致登录失败。
-
已知的问题
- 第三方登录 (Google/GitHub/SignInWithApple)、Alexa 和 GVA 登录不可用,请升级到新版本。
- 管理员节点组映射问题:详情请查看 FAQ。
3.1.0-alpha.3 (2025.3.22)
请参阅 RainMaker 3.0.0 版本发布说明,了解停机相关注意事项。
升级后端之后,请将节点注册模块升级到 v24。
RainMaker 升级后,部分 Cognito 设置会被重置为默认值。请务必在升级前备份 Cognito 设置。具体步骤参见备份 Cognito 设置。
-
新增了以下功能
- OTA 串行化:同一网络内的 Thread 节点进行 OTA 升级时,采用串行方式以避免带宽限制导致的失败。详情请联系 RainMaker 支持团队 (esp-rainmaker-support@espressif.com)。
- 支持自定义节点警报的移动端通知推送模板。详见 Swagger API。
-
修复以下漏洞:
- 当节点已有高优先级任务时,较低优先级 OTA 任务被强制推送而导致 OTA 状态出现错误。
-
已知的问题
- 管理员节点组映射问题:详情请查看 FAQ。
3.0.0 (2025.3.4)
由于部分优化,本次升级将伴随停机(仅影响 Core 和 Base 堆栈),建议在低峰期进行升级。停机影响包括:
- 设备将与云端断开连接约 3~4 小时,具体时间取决于注册节点数量。升级完成后设备将自动重连。
- 手机应用端的节点操作在停机期间不可用,其他 API 可能间歇性失败。
- 停机仅影响 ESP-Rainmaker-Base 和 ESP-Rainmaker-Core 堆栈升级。
如果已绑定自定义 AWS-IoT 策略,则其功能不受影响。
若有疑问,请联系你的客户经理或乐鑫支持团队 (esp-rainmaker-support@espressif.com)。
升级到 3.0.0 版本后,请参照 下列 升级后的重要提醒 中的步骤 3 进行验证。
如果升级失败,请回滚到旧版 IoT 策略,避免长时间停机。
升级后端之后,请将节点注册模块升级到 v24。
RainMaker 升级后,部分 Cognito 设置会被重置为默认值。请务必在升级前备份 Cognito 设置。具体步骤参见备份 Cognito 设置。
-
优化了以下内容
- 成本优化:节点配置和参数更新优化后,DynamoDB 成本约降低 40%。
-
新增了以下功能
- OTA:通过
/otaurl路径下发到设备节点的 JSON 数据中包含新的file_md5键,表示 OTA 镜像的 MD5 校验值。
- OTA:通过
-
已知的问题
- 管理员节点组映射问题:详情请查看 FAQ。
为优化成本与性能,即将发布的版本将进行以下变更:
- 所有分页管理 API 响应将不再返回
total字段。如有自定义管理面板依赖此字段,请联系客户经理或乐鑫支持团队 (esp-rainmaker-support@espressif.com)。 - 节点数量汇总(活跃、非活跃、未激活)将通过邮件发送给超级管理员。
2.8.1(2025.1.31)
升级后端之后,请将节点注册模块升级到 v12。
RainMaker 升级后,部分 Cognito 设置会被重置为默认值。请务必在升级前备份 Cognito 设置。具体步骤参见备份 Cognito 设置。
-
新增了以下功能
- OTA:固件镜像文件不再局限于
.bin文件。现在可以使用 "raw" 作为镜像类型上传任意类型的文件,并用于 OTA 任务。请参考 OTA Image API 上传任意类型文件。
- OTA:固件镜像文件不再局限于
-
修复以下漏洞
- OTA 任务:已修复将新节点加入关联至 OTA 任务的动态分组中时,OTA 任务计数未更新的问题。同时也解决了由于计数错误导致部分节点未能成功 OTA 的问题。
- OAuth-only RainMaker:Add Identity Provider API 出现错误的问题已修复。
-
已知的问题
- 管理员节点组映射问题:详情请查看 FAQ。
为优化成本与性能,即将发布的版本将进行以下变更:
- 所有分页管理 API 响应将不再返回
total字段。- 节点数量汇总(活跃、非活跃、未激活)将通过邮件发送给超级管理员。
2.8.0(2025.1.3)
升级后端之后,请将节点注册模块升级到 v12。
RainMaker 升级后,部分 Cognito 设置会被重置为默认值。请务必在升级前备份 Cognito 设置。具体步骤参见备份 Cognito 设置。
-
新增了以下功能
- 管理员用户:管理员现在可以使用不区分大小写的邮箱前缀筛选用户。详见 Admin User Management API。
- 标签
- 管理员可以使用 and/or 运算符基于多个标签进行筛选。详见 Tag Service API。
- 管理员可以通过 Tag Service,或者通过 GET Admin Node Tags API 和 Delete Admin Node Tags API 来读取和删除终端用户添加的标签。
- 终端用户可以通过 GET User Nodes API 来查看关联用户节点时添加的标签。
- 标签值现在支持 "#" 字符,详见 Tag Service API。
- 用户文件:用户可以选择以私有或公开模式上传文件,适用于公开头像上传等场景。详见 User File API。
- 部署配置:可更改用于发送用户通知的邮箱,详见 Sender Email Update API。
- OTA 任务:获取 OTA 任务的 API 将返回强制推送和用户审批标志,详见 OTA Job API。
-
修复以下漏洞
- OTA 任务:显式添加超过 100 个节点时,创建 OTA 任务 API 会返回服务器错误,现已改为返回验证错误。详见 OTA Create API。
- 第三方登录:升级后,第三方登录偶发失败。
- 节点分 组:共享分组中的节点后续重新分配给其他用户时,通过获取节点分组 API 查询到的节点数量不正确。
- 管理端 CLI 工具:设备证书注册时添加的通用/每节点标签,在进行用户节点关联时会被清除。现可使用 2.7.1 版本引入的
--update_nodes选项重新附加标签。 - OAuth-only RainMaker
oidc_url和oidc_issuer字段之前被混用,现已统一将请求和响应中的oidc_url重命名为oidc_issuer,避免产生混淆。详见 Identity Provider API。- 之前允许创建无效名称的身份提供商,现已增加校验并将返回验证错误。详见 Identity Provider API。
-
其他更新
- 节点注册:现确保同一时间只能进行单个节点注册任务,其他任务将排队等待。
- OAuth-only RainMaker:Cognito 身份池会自动进行备份和恢复。
-
已知的问题
- 某些场景中,OTA 任务统计数量可能并不准确,导致部分节点未能成功 OTA。
- 管理员节点组映射问题:详情请查看 FAQ。
为优化成本与性能,即将发布的版本将进行以下变更:
- 所有分页管理 API 响应将不再返回
total字段。