2024-12-03 14:35:22 +08:00
|
|
|
|
## 星云SDK
|
2024-12-03 13:56:22 +08:00
|
|
|
|
|
2024-12-03 14:35:22 +08:00
|
|
|
|
```json
|
|
|
|
|
|
{
|
|
|
|
|
|
"plugins": {
|
|
|
|
|
|
"starCloud": {
|
|
|
|
|
|
"version": "1.0.0",
|
|
|
|
|
|
"provider": "wxf2c491f734bbf82f"
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
```
|
2024-12-03 13:56:22 +08:00
|
|
|
|
|
2024-12-03 14:35:22 +08:00
|
|
|
|
```javascript
|
|
|
|
|
|
const plugin = requirePlugin('starCloud')
|
2024-12-03 13:56:22 +08:00
|
|
|
|
|
2024-12-03 14:35:22 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* 初始化星云
|
|
|
|
|
|
* @param params
|
|
|
|
|
|
* @param {String} params.clientId 客户端Id
|
|
|
|
|
|
* @param {String} params.clientSecret 客户端密码
|
|
|
|
|
|
* @param {String} params.env 环境
|
|
|
|
|
|
* @param {Boolean} params.isReportLog 是否上报日志
|
|
|
|
|
|
*/
|
|
|
|
|
|
plugin.initStarCloud(params)
|
2024-12-03 13:56:22 +08:00
|
|
|
|
|
2024-12-03 14:35:22 +08:00
|
|
|
|
// 注册,后续所有方法调用返回值均为code, data, message
|
|
|
|
|
|
// code对应报错码有三部分组合构成,锁端报错码+星云服务端报错码+自定义报错码
|
|
|
|
|
|
// Result类定义了所有自定义报错码,具体报错码请查看Result类
|
|
|
|
|
|
const { code, data, message } = await plugin.register()
|
|
|
|
|
|
if (code === Result.Success.code) {
|
|
|
|
|
|
// 逻辑代码
|
|
|
|
|
|
} else {
|
|
|
|
|
|
// 错误处理
|
|
|
|
|
|
}
|
2024-12-03 13:56:22 +08:00
|
|
|
|
|
2024-12-03 14:35:22 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* 退出登录
|
|
|
|
|
|
* @param params
|
|
|
|
|
|
* @param {Number} params.uid 用户ID
|
|
|
|
|
|
*/
|
|
|
|
|
|
const { code, data, message } = await plugin.logout(params)
|
2024-12-03 13:56:22 +08:00
|
|
|
|
|
2024-12-03 14:35:22 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* 选择锁
|
|
|
|
|
|
* @param params
|
|
|
|
|
|
* @param {AccountInfo} params.accountInfo 账号信息
|
|
|
|
|
|
* @param {Number} params.lockId 锁ID
|
|
|
|
|
|
* @returns {Promise<Result>}
|
|
|
|
|
|
*/
|
|
|
|
|
|
const { code, data, message } = await plugin.selectLock(params)
|
2024-12-03 13:56:22 +08:00
|
|
|
|
|
2024-12-03 14:35:22 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* 开门
|
|
|
|
|
|
* @param params
|
|
|
|
|
|
* @param {AccountInfo} params.accountInfo 账号信息
|
|
|
|
|
|
* @param {String} params.type 开门方式 close: 关门 open: 开门
|
|
|
|
|
|
* @param {Boolean} params.disconnect 操作后是否断开连接
|
|
|
|
|
|
* @returns {Promise<Result>}
|
|
|
|
|
|
*/
|
|
|
|
|
|
const { code, data, message } = await plugin.openDoor(params)
|
2024-12-03 13:56:22 +08:00
|
|
|
|
|
2024-12-03 14:35:22 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* 获取离线密码
|
|
|
|
|
|
* @param params
|
|
|
|
|
|
* @param {AccountInfo} params.accountInfo 账号信息
|
|
|
|
|
|
* @param {OfflinePassword} params.password 密码信息
|
|
|
|
|
|
* @returns {Promise<Result>}
|
|
|
|
|
|
*/
|
|
|
|
|
|
const data = await plugin.getOfflinePassword(params)
|
2024-12-03 13:56:22 +08:00
|
|
|
|
|
2024-12-03 14:35:22 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* 自定义密码
|
|
|
|
|
|
* @param params
|
|
|
|
|
|
* @param {AccountInfo} params.accountInfo 账号信息
|
|
|
|
|
|
* @param {CustomPassword} params.password 密码信息
|
|
|
|
|
|
* @param {Boolean} params.disconnect 操作后是否断开连接
|
|
|
|
|
|
* @returns {Promise<Result>}
|
|
|
|
|
|
*/
|
|
|
|
|
|
const data = await plugin.customPassword(params)
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 搜索蓝牙设备
|
|
|
|
|
|
*/
|
|
|
|
|
|
await plugin.searchDevice(searchDevice)
|
|
|
|
|
|
const searchDevice = async result => {
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 停止搜索
|
|
|
|
|
|
*/
|
|
|
|
|
|
await plugin.stopSearchDevice()
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 绑定设备
|
|
|
|
|
|
* @param params
|
|
|
|
|
|
* @param {AccountInfo} params.accountInfo 账号信息
|
|
|
|
|
|
* @param {String} params.name 设备名称
|
|
|
|
|
|
* @returns {Promise<Result>}
|
|
|
|
|
|
*/
|
|
|
|
|
|
const data = await plugin.bindDevice(params)
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 移除坏锁
|
|
|
|
|
|
* @param params
|
|
|
|
|
|
* @param {AccountInfo} params.accountInfo 账号信息
|
|
|
|
|
|
* @param {List[int]} params.lockIds 锁Id列表
|
|
|
|
|
|
* @returns {Promise<Result>}
|
|
|
|
|
|
*/
|
|
|
|
|
|
const data = await plugin.removeBadLock(params)
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 删除锁
|
|
|
|
|
|
* @param params
|
|
|
|
|
|
* @param {AccountInfo} params.accountInfo 账号信息
|
|
|
|
|
|
*/
|
|
|
|
|
|
const data = await plugin.deleteLock(params)
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 修改管理员密码
|
|
|
|
|
|
* @param params
|
|
|
|
|
|
* @param {AccountInfo} params.accountInfo 账号信息
|
|
|
|
|
|
* @param {String} params.adminPwd 管理员密码
|
|
|
|
|
|
* @param {Boolean} params.disconnect 操作后是否断开连接
|
|
|
|
|
|
* @returns {Promise<Result>}
|
|
|
|
|
|
*/
|
|
|
|
|
|
const data = await plugin.updateAdminPassword(params)
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 同步全部开门记录
|
|
|
|
|
|
* @param params
|
|
|
|
|
|
* @param {AccountInfo} params.accountInfo 账号信息
|
|
|
|
|
|
* @param {Boolean} params.disconnect 操作后是否断开连接
|
|
|
|
|
|
* @returns {Promise<Result>}
|
|
|
|
|
|
*/
|
|
|
|
|
|
const data = await plugin.syncAllOpenRecord(params)
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 获取服务器时间
|
|
|
|
|
|
* @returns {Promise<Result>}
|
|
|
|
|
|
*/
|
|
|
|
|
|
const data = await plugin.getServerTimestamp()
|
|
|
|
|
|
```
|