SmartGroupModel(options?: SmartGroupModelOptions)
版本要求:
@ray-js/panel-sdk≥1.5.0
所有 DP 相关 API 的类型均由泛型 S(ReadonlyDpSchemaList)在编译期推导,展开完整说明
所有 DP 相关 API 的类型均由泛型 S(ReadonlyDpSchemaList)在编译期推导,
S 来自业务项目 devices/schema.ts 中 as const 声明的 Schema 常量。Schema property.type 与 TypeScript 类型映射:
- bool → boolean(true/false)
- value → number(受 property.min/max/step 运行时约束,类型仅为 number)
- enum → props 为 string;publishDps 入参为 property.range 字面量联合(如 'white' | 'colour')
- bitmap → number(位运算值,配合 actions 的 on(idx)/off(idx) 操作指定 bit 位)
- string → string
- raw(外层 type='raw')→ string与 SmartDeviceModel 类似,但专用于群组设备场景。
群组设备共享同一套 DP Schema,控制指令会下发给群组内所有设备。Schema 必须使用 as const 断言,否则字面量类型推导退化。
S 来自业务项目 devices/schema.ts 中 as const 声明的 Schema 常量。Schema property.type 与 TypeScript 类型映射:
- bool → boolean(true/false)
- value → number(受 property.min/max/step 运行时约束,类型仅为 number)
- enum → props 为 string;publishDps 入参为 property.range 字面量联合(如 'white' | 'colour')
- bitmap → number(位运算值,配合 actions 的 on(idx)/off(idx) 操作指定 bit 位)
- string → string
- raw(外层 type='raw')→ string与 SmartDeviceModel 类似,但专用于群组设备场景。
群组设备共享同一套 DP Schema,控制指令会下发给群组内所有设备。Schema 必须使用 as const 断言,否则字面量类型推导退化。
描述
智能群组设备模型,提供群组设备功能点状态管理、事件监听、指令下发等核心能力
参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| 否 | 群组模型初始化配置,包含 abilities(高级能力列表)和 interceptors(事件拦截器)等选项 |
返回值
类型:SmartGroupModel
SmartGroupModel 实例
方法
| 方法名 | 说明 |
|---|---|
| init | 异步初始化智能群组后再返回其实例 |
| onInitialized | 注册智能群组模型初始化完毕事件回调 |
| offInitialized | 取消智能群组模型初始化完毕事件监听 |
| getDevInfo | 获取智能群组下的第一个设备信息并和智能群组合并后的数据 |
| getGroupInfo | 获取智能群组信息 |
| getDpSchema | 获取智能群组 DP Schema(DP 功能点描述)映射表 |
| getDpState | 获取智能群组功能点状态 |
| getNetwork | 获取智能群组所处环境的网络状态 |
| getBluetooth | 获取智能群组所处环境的蓝牙状态 |
| onDpDataChange | 监听群组设备 DP 功能点变更事件 |
| onDeviceOnlineStatusUpdate | 监听智能群组在线状态变更 |
| onDeviceInfoUpdated | 监听智能群组设备信息变更事件 |
| onGroupDpDataChangeEvent | 监听群组设备 DP 功能点变更事件 |
| onGroupInfoChange | 监听智能群组信息变更事件 |
| onNetworkStatusChange | 监听网络状态变化事件 |
| onBluetoothAdapterStateChange | 监听蓝牙适配器状态变化事件 |
| offDpDataChange | 取消监听智能群组 DP 功能点变更事件 |
| offDeviceOnlineStatusUpdate | 取消监听智能群组在线状态变更 |
| offDeviceInfoUpdated | 取消监听智能群组设备信息变更事件 |
| offGroupDpDataChangeEvent | 取消监听群组设备 DP 功能点变更事件 |
| offGroupInfoChange | 取消监听智能群组信息变更事件 |
| offNetworkStatusChange | 取消监听网络状态变化事件 |
| offBluetoothAdapterStateChange | 取消监听蓝牙适配器状态变化事件 |
| publishDps | 批量控制智能群组 DP 功能点 |
| queryDps | 主动查询设备功能点状态(群组不支持此操作) |
| destroy | 销毁当前智能群组实例,同时销毁所有事件监听器 |