---
title: Panel SDK
---

# Panel SDK

## 1.16.x

### 1.16.1 (2026-04-28)

**新增功能**
- `SmartDevicesManager`: 新增多设备管理能力，支持在同一小程序内通过 `SdmProvider.deviceManager` 接入多台独立设备，并提供 `add`、`batchAdd`、`delete`、`batchDelete` 等设备管理 API
- 多设备 Hooks：新增 `useDevices`、`useDevicesProps`、`useDevicesActions`、`useStructuredDevicesProps`、`useStructuredDevicesActions` 等能力，支持按设备读取 DP 状态、下发指令，并可通过 `typings/sdm.d.ts` 实现按设备 key 精确绑定 Schema 的 TypeScript 类型推导，详见 [多设备管理](/cn/miniapp/solution-panel/ability/common/multi-device/usage)

## 1.15.x

### 1.15.0 (2026-02-26)

**新增功能**
- `matter-kit`: 新增 Matter 照明设备面板 DP 功能点处理拦截器，内置支持 Matter 协议与标准 DP 协议之间的双向转换，自动处理设备信息、DP 状态上报和下发的转换，提供 `checkIsMatterDevice`、`getMatterRoad`、`checkIsMatterHasWhite` 等工具函数，以及 `useOriginMatterTemp`、`useColourData` 等 Hooks，详见 [matter-kit](/cn/miniapp/solution-panel/ability/common/sdm/interceptors/matterkit/usage)
- `SmartLampAdvancedAbility`: 新增照明高级能力，支持高级色温及千分之一亮度能力检测、色温/亮度值转换、VAS 关键点信息获取，详见 [SmartLampAdvancedAbility](/cn/miniapp/solution-panel/ability/common/sdm/abilities/lampAdv/usage)
- `SmartSupportAbility`: 新增 `isGprsDevice`、`isBluetoothDevice`、`isBleMeshDevice`、`isCat1Device`、`isBeaconDevice`、`isLteCat4Device`、`isLteCat10Device`、`isLteCatMDevice`、`isThreadDevice` 共 9 个设备类型判断 API

## 1.14.x

### 1.14.0 (2025-11-06)

**新增功能**
- `I18N`: 新增 `getFaultLang` API，用于获取故障类型功能点（Bitmap 类型）的多语言字符串，支持按位解析故障码并返回对应的多语言描述
- `SmartDeviceModel` & `SmartGroupModel`: 新增 `queryDps` API，适配不同 App 版本和设备协议主动查询 DP 功能点状态
- `dp-kit`: 新增 `ignoreDpDataResponse.timeout` / `customRule` 支持自定义 DP 上报事件的防抖和自定义过滤规则
- `onMusic2RgbChange`: 新增 `throttle` 参数支持自定义节流时间

## 1.13.x

### 1.13.9 (2025-09-04)

**问题修复**
- `SmartSupportAbility`: 修复群组环境下设备类型判断不准确的问题

### 1.13.8 (2025-08-19)

**问题修复**
- `useStructuredProps`: 修复部分设备群组环境下结构化数据无法更新的 Bug

### 1.13.7 (2025-06-12)

**新增功能**
- `usePanelConfig`: iot 字段中支持返回 `subUiid` 字段
- `SmartGroupModel`: getDevInfo API 支持返回第一个设备信息

**问题修复**
- `I18N`: 修复继承复写 `formatValue` 及 `getLang` 时会导致 `formatValue` key 值重复取值异常

**优化调整**
- 使用 lodash-es 按需引用避免全量引用整个 lodash 包
- `usePanelConfig`: 优化 setState 逻辑减少不必要的更新
- `useStructuredActions`: 类型改从 formatter 入参中提取下发结构体确保类型提示准确

### 1.13.6 (2025-05-27)

**问题修复**
- `offMusic2RgbChange`: 修复取消监听无法 resolve 的问题

**优化调整**
- `initPanelEnvironment`: 新增 `shouldConnectBleAuto`、`autoCheckActivation`、`disableOtaDialog` 的类型提示声明，注意该三项功能需基础库 >= 2.27.0，Panel SDK 1.13.6 仅增加类型提示声明

### 1.13.5 (2025-04-22)

**新增功能**
- 新增 `DreamlightSceneModeTransformer` 协议解析工具

### 1.13.3 (2025-03-18)

**问题修复**
- 修复 `SmartStorageAbility`，兼容安卓在群组环境下 `getLaunchOptionsSync().query` 返回的 `groupId` 出现数值类型时导致的存储异常

### 1.13.2 (2025-02-13)

**问题修复**
- 修复 `SmartStorageAbility` 功能，调整可保存的业务数据上限至 900，避免出现由于内部元数据超限导致的业务数据长度未超过 1024 就报错的现象

**新增功能**
- 新增 `initPanelEnvironment` 中 `faultDpCode` 属性，支持自定义默认告警提示框的故障功能点
- 新增 `onMusic2RgbChange` 中 `musicOption` 及 `callback` 返回 `customProps` 支持业务透传使用自定义属性
- 新增 `onMusic2RgbChange` 中 `callback` 返回 `db` 分贝值及 `index` 灵敏度

### 1.13.1 (2024-11-01)

**问题修复**
- 修复 `usePanelConfig` 通过在 App 支持获取配置的情况下，未针对数值或布尔型值进行强制类型转换，并兼容异常数据情况

**新增功能**
- 新增 `usePanelConfig` 群组环境默认支持获取主 pid 的云能力配置
- 新增 `DpKit` Beacon 相关 Intercepetors 默认值支持异步初始化
- 新增 `SmartStorageAbility` 增加 getAll / setAll 能力

## 1.12.x

### 1.12.1 (2024-10-15)

**问题修复**
- 修复 `SmartAlarmAility` 能力内部接口 **gid** 透传丢失的问题

**优化调整**
- 优化 `SdmProvider` value 类型适配 SmartGroupModel 群组模型
- 优化 `createDpKit` 支持在 panel-sdk 入口导出

```diff
-import { createDpKit } from '@ray-js/panel-sdk/lib/sdm/interceptors/dp-kit';
+import { createDpKit } from '@ray-js/panel-sdk';
```

### 1.12.0 (2024-06-27)

**新增功能**
- 新增 `usePanelConfig` Hooks，详见 [usePanelConfig](/cn/miniapp/solution-panel/ability/common/hooks/usePanelConfig)

## 1.11.x

### 1.11.0 (2024-06-25)

**新增功能**
- 新增 `SmartTapToRunAbility` 一键执行标准能力（需要依赖 `@ray-js/ray@1.5.15` 以后的版本）
- 新增 `dp-kit` 以下 `sendOptions` 配置能力支持：
  - `ignoreDpDataResponse`: 忽略 dp 上报配置，默认不开启
  - `synchronizeDevProperty`: 和云端设备属性同步，默认不开启

## 1.10.x

### 1.10.5 (2024-05-10)

**问题修复**
- 修复 `onMusic2RgbChange` 兼容回调返回的分贝数据字段名不一致

### 1.10.4 (2024-04-18)

**优化调整**
- 优化 `publishDps` 在 dps 传参为空对象的情况下，不去调用下发接口，避免出现异常报警

### 1.10.3 (2024-04-15)

**问题修复**
- 修复 `Storage` 能力可能无法返回云端数据的问题

### 1.10.2 (2024-04-07)

**优化调整**
- 优化 `@ray-js/ray` 依赖统一换成 *，默认兼容其所有版本

### 1.10.1 (2024-03-20)

**优化调整**
- 优化 `Storage` 能力新增字段超限提示

### 1.10.0 (2024-02-28)

**新增功能**
- 新增 `useSupport` Hooks，详见 [useSupport](/cn/miniapp/solution-panel/ability/common/sdm/hooks/useSupport)

**问题修复**
- 修复 `useStructuredProps` 在设备初始化处理 raw 型功能点序列化时丢失默认空字符串导致无法通过 useStructuredProps 获取结构化数据的问题
- 修复 `SmartStorageAbility` 及 `onMusic2RgbChange` 一些兼容性问题，建议使用到此类能力及时升级

**优化调整**
- 优化 `I18N` 多语言支持 TS 多语言值类型自动推导提示
- 优化 `SmartGroupModel` 也开始支持部分通用能力，如 `SmartStorageAbility` 及 `SmartSupportAbility`

## 1.9.x

### 1.9.0 (2023-11-08)

**新增功能**
- 新增 `onMusic2RgbChange` 监听音乐律动转 RGB API，详见 [onMusic2RgbChange](/cn/miniapp/develop/ray/api/light/music-rhythms/onMusic2RgbChange)
- 新增 `offMusic2RgbChange` 取消监听音乐律动转 RGB API，详见 [offMusic2RgbChange](/cn/miniapp/develop/ray/api/light/music-rhythms/offMusic2RgbChange)
- 新增 `SmartSupportAbility` 设备支持状态能力，详见 [SmartSupportAbility](/cn/miniapp/solution-panel/ability/common/sdm/abilities/support/usage)
- 新增 `SmartStorageAbility` 设备存储能力，详见 [SmartStorageAbility](/cn/miniapp/solution-panel/ability/common/sdm/abilities/storage/usage)

## 1.8.x

### 1.8.0 (2023-10-24)

**新增功能**
- 新增 `SmartAlarmAbility` 告警推送能力，详见 [SmartAlarmAbility](/cn/miniapp/solution-panel/ability/common/sdm/abilities/usage)
- 新增 `useProtocolRun` Hooks，详见 [useProtocolRun](/cn/miniapp/solution-panel/ability/common/hooks/useProtocolRun)
- 新增 `useIsSigmeshGatewayConnected` Hooks，详见 [useIsSigmeshGatewayConnected](/cn/miniapp/solution-panel/ability/common/hooks/useIsSigmeshGatewayConnected)
<!-- - 新增 DP & Device 支持状态工具，详见 [DP & Device 支持状态](/cn/miniapp/solution-panel/ability/common/utils/support) -->
- 新增照明系列协议解析工具 `ColourTransformer`、`MusicTransformer`、`MicMusicTransformer`、`SmearTransformer`，详见 [协议工具](/cn/miniapp/solution-panel/ability/common/protocol)
- 新增颜色系列转换工具 `kelvin2rgb`、`rgb2kelvin`、`brightKelvin2rgb`、`rgb2RgbString`、`rgb2hsb`，详见 [颜色工具](/cn/miniapp/solution-panel/ability/common/utils/color)
- 新增 JSON 转换工具 `stringifyJSON`，详见 [JSON 工具](/cn/miniapp/solution-panel/ability/common/utils/json)
- 新增 DP 解析工具，详见 [DP 解析](/cn/miniapp/solution-panel/ability/common/utils/conversion)

## 1.7.x

### 1.7.1 (2023-10-24)

**问题修复**
- 修复 `I18N.formatValue` 无法获取线上多语言的问题

### 1.7.0 (2023-09-07)

**新增功能**
- 新增 `dp-kit` 拦截器，详见 [dp-kit](/cn/miniapp/solution-panel/ability/common/sdm/interceptors/dpkit/usage)

## 1.6.x

### 1.6.1 (2023-08-17)

**问题修复**
- 修复 InitPanelEnvironment 在 App.onReady 时不一定能触发到的问题

### 1.6.0 (2023-08-14)

**新增功能**
- 新增智能设备模型及智能群组模型 publishDps 方法，支持批量下发控制设备功能点
- 新增微信端云能力配置支持

## 1.5.x

### 1.5.0 (2023-06-13)

**新增功能**
- 新增 `SmartGroupModel` 智能群组模型支持

```diff
- import { SmartDeviceModel } from '@ray-js/panel-sdk';
+ import { SmartDeviceModel, SmartGroupModel } from '@ray-js/panel-sdk';
+ import { getLaunchOptionsSync } from '@ray-js/ray';

+ const isGroupDevice = !!getLaunchOptionsSync()?.query?.groupId;

type SocketSchema = typeof import('./schema').defaultSchema;

const devices = {
-   socket: new SmartDeviceModel<typeof import('./schema').defaultSchema>(),
+   socket: isGroupDevice
+     ? new SmartGroupModel<SocketSchema>()
+     : new SmartDeviceModel<SocketSchema>(),
};
```

## 1.4.x

### 1.4.1 (2023-04-27)

**优化调整**
- 兼容 `TuyaLink` 协议设备不存在 `schema` 导致崩溃

### 1.4.0 (2023-04-13)

**新增功能**
- 增加更多微信小程序支持

## 1.3.x

### 1.3.3 (2023-04-03)

**优化调整**
- 兼容 `quickjs`

### 1.3.2 (2023-03-08)

**问题修复**
- 修复 getWeathers API

### 1.3.0 (2023-02-07)

**新增功能**
- 开始支持微信小程序

## 1.2.x

### 1.2.1 (2022-11-16)

**问题修复**
- 修复 `useDevice` 获取值可能不是最新
- 修复 `useDevInfo` 卸载时 `unregisterDeviceListListener` 导致无法监听到上报

### 1.2.0 (2022-11-16)

**新增功能**
- 新增 `useActions` Hooks

**优化调整**
- `useSdmProps` -> `useProps`
- `useSdmDevice` -> `useDevice`
- 合并 sdm 至 panel-sdk 包

```diff
- import { SmartDeviceModel } from '@tuya-miniapp/sdm';
- import { SdmProvider, useSdmProps } from '@ray-js/sdm-react';
+ import { SmartDeviceModel, SdmProvider, useProps } from '@ray-js/panel-sdk';
```

## 1.0.x

### 1.0.4 (2022-10-21)

**问题修复**
- 修复 dp code 不存在时使用 `useSdmProps` 导致的崩溃

```typescript
useSdmProps((props) => props.switch_not_exist); // crash before 1.0.4

useSdmProps((props) => props.switch_not_exist); // return null now
```
