2024-12-04 16:54:52 +08:00

3.4 KiB
Raw Blame History

星云SDK

{
  "plugins": {
    "starCloud": {
      "version": "1.0.0",
      "provider": "wxf2c491f734bbf82f"
    }
  }
}
const plugin = requirePlugin('starCloud')

/**
 * 初始化星云
 * @param params
 * @param {String} params.clientId 客户端Id
 * @param {String} params.clientSecret 客户端密码
 * @param {String} params.env 环境
 * @param {Boolean} params.isReportLog 是否上报日志
 */
plugin.init(params)

// 注册,后续所有方法调用返回值均为code, data, message
// code对应报错码有三部分组合构成锁端报错码+星云服务端报错码+自定义报错码
// Result类定义了所有自定义报错码具体报错码请查看Result类
const { code, data, message } = await plugin.register()
if (code === Result.Success.code) {
  // 逻辑代码   
} else {
  // 错误处理
}

/**
 * 退出登录
 * @param params
 * @param {Number} params.uid 用户ID
 */
const { code, data, message } = await plugin.logout(params)

/**
 * 选择锁
 * @param params
 * @param {AccountInfo} params.accountInfo 账号信息
 * @param {Number} params.lockId 锁ID
 * @returns {Promise<Result>}
 */
const { code, data, message } = await plugin.selectLock(params)

/**
 * 开门
 * @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)

/**
 * 获取离线密码
 * @param params
 * @param {AccountInfo} params.accountInfo 账号信息
 * @param {OfflinePassword} params.password 密码信息
 * @returns {Promise<Result>}
 */
const data = await plugin.getOfflinePassword(params)

/**
 * 自定义密码
 * @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()