ESP RainMaker 组件

目前,ESP RainMaker 支持所有基于 ESP32 的 SoC 系列,不包括 ESP32-P4。
云端后台
ESP RainMaker 云后台采用 AWS 的 “无服务器应用模型” (SAM, Serverless Application Model) 架构,集成了策略管理、服务编排和功能实现。设备通过基于 TLS 的 MQTT 协议与后台通信,遵循公开定义的数据负载格式。手机应用、语音助手技能、设备管理面盘以及第三方集成通过 REST API 和推送通知进行交互。这些 API 都提供公开文档说明。
ESP RainMaker 后台设计为与数据模型无关,并提供自定义插件接口,用于处理所有传入的事件和数据。尽管 ESP RainMaker 后台采用 Go 语言实现,但用户可 使用任何 AWS 支持的语言进行定制,具体支持以下三种方式:
- 可扩展的 AWS 服务
- 用户可在同一 AWS 账号内自由扩展 AWS 服务,以开发自有应用。ESP RainMaker 不会干扰或占用这些服务资源。
- OAuth2 接口
- 提供 OAuth2 接口供外部服务调用,支持通过该接口接入各类自定义认证服务。
- 数据与事件可访问性
- 为便于二次处理,ESP RainMaker 提供便捷的数据与事件访问机制:
- 开放 Web API 供第三方集成,构建协作生态。
- 通过 Webhook 接口 可提取事件和数据,支持在同一或不同 AWS 账号中实现附加处理。
- 为便于二次处理,ESP RainMaker 提供便捷的数据与事件访问机制:
开放 API 应用层
ESP RainMaker 还提供一个开放 API 应用层,支持根据不同环境需求进行定制。
开源固件 SDK
ESP RainMaker 不仅提供云端服务,还推出了开源固件 SDK,可在 GitHub 获取。通过灵活的数据模型和 API 接口,开发者既能构建灯具、开关、风扇等标准产品,也能开发定制化物联网设备。
参考手机应用
ESP RainMaker 提供一个名为 ESP RainMaker App 的参考应用。
这款开源应用支持 Android 和 iOS 系统,具有自适应 UI 特性:任何通过 RainMaker 固件新增的功能都可直接在这些应用中呈现,无需额外适配。这不仅加速了产品开发进程,还支持开发者根据产品需求进行配置和定制。相关资源链接如下:
注意,ESP RainMaker 参考手机应用有两个版本,分别为「全球版」和「中国版」。但无论哪个版本,安卓和 iOS 使用的 SDK 是相同的,不受区域限制。
如需切换评估区域(全球/中国),注意以下事项:
-
Android 切换区域:卸载当前应用后,根据下表访问目标区域的应用商店,重新下载安装。
-
iOS 切换区域:进入手机设置:
设置 > 通用 > 语言与地区
,选择中国大陆
或指定的全球区域(例如新加坡
),参考此 设置 iOS 区域指南。
- 全球区域
- 中国区域
设备管理面板
ESP RainMaker 提供现成的管理面板,帮助客户高 效管理设备群组。该面板提供的核心功能包括业务洞察、设备诊断、设备管理和 OTA 升级。面板采用 HTML、CSS 和 JavaScript (JS) 构建,具备良好的可扩展性,支持针对具体业务需求进行自定义,无需从零开发。
管理面板有两个版本:
-
公有 RainMaker 实例管理面板,供测试和评估使用。
-
私有 RainMaker 实例管理面板,通过私有部署提供,用于商业用途。
-
了解管理面板的用法,请点击 管理面板用户指南。
-
开始使用公共 RainMaker 的仪表盘,请点击 公有管理面板用户指南。
CLI 工具
ESP RainMaker 提供两类 CLI 工具:
-
ESP RainMaker CLI (用于公共 RainMaker)
- 一款命令行工具,允许开发者与连接到 RainMaker 平台的设备交互和管理。适用于使用公共 RainMaker 的用户。
-
Admin CLI (用于私有 RainMaker)
- 由 ESP RainMaker 提供,供管理员用户进行 ESP32 系列产品批量生产使用。此工具支持执行节点 ID 生成、证书注册等生产流程所需操作。适用于已部署私有 RainMaker 的客户。
查看 此文档 了解这两种 CLI 工具的区别。
语音助手功能
ESP RainMaker 还支持集成 Amazon Alexa 和 Google Voice 服务,并支持部分标准设备。
了解如何将语音助手集成到 ESP RainMaker,参考此文档。