方案介绍

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

通用品类能力

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

设备功能点管理

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

  • 功能点上报监听

    • 常规模式:通过 onDpDataChange 监听 DP 变化,实时获取设备状态。
      import { onDpDataChange } from '@ray-js/ray';
      onDpDataChange(res => console.log(res));
    • SDM 模式(推荐):使用 useProps 或 useStructuredProps 根据 DP 配置监听变化。
      import { useProps } from '@ray-js/panel-sdk';
      const switch_led = useProps(props => props.switch_led);
  • 功能点下发控制

    • 常规模式:通过 publishDps 下发 DP 值,控制设备行为。
      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 值。
      import { useActions } from '@ray-js/panel-sdk';
      const actions = useActions();
      actions.switch_led.toggle();

能力构成

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

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

查看通用品类能力 →

垂直品类能力

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

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

查看垂直品类能力 →