概述
@espressif/rainmaker-base-sdk SDK 基于 TypeScript,为移动应用集成 ESP RainMaker 功能提供核心能力,为构建与 ESP RainMaker 设备交互、管理用户、控制设备和组织群组的应用程序提供了基础。
架构
SDK 采用模块化架构设计,灵活且可扩展:
核心组件
- 核心 SDK 功能 - 用于 RainMaker 操作的主要 SDK 类和方法
- 适配器接口 - 用于特定平台实现的平台无关接口
- TypeScript 支持 - 完整的 TypeScript 类型和接口,提供更好的开发体验
- 基于 Promise 的 API - 所有操作使用 async/await 模式,实现简洁的异步代码
主要类
ESPRMBase- 用于初始化和配置的主 SDK 类ESPRMAuth- 身份验证和用户管理ESPRMUser- 用于用户级操作的用户实例ESPRMNode- 用于设备操作的设备/节点实例ESPRMGroup- 用于群组操作的群组实例
SDK 架构流程
核心功能
1. 用户管理
全面的用户账号和身份验证管理:
- 身份验证 - 用户注册、登录(密码/OTP)和 OAuth 集成
- 密码管理 - 密码恢复、更改密码和账号安全
- 用户资料 - 管理用户信息、手机号码和时区设置
- 自定义数据 - 以细粒度权限存储和管理用户自定义数据
- 标签管理 - 对用户进行分类并通过标签管理功能访问权限
- 安全性 - 多重要素验证 (MFA) 和账号管理
- 会话管理 - 处理用户会话、令牌和注销操作
- 推送通知 - 为移动应用注册和管理推送通知端点
详细信息请参阅 用户管理。
2. 设备管理
完整的设备生命周期和控制管理:
- 设备配网 - 将新的 RainMaker 设备添加到账号
- 节点管理 - 检索、管理和删除已配网的设备(节点)
- 设备控制 - 控制设备参数和更新设备状态
- 服务控制 - 管理服务参数和配置
- 时序数据 - 从设备参数中检索历史数据
- 自动化 - 创建和管理自动化触发器
- 节点共享 - 与其他用户共享设备
- OTA 更新 - OTA 固件更新
- 时区管理 - 设置和更新节点时区
- 节点元数据和标签 - 管理节点标签和元数据
- 传输顺序 - 配置通信传输模式
- 批量操作 - 高效更新多个节点
