---
name: "getDoorbellService"
mode: "api"
versionRequirements:
  - { name: "@ray-js/lock-sdk", version: "1.0.0" }
title: "getDoorbellService - 获取门铃通知服务信息。"
summary: "获取门铃通知服务信息。"
---

## getDoorbellService

> [VERSION] @ray-js/lock-sdk >= 1.0.0

### 描述

获取门铃通知服务信息

### 参数

无


### 返回值

类型: `Promise<LinkageRule>`

门铃联动规则摘要（存在规则时为 truthy；详情字段由云端返回）

##### LinkageRule

| 属性 | 类型 | 描述 |
| --- | --- | --- |
| `background` | `string` | 服务卡片背景图地址 |
| `code` | `string` | 服务标识码，如门铃响铃为 `doorbell_ring` |
| `description` | `string` | 服务描述文案 |
| `displayColor` | `string` | 服务展示主色（十六进制色值） |
| `icon` | `string` | 服务图标地址 |
| `order` | `number` | 服务展示排序值，越小越靠前 |
| `title` | `string` | 服务标题文案 |
| `ruleId` | `string` | 已创建的联动规则 id；未创建时不下发 |
| `ruleVO` | `Object` | 联动规则详情；未创建规则时不下发 |

##### LinkageRule.ruleVO 的属性

| 属性 | 类型 | 必填 | 默认值 | 描述 |
| --- | --- | --- | --- | --- |
| `actions` | `Object[]` | 是 | - | 规则动作列表（满足条件后执行的动作） |
| `auditStatus` | `number` | 是 | - | 规则审核状态 |
| `boundForPanel` | `boolean` | 是 | - | 是否已绑定到面板 |
| `boundForWiFiPanel` | `boolean` | 是 | - | 是否已绑定到 Wi-Fi 面板 |
| `code` | `string` | 是 | - | 规则标识码，与服务 `code` 对应 |
| `commonField` | `string` | 是 | - | 通用扩展字段（云端下发的序列化配置） |
| `conditions` | `Object[]` | 是 | - | 规则触发条件列表 |
| `containDeviceDelete` | `boolean` | 是 | - | 规则中是否包含已删除的设备 |
| `coverIcon` | `string` | 是 | - | 规则封面图标地址 |
| `description` | `string` | 是 | - | 规则描述文案 |
| `disableTime` | `number` | 是 | - | 规则失效时间（秒级时间戳）；0 表示不失效 |
| `displayColor` | `string` | 是 | - | 规则展示主色（十六进制色值） |
| `enabled` | `boolean` | 是 | - | 规则是否已启用 |
| `forceCloudTrigger` | `boolean` | 是 | - | 是否强制走云端触发 |
| `gmtCreate` | `number` | 是 | - | 规则创建时间（毫秒级时间戳） |
| `gmtModified` | `number` | 是 | - | 规则最近修改时间（毫秒级时间戳） |
| `id` | `string` | 是 | - | 规则 id |
| `iotAutoAlarm` | `boolean` | 是 | - | 是否为 IoT 自动告警规则 |
| `isAlarmIssue` | `boolean` | 是 | - | 是否为告警下发类规则 |
| `isLogicRule` | `boolean` | 是 | - | 是否为逻辑（多条件）规则 |
| `linkageType` | `number` | 是 | - | 联动类型 |
| `localLinkage` | `boolean` | 是 | - | 是否为本地联动（不依赖云端） |
| `matchType` | `number` | 是 | - | 条件匹配方式：满足任一 / 满足全部 |
| `name` | `string` | 是 | - | 规则名称 |
| `needCleanGidSid` | `boolean` | 是 | - | 是否需要清理家庭/场景 id 关联 |
| `needValidOutOfWork` | `boolean` | 是 | - | 是否需要校验失效状态 |
| `newLocalScene` | `false` | 是 | - | 是否为新版本地场景 |
| `offGwSync` | `boolean` | 是 | - | 是否需要同步到网关 |
| `offGwSyncSuccess` | `boolean` | 是 | - | 同步到网关是否成功 |
| `orderWeight` | `number` | 是 | - | 规则排序权重 |
| `outOfWork` | `number` | 是 | - | 规则失效标记 |
| `ownerId` | `string` | 是 | - | 规则归属用户 id |
| `panelType` | `number` | 是 | - | 面板类型 |
| `permissionCode` | `string` | 是 | - | 权限码 |
| `ruleGenre` | `number` | 是 | - | 规则种类 |
| `ruleSource` | `number` | 是 | - | 规则来源 |
| `ruleType` | `number` | 是 | - | 规则类型 |
| `scenarioRule` | `boolean` | 是 | - | 是否为场景化规则 |
| `status` | `true` | 是 | - | 规则状态；`true` 表示可用 |
| `stickyOnTop` | `false` | 是 | - | 是否置顶展示 |
| `subMatchType` | `number` | 是 | - | 子条件匹配方式 |


##### LinkageRule.ruleVO.actions[] 的属性

| 属性 | 类型 | 必填 | 默认值 | 描述 |
| --- | --- | --- | --- | --- |
| `actionExecutor` | `string` | 是 | - |  |
| `actionStrategy` | `string` | 是 | - |  |
| `attribute` | `number` | 是 | - |  |
| `devDelMark` | `boolean` | 是 | - |  |
| `enabled` | `boolean` | 是 | - |  |
| `entityId` | `string` | 是 | - |  |
| `executorProperty` | `Object` | 是 | - |  |
| `extraProperty` | `Object` | 是 | - |  |
| `gmtModified` | `number` | 是 | - |  |
| `id` | `string` | 是 | - |  |
| `offGwSync` | `boolean` | 是 | - |  |
| `orderNum` | `number` | 是 | - |  |
| `ruleId` | `string` | 是 | - |  |
| `status` | `boolean` | 是 | - |  |


##### LinkageRule.ruleVO.actions[].executorProperty 的属性

| 属性 | 类型 | 必填 | 默认值 | 描述 |
| --- | --- | --- | --- | --- |
| `topic` | `string` | 是 | - |  |
| `customParameters` | `Record<string, any>` | 是 | - |  |


##### LinkageRule.ruleVO.actions[].extraProperty 的属性

| 属性 | 类型 | 必填 | 默认值 | 描述 |
| --- | --- | --- | --- | --- |
| `entityName` | `string` | 是 | - |  |
| `iconUrl` | `string` | 是 | - |  |
| `statusDescript` | `string` | 是 | - |  |
| `type` | `string` | 是 | - |  |


##### LinkageRule.ruleVO.conditions[] 的属性

| 属性 | 类型 | 必填 | 默认值 | 描述 |
| --- | --- | --- | --- | --- |
| `attribute` | `number` | 是 | - |  |
| `condType` | `number` | 是 | - |  |
| `devDelMark` | `boolean` | 是 | - |  |
| `enabled` | `boolean` | 是 | - |  |
| `entityId` | `string` | 是 | - |  |
| `entityName` | `string` | 是 | - |  |
| `entitySubIds` | `string` | 是 | - |  |
| `entityType` | `number` | 是 | - |  |
| `expr` | `any[]` | 是 | - |  |
| `exprDisplay` | `"远程开锁 : Unlock"` | 是 | - |  |
| `extraInfo` | `Record<string, any>` | 是 | - |  |
| `handleStrategy` | `string` | 是 | - |  |
| `iconUrl` | `string` | 是 | - |  |
| `id` | `string` | 是 | - |  |
| `orderNum` | `number` | 是 | - |  |
| `ruleId` | `string` | 是 | - |  |
| `serviceProvider` | `string` | 是 | - |  |
| `support` | `number` | 是 | - |  |


### 示例代码

```ts
import { getDoorbellService } from '@ray-js/lock-sdk';
const service = await getDoorbellService();
```
