---
title: 成员管理
summary: 门锁成员管理能力，包括获取成员列表、邀请成员、添加/删除普通成员及开锁方式管理，支持管理员、成员、普通成员角色。
---

## 成员管理

门锁的成员管理依托于 App 的家庭成员管理功能，在此基本上可对成员进行开锁方式管理。支持的能力有：
- 获取成员列表，支持返回成员的名称、账号、角色、开锁方式列表；
- 邀请成员加入家庭
- 获取家庭成员详细信息
- 添加普通成员
- 删除普通成员

### 支持的角色
- 管理员： 家庭管理员，对锁有最高的管理权限，可以进行所有的操作。
- 成员：可以查看与自己相关的信息，如：开门记录、某些设置项等
- 普通成员：无账号，不可进入面板

> 其中管理员、成员角色需要邀请进入家庭，普通成员则需要通过【添加普通成员 API】添加


### API

#### 获取成员列表

- 含义：获取当前锁下的成员列表，包括家庭管理员和家庭成员。锁支持大容量开锁方式时，同时会返回普通成员。
- 详细：[查看文档](/cn/miniapp/develop/ray/api/doorlock/user/getUsers)

#### 获取家庭成员详细信息

- 含义：获取家庭成员详细信息，包含名称、账号、角色、开锁方式列表等信息
- 详细：[查看文档](/cn/miniapp/develop/ray/api/doorlock/user/getUserInfo)

#### 添加普通成员

- 含义：当锁支持大容量开锁方式时，可以添加无账号的普通成员，用于管理此成员的开锁方式。
- 详细：[查看文档](/cn/miniapp/develop/ray/api/doorlock/user/addUser)

#### 删除普通成员

- 含义：当锁支持大容量开锁方式时，可通过此方法删除普通成员。
- 详细：[查看文档](/cn/miniapp/develop/ray/api/doorlock/user/removeUser)

#### 修改非管理员角色时效

- 含义：可使用此 API 修复非管理员角色的成员的时效性，成员的时效性会影响成员的开锁方式的时效。
- 详细：[查看文档](/cn/miniapp/develop/ray/api/doorlock/user/updateUserLimitTime)


## 常见问题

### Q1: 如何区分管理员和普通成员？

**A:** 通过 `userType` 字段判断：
```typescript
import { UserType } from '@ray-js/lock-sdk';

const adminList = members.filter(
  item => item.userType === UserType.ADMIN || item.userType === UserType.OWNER
);
const memberList = members.filter(
  item => item.userType !== UserType.ADMIN && item.userType !== UserType.OWNER
);
```

### Q2: 添加成员失败怎么办？

**A:** 检查：
1. 成员名称不能为空
2. 如果锁使用了小容量方案，不建议使用 `addUser` API

### Q3: 如何设置成员的时效性？

**A:** 使用 `updateUserLimitTime` API：
- `permanent: true` 表示永久有效
- `permanent: false` 需要提供 `effective` 配置对象

### Q4: 什么是未绑定的开锁方式？

**A:** 未绑定的开锁方式是指设备上已录入但未关联到用户的开锁方式（如指纹、人脸等）。可以通过 `checkUnBindUnlockMethods` 检查，并通过绑定功能关联到用户。

### Q5: 如何同步开锁方式？

**A:** 调用 `syncUnlockMethod()` 方法，该方法会同步设备端和云端的数据。

### Q6: 成员列表支持分页吗？

**A:** 支持，通过 `page` 和 `pageSize` 参数控制：
```typescript
const result = await getUsers({ page: 1, pageSize: 50 });
if (result.hasMore) {
  // 加载下一页
}
```

### Q7: 如何搜索成员？

**A:** 使用 `keyword` 参数：
```typescript
const result = await getUsers({ keyword: '搜索关键字' });
```

### Q8: 删除成员会同时删除其开锁方式吗？

**A:** 会同时删除成员及其关联的开锁方式。