---
name: "getLinkageDeviceList"
mode: "api"
versionRequirements:
  - { name: "@ray-js/ray", version: "1.4.61" }
title: "getLinkageDeviceList - 查询家庭下支持联动的所有设备"
---

## getLinkageDeviceList

> [VERSION] @ray-js/ray >= 1.4.61

### 描述

查询家庭下支持联动的所有设备

### 参数

`Params`

| 参数 | 类型 | 必填 | 描述 |
| --- | --- | --- | --- |
| `params` | `IGetLinkageDeviceList` | 是 | 查询设备列表参数 |

### 返回值

类型: `Promise<ILinkageDevice[]>`

支持联动的设备列表

##### ILinkageDevice

| 属性 | 类型 | 描述 |
| --- | --- | --- |
| `category` | `string` | 设备品类 |
| `datapoints` | `any[]` | 设备 DP 点列表 |
| `devId` | `string` | 设备 ID |
| `iconUrl` | `string` | 设备图标地址 |
| `name` | `string` | 设备名称 |
| `productId` | `string` | 产品 ID |

### 引用对象

##### `interface` IGetLinkageDeviceList

| 属性 | 类型 | 描述 |
| --- | --- | --- |
| `gid` | `number` | 家庭 ID |
| `sourceType` | `string` | 请求类型 |


### 示例代码

```typescript
import { getLinkageDeviceList } from '@ray-js/ray';

const fetchDevices = async () => {
  try {
    const devices = await getLinkageDeviceList({
      gid: 12345678,
      sourceType: 'condition',
    });
    devices.forEach(dev => {
      console.log(`设备: ${dev.name}, ID: ${dev.devId}`);
    });
  } catch (err) {
    console.error('查询失败:', err);
  }
};
```
