更新时间:2024-06-25 01:59:30下载pdf
本文介绍了使用云开发进行智能门锁开发的相关流程和 API。智能门锁云开发对接类型主要针对客户自建服务器实现门锁相关业务。目前包括 云云对接 和 私有云对接 两种形式,对客户自有客户端没有限制,包括 微信小程序、 Web 系统、H5 应用 和 独立 App 等。
形式 | 链路 |
---|---|
云云对接 | 要求客户有自己的服务器,通过云云对接,将涂鸦 IoT 云上的数据转发到客户自有服务器。 链路:设备 ——> 涂鸦 IoT 云 ——> 客户云服务器 ——> 客户自有客户端 |
私有云对接 | 私有云模式,涂鸦将 IoT PaaS 全部打包,一次性部署到客户私有服务器。链路:设备 ——> 客户云服务器 ——> 客户自有客户端 。该模式目前处于验证阶段,而且私有化部署成本较高。 |
其中,云云对接形式的,涂鸦智能门锁云开发技术链路如下图所示:
此外,门锁产品主要以 全屋智能 PaaS 开发方式 为主。针对 家庭 和 房间 业务体系的全屋智能场景,直接使用涂鸦全屋智能应用生态(公版 App、OEM App、App SDK 和微信小程序等)连接设备,构建全屋智能管理平台。
例如:硬件厂商生产 Powered by Tuya 设备并使用 OEM App,可以方便地将 OEM App 关联到云开发全屋智能项目中,并通过涂鸦提供的 OpenAPI 获取设备、用户数据,打造大数据管理平台。
目前,门锁全量 API 已支持绝大多数品类的门锁,包括:
目前,门锁全量 API 已支持绝大多数门锁功能,包括:
门锁功能 | API 支持 |
---|---|
远程开锁 | 支持远程开门功能。 |
蓝牙开锁 | 支持近程蓝牙开锁和蓝牙网关远程解锁。 |
密码管理 | 当前 API 支持 临时密码(生效时间段和失效时间段)、动态密码(五分钟有效)、离线密码。 |
开门记录 | 支持展示全部开锁方式的开门记录和告警记录。 |
成员管理 | 支持从 App 绑定成员,成员绑定开门方式 ID。 |
图像功能 | 支持如远程开门弹框带图像、开门记录带图像功能。 |
视频功能 | 支持视频传输,视频和双向对讲功能(主要是可视对讲门锁),但是 App 必须集成 IPC SDK。也支持云云转发视频流媒体能力,该方式需要收费。 |
门锁设置 | App 下发设置到门锁,如设置音量、语音等,必须使用标准指令集。 |
门锁状态 | 门锁状态上报,如电量状态、反锁状态等,必须使用标准状态集。 |
涂鸦可提供以当前时间计,最近 7 天以内的接口调用日志查询。开发者可提供接口请求参数,在涂鸦开发者平台以工单的形式提交。涂鸦工作人员会尽快处理,一般在两小时以内做出答复。如紧急问题,可通过线下渠道找项目经理加速处理。
下表罗列了智能门锁使用的 API :
请求方式 | API | 说明 |
---|---|---|
POST | /v1.0/devices/{device_id}/door-lock/password-ticket | 获取密码加密的临时秘钥 |
POST | /v1.0/devices/{device_id}/door-lock/temp-password | 创建临时密码(支持周期性密码) |
POST | /v2.0/devices/{device_id}/door-lock/temp-password | 创建无名称的临时密码(支持周期性密码) |
POST | /v1.0/devices/{device_id}/door-lock/issue-password | 同步密码 |
GET | /v1.0/devices/{device_id}/door-lock/temp-password/{password_id} | 获取临时密码信息 |
GET | /v1.0/devices/{device_id}/door-lock/temp-passwords | 获取临时密码列表 |
GET | /v1.0/smart-lock/devices/{device_id}/stand-by-lock-temp-passwords | 获取常保活的临时密码列表 |
PUT | /v1.0/devices/{device_id}/door-lock/temp-passwords/{password_id}/modify-password | 修改临时密码 |
PUT | /v1.0/devices/{device_id}/door-lock/temp-passwords/{password_id}/freeze-password | 冻结临时密码 |
PUT | /v1.0/devices/{device_id}/door-lock/temp-passwords/{password_id}/unfreeze-password | 解冻临时密码 |
DELETE | /v1.0/devices/{device_id}/door-lock/temp-passwords/{password_id} | 删除临时密码 |
POST | /v1.0/devices/{device_id}/door-lock/offline-temp-password | 获取离线密码 |
POST | /v1.1/devices/{device_id}/door-lock/offline-temp-password | 获取离线密码-v1.1 |
PUT | /v1.0/devices/{device_id}/door-lock/offline-temp-password/{password_id} | 更新离线密码的名称 |
GET | /v1.0/devices/{device_id}/door-lock/dynamic-password | 获取动态密码 |
POST | /v1.0/devices/{device_id}/user | 新增设备成员(非家庭成员) |
PUT | /v1.0/devices/{device_id}/users/{user_id} | 修改设备成员(非家庭成员) |
PUT | /v1.0/smart-lock/devices/{device_id}/users/{user_id}/actions/role | 更新设备用户的角色 |
DELETE | /v1.0/devices/{device_id}/users/{user_id} | 删除设备成员(非家庭成员) |
GET | /v1.0/devices/{device_id}/users/{user_id} | 查询设备成员信息(非家庭成员) |
GET | /v1.1/devices/{device_id}/users/{user_id} | 查询设备成员信息(v1.1),支持获取当前用户的信息 |
GET | /v1.0/devices/{device_id}/users | 根据设备 ID查询成员信息列表(非家庭成员) |
GET | /v1.1/devices/{device_id}/users | 根据设备 ID查询成员信息列表(非家庭成员)-v1.1 |
POST | /v1.0/devices/{device_id}/device-lock/users/{user_id}/allocate | 分配门锁密码给设备成员(非家庭成员) |
POST | /v1.0/devices/{device_id}/door-lock/opmodes/actions/allocate | 将未分配的解锁方式分配给用户(支持同时分配多个) |
GET | /v1.0/smart-lock/users/{uid}/devices | 获取用户帐号所关联的设备 |
GET | /v1.0/devices/{device_id}/door-lock/user-types/{user_type}/users/{user_id}/assigned-keys | 获取门锁成员已绑定的解锁方式列表(家庭成员) |
GET | /v1.0/devices/{device_id}/door-lock/unassigned-keys | 获取门锁成员未绑定的解锁方式列表(家庭成员) |
POST | /v1.0/smart-lock/devices/{device_id}/opmodes/actions/sync | 云端发起解锁方式同步 |
PUT | /v1.0/devices/{device_id}/door-lock/actions/entry | 门锁解锁方式录入(家庭成员) |
DELETE | /v1.0/devices/{device_id}/door-lock/user-types/{user_type}/users/{user_id}/unlock-types/{unlock_type}/keys/{unlock_no} | 门锁解锁方式删除(家庭成员) |
PUT | /v1.0/devices/{device_id}/door-lock/unlock-types/{unlock_type}/actions/cancel | 取消录入解锁方式(家庭成员) |
PUT | /v1.0/devices/{device_id}/door-lock/opmodes/{unlock_sn} | 更新解锁方式名称 |
PUT | /v1.0/devices/{device_id}/door-lock/unlock-types/{unlock_type}/keys/{unlock_no}/hijack | 设置解锁方式为挟持解锁(家庭成员) |
GET | /v1.0/devices/{device_id}/door-lock/open-logs | 查询开门记录 |
*GET | /v1.1/devices/{device_id}/door-lock/open-logs | 查询开门记录 |
GET | /v1.0/devices/{device_id}/door-lock/alarm-logs | 获取门锁告警记录 |
*GET | /v1.1/devices/{device_id}/door-lock/alarm-logs | 获取门锁告警记录 |
GET | /v1.0/devices/{device_id}/door-lock/records | 获取门锁告警记录和开门记录 |
POST | /v1.0/devices/{device_id}/door-lock/records/{record_id}/actions/allocate | 将历史记录关联给某个用户 |
POST | /v1.0/devices/{device_id}/door-lock/temp-passwords/rest-password | 清空临时密码 |
GET | /v1.0/devices/{device_id}/door-lock/remote-unlocks | 获取门锁支持的远程开门方式 |
POST | /v1.0/devices/{device_id}/door-lock/remote-unlock/config | 设置门锁远程开门方式的开关 |
POST | /v1.0/devices/{device_id}/door-lock/open-door | 门锁含密开门 |
POST | /v1.0/devices/{device_id}/door-lock/password-free/open-door | 门锁免密开门 |
POST | /v1.1/devices/{device_id}/door-lock/password-free/open-door | 门锁免密开门(v1.1),支持对特定通道执行开门动作 |
PUT | /v1.0/devices/{device_id}/door-lock/password-free/open-door/cancel | 门锁免密开门撤销 |
GET | /v1.0/devices/{device_id}/door-lock/latest/media/url | 获取最近一次的远程开门或告警封面图 |
POST | /v1.0/devices/{device_id}/door-lock/advanced-password | 设置高级密码 |
GET | /v1.0/devices/{device_id}/door-lock/advanced-password | 查询高级密码 |
GET | /v1.0/devices/{device_id} | 获取设备信息(这里可以获取local key用于加解密密码) |
GET | /v1.0/smart-lock/devices/{device_id}/users | 获取家庭用户和解锁方式的信息列表 |
PUT | /v1.0/smart-lock/devices/{device_id}/users/{user_id}/schedule | 更新家庭用户的时效 |
GET | /v1.0/smart-lock/devices/{device_id}/albums-media | 获取相册列表 |
GET | /v1.0/devices/{device_id}/door-lock/absent-users | 获取被移除的用户列表 |
POST | /v1.0/smart-lock/devices/{device_id}/users/{user_ids}/actions/delete-users-issue | 控制门锁设备删除用户 |
GET | /v1.0/smart-lock/devices/{device_id}/opmodes/{user_id} | 获取用户的解锁方式列表 |
DELETE | /v1.0/smart-lock/devices/{device_id}/unlock-types/{unlock_type}/keys/{unlock_sn}/hijack | 删除解锁方式的挟持解锁 |
POST | /v1.0/smart-lock/devices/{device_id}/password-ticket | 获取密码加密的临时秘钥 |
POST | /v1.0/smart-lock/devices/{device_id}/password-free/door-operate | 远程免密开关门 |
GET | /v1.0/smart-lock/devices/{device_id}/media-view-times | 查询当前设备已经观看视频次数 |
POST | /v1.0/smart-lock/devices/{device_id}/media-view-times | 当前设备已经观看视频次数+1 |
POST | /v1.0/smart-lock/devices/{device_id}/opmodes/{opmode_id}/attribute/{attribute}/opmode-attr | 解锁方式设置开启拍照属性 |
标注星号(*)的 API 仅支持老版本。
您还可以参考以下文档了解更多详情。
文档 | 适用功能 |
---|---|
涂鸦开放平台-标准指令集 | 门锁设置,如音量调节、语言切换 |
涂鸦开放平台-设备控制 | 获取设备标准指令集 |
全局错误码 | 查看功能开发中会产生的全局错误码 |
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈