---
title: 方案介绍
summary: 面板开发方案能力概览，包括设备功能点管理、通用品类能力（基础库与 Panel SDK）和垂直品类能力（能力集与模块集），帮助开发者高效实现设备管理和业务需求。
questions:
  - 面板开发方案提供哪些核心能力？
  - 通用品类能力和垂直品类能力有什么区别？
  - Panel SDK 包含哪些开发工具？
  - 如何使用设备功能点管理进行设备控制？
  - 垂直品类能力的能力集和模块集分别是什么？
  - 面板开发方案支持哪些设备开发模式？
---

# 方案介绍

面板开发方案为开发者提供一系列强大而灵活的能力支持，旨在简化智能设备控制面板的开发流程。它结合**通用品类能力**和**垂直品类能力**，帮助开发者高效实现设备管理和业务需求。

## 通用品类能力

通用品类能力适用于所有智能设备开发场景，通过标准化交互与提炼开发模型提升面板小程序的开发效率。

### 设备功能点管理

功能点（DP）是设备的状态或控制指令（如开关、温度等）。面板 SDK 提供功能点的上报监听与下发控制，支持**常规模式**和 **SDM（Smart Device Model）模式**。

- **功能点上报监听**
  - **常规模式**：通过 `onDpDataChange` 监听 DP 变化，实时获取设备状态。
    ```js
    import { onDpDataChange } from '@ray-js/ray';
    onDpDataChange(res => console.log(res));
    ```
  - **SDM 模式（推荐）**：使用 `useProps` 或 `useStructuredProps` 根据 DP 配置监听变化。
    ```jsx
    import { useProps } from '@ray-js/panel-sdk';
    const switch_led = useProps(props => props.switch_led);
    ```

- **功能点下发控制**
  - **常规模式**：通过 `publishDps` 下发 DP 值，控制设备行为。
    ```js
    import { publishDps } from '@ray-js/ray';
    publishDps({
      deviceId: 'vdevoxxxxxxxxxx',
      dps: { 1: false },
      success: res => console.log(res),
      fail: error => console.log(error),
    });
    ```
  - **SDM 模式（推荐）**：使用 `useActions` 或 `useStructuredActions` 下发 DP 值。
    ```jsx
    import { useActions } from '@ray-js/panel-sdk';
    const actions = useActions();
    actions.switch_led.toggle();
    ```

### 能力构成

上述两种模式由以下两套机制支撑，按需组合使用：

- **基础库内置能力**：面板环境初始化、连接与离线逻辑、OTA 升级等标准交互流程，开箱即用。
- **Panel SDK 开发套件**：
  - **智能设备模型（SDM）**：基于 OOP 的编程模型，简化设备状态管理与控制逻辑。
  - **智能群组模型（SGM）**：提供智能群组的抽象封装与批量控制管理能力。
  - **多设备管理**：在同一小程序内自由管理多台独立设备实例，支持批量状态读取与指令下发。
  - **多语言**：适配面板业务的国际化方案，支持云端词条异步同步与本地兜底。
  - **功能点解析 / Hooks / 工具方法**：提供协议解析工具、常用 React Hooks 及纯净工具函数。

[查看通用品类能力 →](/cn/miniapp/solution-panel/ability/common)

## 垂直品类能力

垂直品类能力针对特定设备品类开放，已整合至「AI 应用开发方案」，涵盖照明、摄像机、扫地机、门锁等品类，分为两大模块：

- **能力集**：聚合垂直品类的技术资源（通信协议、品类 API、组件等），帮助开发者快速了解支持的功能边界。
- **模块集**：提供业务开发指导，助力实现具体场景需求（如智能灯的调光逻辑、扫地机的地图绘制逻辑）。

[查看垂直品类能力 →](/cn/miniapp/solution-panel/ability/special)
