跳到主要内容

入门指南

CDF Store 是专为 SDK 优化的集中式状态管理方案,能够自动处理缓存、持久化和实时更新。本节将介绍如何在项目中配置和使用 CDF Store。

NPM 包: @espressif/rainmaker-base-cdf

请按照以下步骤开始使用 CDF:


前提条件

开始之前,请确保已满足以下条件:

Node.js: 请从 官网 下载并安装 Node.js 20.17.0 或更高版本。


安装

打开终端或命令提示符,进入项目目录。

执行以下命令安装 @espressif/rainmaker-base-cdf 包:

npm install @espressif/rainmaker-base-cdf

该命令会将 CDF 库下载并安装到项目中。


导入 CDF Store

安装完成后,使用以下语法在 TypeScript 代码中导入 CDF:

import { CDF } from "@espressif/rainmaker-base-cdf";

这行代码可以从 rainmaker-base-cdf 库导入 CDF 类,运行后可以使用 CDF Store 的全部功能。


初始化 CDF Store

创建 CDF Store 实例并连接到 RainMaker 后端,需要初始化 CDF 构造函数。以下是初始化过程的示例:

import { CDF } from "@espressif/rainmaker-base-cdf";

const initApp = async () => {
const sdkConfiguration: ESPRMBaseConfig = {
// 填写 RainMaker 部署的端点 URL
baseUrl: "https://api.rainmaker.espressif.com",
version: "v1",
// 按需添加其他 SDK 配置项
};

const cdfConfig: CDFconfig = {
autoSync: true
};

try {
const espCDF = await CDF(sdkConfiguration, cdfConfig);
// CDF Store 初始化完成,可以开始使用
} catch (error) {
// 处理初始化过程中的错误
console.error("CDF initialization failed:", error);
}
};

initApp();

SDK 配置

sdkConfiguration 对象的配置方式与基础 SDK 相同。所有可用配置字段的详细说明请参阅 SDK 入门指南

注意:SDK 采用适配器模式。配网、本地发现、本地控制和通知等功能需要与原生代码交互,可通过向 SDK 提供相应适配器来实现。了解更多关于 SDK 适配器的信息

CDF 配置

cdfConfig 对象用于自定义 CDF 特有的行为:

字段类型描述
autoSyncboolean设为 true 时,会自动获取用户数据并初始化 Store。请注意,如果用户数据量较大,启用此选项可能会延长 CDF 初始化时间,请酌情使用。

后续步骤

完成 CDF 配置后,可以开始使用各个 Store:

  1. User Store - 用户数据管理
  2. Node Store - 节点数据管理
  3. Group Store - 分组数据管理
  4. Automation Store - 自动化规则管理
  5. Scene Store - 场景数据管理
  6. Schedule Store - 定时任务管理
  7. Subscription Store - 订阅数据管理

各 Store 的详细功能说明请参阅对应章节。

On this page