---
name: "SmartGroupModel.init"
mode: "api"
versionRequirements:
  - { name: "@ray-js/panel-sdk", version: "1.5.0" }
---

## SmartGroupModel.init

> [VERSION] @ray-js/panel-sdk >= 1.5.0

> 💡 与 SmartDeviceModel.init 类似，但针对群组设备。
> 群组设备共享同一套 DP Schema，控制指令会下发给群组内所有设备。

### 描述

异步初始化智能群组后再返回其实例

### 参数

`Params`

| 参数 | 类型 | 必填 | 描述 |
| --- | --- | --- | --- |
| `groupId` | `string` | 否 | 群组 ID，不传则从小程序环境启动参数自动获取 |

### 返回值

类型: `Promise<SmartGroupModel>`

初始化完成的智能群组设备模型实例

### 示例代码

#### 基础初始化

```typescript
import { SmartGroupModel } from '@ray-js/panel-sdk';

const schema = [
  { code: 'switch_led', property: { type: 'bool' }, type: 'obj', mode: 'rw', id: 1, name: 'Switch' },
  { code: 'brightness', property: { type: 'value', min: 10, max: 1000, step: 1 }, type: 'obj', mode: 'rw', id: 2, name: 'Brightness' },
] as const;

type Schema = typeof schema;
const group = new SmartGroupModel<Schema>();
await group.init();                   // 自动从小程序启动参数获取 groupId
await group.init('your-group-id');   // 或指定 groupId
```
