更新时间:2024-06-20 08:57:43下载pdf
本文介绍了涂鸦智能 Wi-Fi 门锁应用中涉及的 DP 功能、帧格式及其使用方法,适用于 Wi-Fi Pro 基础及拍照门锁公版项目。
下表罗列了本文涉及的部分名词和解释,更多详情,请参考 名词解释。
名称 | 解释 |
---|---|
DP | 全称为 Data Point,同时被称为 DP 点。一个 DP 指的就是“一个功能点”或者“一条/对指令码”。 |
PID | 全称为 Product ID,表示描述一类产品功能(DP)的集合。 在 涂鸦开发者平台 创建的每一个产品都会产生一个唯一的产品编号, 关联了产品具体的功能点、App 控制面板、出货信息等所有跟这个产品相关的信息。 |
uuid | 设备的唯一识别 ID,又称作 License,长度是 20 位。 |
authkey | 设备在云端注册时需要的密钥,和 UUID 是一一对应的关系,长度是 32 位。 |
固件 key | 固件在 涂鸦开发者平台 的唯一身份标识。 |
成员 | 也称作 用户,是同一个概念。 |
成员 ID | 1 字节无符号整数,指成员编号(也称为用户编号),由服务器分配下发,本地无需维护,取值范围 0x01~0x64,其他为保留值。 |
硬件 ID | 1 字节无符号整数,指开锁方式相关的硬件编号,由本地分配维护,每一个开锁方式对应一个硬件 ID,例如:指纹一硬件 ID 为 0x01 ,密码一硬件 ID 为 0x02,取值范围 0x00~0xFE,0xFF 为保留值。 |
时效性 | 某个具体的开锁方式(例如指纹或密码)在指定的时间范围内有效。 |
自动 落锁 |
是指门锁设备开锁一段时候(时长可配置)后自动上锁。 |
劫持 报警 |
创建开门方式(如密码、指纹)时选择开启劫持功能,当用户在特殊情况下用该开门方式解锁时,上报对应的解锁记录,云端关联进行告警,电话/短信通知亲朋。 |
下发 | 数据传输的方向,例如:手机->云端-> Wi-Fi 设备。 |
上报 | 数据传输的方向,例如:Wi-Fi 设备->云端->手机。 |
使用涂鸦 Wi-Fi 门锁方案(模组 或 SDK)开发时,dp_data_len
的长度为 2 个字节。 DP 格式定义请参见下表:
字段 | 长度(bytes) | 说明 |
---|---|---|
dp_id | 1 | DP 的指令码 |
dp_type | 1 | DP 的数据类型 |
dp_data_len | 2 | DP 的数据长度 |
dp_data_value | dp_data_len | DP 的数据内容 |
远程添加流程
开门方式能力关联
功能 | 数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | |||
---|---|---|---|---|---|---|---|---|
查询创建类型 | 上报 | 34 | bool | 0x01 | 查询状态(1 字节) | |||
0x00:无效 0x01:生效 |
||||||||
创建类型回复 | 下发 | 35 | enum | 0x01 | 创建类型(1 字节) | |||
0x00:指纹 0x01:门卡 0x02:密码 0x03:管理员指纹 0x04:管理员门卡 0x05:管理员密码 |
||||||||
远程创建成功 | 下发 | 37 | bool | 0x01 | 创建结果(1 字节) | |||
0x00:失败 0x01:成功 |
||||||||
取消远程创建 | 上报/下发 | 42 | bool | 0x01 | 状态(1 字节) | |||
0x00:取消失败 0x01:取消成功 |
||||||||
门锁录入完成 | 上报 | 62 | raw | 0x05 | 执行功能 (1 字节) |
硬件 ID (2 字节) |
录入结果 (1 字节) |
关联结果 (1 字节) |
功能说明 | 硬件 ID | 录入结果 | 关联结果 | |||||
关联本地能力 | 下发 | 60 | raw | 0x04 | 关联方式 (1 字节) |
开锁方式类型 (1 字节) |
硬件 ID (2 字节) |
|
关联方式 | 0x00:密码 0x01:指纹 0x02:门卡 0x03:人脸 0x04:指静脉 0x05:掌纹 0x06:虹膜 |
0x0000~0x03E7 (0~999, 10 进制) |
功能 | 数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value |
---|---|---|---|---|---|
门锁允许远程删除 | 上报 | 38 | bool | 0x01 | 是否允许(1 字节) |
0x00:不允许 0x01:允许 |
|||||
远程删除指纹 | 下发 | 39 | value | 0x04 | 硬件 ID(4 字节) |
0x00-0xFE | |||||
远程删除密码 | 下发 | 41 | value | 0x04 | 硬件 ID(4 字节) |
0x00-0xFE | |||||
远程删除门卡 | 下发 | 43 | value | 0x04 | 硬件 ID(4 字节) |
0x00-0xFE | |||||
远程删除人脸 | 下发 | 51 | value | 0x04 | 硬件 ID(4 字节) |
0x00-0xFE | |||||
远程删除指静脉 | 下发 | 52 | value | 0x04 | 硬件 ID(4 字节) |
0x00-0xFE | |||||
远程删除掌纹 | 下发 | 53 | value | 0x04 | 硬件 ID(4 字节) |
0x00-0xFE | |||||
远程删除虹膜 | 下发 | 54 | value | 0x04 | 硬件 ID(4 字节) |
0x00-0xFE | |||||
远程删除回复 | 上报 | 40 | bool | 0x01 | 状态(1 字节) |
0x00:删除失败 0x01:删除成功 |
当存在本地管理员开锁方式不可删的情况时,可通过该 DP 上报(依次包含密钥类型+管理员类型+操作权限+对应密钥 ID),App 将标记该 ID 为不可删除。
数据 方向 |
dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
上报 | 61 | raw | len | 开锁方式类型 (1 字节) |
ID 类型 (1 字节) |
操作权限 (1 字节) |
硬件 ID (2 字节) |
|||||
0x00:密码 0x01:指纹 0x02:门卡 0x03:人脸 0x04:指静脉 0x05:掌纹 0x06:虹膜 |
0x00:默认,不做任何动作 0x01:超级管理员 0x02:普通管理员 |
0x00:不允许删除 0x01:允许删除 |
0x0000~0x03E7 (0~999, 10 进制) |
片区#1 (2 字节) | 片区#2 (2 字节) | 片区#3 (2 字节) | .... | 片区#n (2 字节) | ||||
---|---|---|---|---|---|---|---|---|
片区 id-1 | bitmap-1 | 片区 id-2 | bitmap-2 | 片区 id-3 | bitmap-3 | .... | 片区 id-n | bitmap-n |
假如编码后数据序列为:0x01 0x03 0x02 0x01 0x21 0x01
,解析如下:
01 03 // 00000001 00000011 即 1 片区存在 0、1 号开锁方式,实际开锁方式编号为 0、1
02 01 // 00000010 00000001 即 2 片区存在 0 号开锁方式,实际开锁方式编号为 8 =(片区-1)*8
21 01 // 00100001 00000001 即 33 片区存在 0 号开锁方式,实际开锁方式编号为 256 = (片区-1)*8
功能 | 数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value |
---|---|---|---|---|---|
同步所有 指纹编号 |
上报 | 25 | raw | len | 同步数据(n 字节) |
详见编码说明 | |||||
同步所有 密码编号 |
上报 | 26 | raw | len | 同步数据(n 字节) |
详见编码说明 | |||||
同步所有 门卡编号 |
上报 | 27 | raw | len | 同步数据(n 字节) |
详见编码说明 | |||||
同步所有 人脸编号 |
上报 | 28 | raw | len | 同步数据(n 字节) |
详见编码说明 | |||||
同步所有 虹膜编号 |
上报 | 29 | raw | len | 同步数据(n 字节) |
详见编码说明 | |||||
同步所有 掌纹编号 |
上报 | 30 | raw | len | 同步数据(n 字节) |
详见编码说明 | |||||
同步所有 指静脉编号 |
上报 | 31 | raw | len | 同步数据(n 字节) |
详见编码说明 |
进行远程开锁前,必须先配置远程开锁。一般首次配网成功,MCU 可主动上报 DP49 为失败触发云端下发密钥,若请求后云端未下发秘钥,可多次请求直到收到秘钥下发。
MCU 收到 DP49 后处理并存储秘钥信息,需要做出成功回复上报。之后远程开门时直接用本地保存的进行校验,无需重复请求。
远程解锁 DP50 指令里的 秘钥内容 就是通过 远程解锁设置秘钥 指令进行配置的。
该指令中的 是否生效、秘钥 ID、秘钥生效时间、秘钥失效时间、秘钥使用次数 都是预留的字段,可暂不做处理。
为更高安全性,远程解锁秘钥会不定期更新,规则由云端控制。在达到某个使用时限或远程开门次数后会通过 配置秘钥 DP 重新下发解锁秘钥给设备,MCU 收到后需要做存储更新,并上报回复成功。
数据 方向 |
dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
下发 | 49 | raw | len | 是否生效 (1 字节) |
秘钥 ID (2 字节) |
秘钥生效时间 (4 字节) |
秘钥失效时间 (4 字节) |
秘钥使用次数 (2 字节) |
秘钥内容 (8 字节) |
|||
0x00:失效 0x01:生效 |
暂不启用,仅 1 个 | unix 时间戳 (当前时间) |
unix 时间戳 (最大时间) |
0x0000~0xFFFF 默认 0,永久有效 |
ASCII 码 | |||||||
上报 | 49 | raw | len | 返回状态 (1 字节) |
秘钥 ID (2 字节) |
|||||||
0x00:成功 0x01:失败 |
暂不启用,仅 1 个 |
远程开锁指的是通过云端直接下发控制指令到设备的通信链路进行开锁:
数据 方向 |
dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
下发 | 50 | raw | len | 功能 (1 字节) |
成员 ID (2 字节) |
秘钥内容 (8 字节) |
解锁方式 (2 字节) |
|||||
0x00:关锁 0x01:开锁 |
0x00~0xFE | ASCII 码 | 0x0000:未定义远程开锁 0x0001:手机 app 远程开锁 0x0002:语音音箱远程开锁 |
|||||||||
上报 | 50 | raw | len | 返回状态 (1 字节) |
成员 ID (2 字节) |
|||||||
0x00:成功 0x01:失败 0x02:秘钥编号不存在 0x03:秘钥对比错误 |
0x00~0xFE |
使用场景:用户按门铃触发远程开门请求,手机弹窗通知,用户点击弹窗即可跳转 App 面板查看图片/实时视频对讲。确认门前状态正常后,可以滑动进行远程解锁。
数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | |||||
---|---|---|---|---|---|---|---|---|---|
上报 | 9 | value | 0x04 | 倒计时数(4 字节) | |||||
0x5A~0x00 单位:秒 |
使用场景:有可疑人员在门前逗留或者本地触发试错报警时,门锁端主动触发图片或者实时视频对讲,手机收到提醒可随时查看异常情况,根据场景选择处理方式。事后可随时查看产生的图片或者短视频记录。
数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | |||||
---|---|---|---|---|---|---|---|---|---|
上报 | 45 | value | 0x04 | 倒计时数(4 字节) | |||||
0x5A~0x00 单位:秒 | |||||||||
下发 | 46 | bool | 0x01 | 抓拍告警回复(1 字节) | |||||
0x00:无效 0x01:关闭弹窗 |
数据 方向 |
dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
上报 | 63 | raw | len | 请求类型 (1 字节) |
弹窗类型 (1 字节) |
方案类型 (1 字节) |
对讲能力 (1 字节) |
查看时长 (1 字节) |
||||
0x00:开启弹窗 0x01:关闭弹窗 |
0x00:远程开门请求弹窗 0x01:告警弹窗 |
0x00:不带音频 0x01:带音频 0x02:抓拍图片 |
0x00:单向对讲 0x01:双向对讲 |
0x00:1 分钟 0x01:3 分钟 |
||||||||
下发 | 63 | raw | len | 回复类型 (1 字节) |
回复内容 (1 字节) |
|||||||
0x03:开始查看视频 0x01:弹窗关闭(建议设备断电) 0x02:推流结束(面板弹窗未消失,存在其他用户待操作项) |
0x00:默认操作 0x01:正常推流结束 0x02:免费额度用完,推流结束 0x03:其他异常,推流结束 |
功能 | 数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value |
---|---|---|---|---|---|
电量状态/档位 | 上报 | 11 | enum | len | 档位(1 字节) |
0x00:高电量 0x01:中电量 0x02:低电量 0x03:电量空/即将耗尽 |
|||||
电量百分比 | 上报 | 12 | value | len | 百分比(4 字节) |
0x00~0x64 | |||||
反锁状态 | 上报 | 13 | bool | len | 状态(1 字节) |
0x00:未反锁 0x01:已反锁 |
|||||
童锁状态 | 上报 | 14 | bool | len | 状态(1 字节) |
0x00:童锁关闭 0x01:童锁打开 |
|||||
上提反锁状态 | 上报 | 21 | bool | len | 状态(1 字节) |
0x00:未上提反锁 0x01:已上提反锁 |
|||||
门开合状态 | 上报 | 18 | enum | len | 状态(1 字节) |
0x00:未知 0x01:门打开 0x02:门关闭 |
|||||
锁开合状态 | 上报 | 55 | bool | len | 状态(1 字节) |
0x00:锁关闭 0x01:锁打开 |
功能 | 数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | |
---|---|---|---|---|---|---|
指纹解锁记录 | 上报 | 1 | value | len | 硬件 ID(4 字节) | |
0x00~0xFE | ||||||
普通密码解锁记录 | 上报 | 2 | value | len | 硬件 ID(4 字节) | |
0x00~0xFE | ||||||
临时密码解锁记录 | 上报 | 3 | value | len | 硬件 ID(4 字节) | |
0x00~0xFE | ||||||
门卡解锁记录 | 上报 | 5 | value | len | 硬件 ID(4 字节) | |
0x00~0xFE | ||||||
人脸解锁记录 | 上报 | 6 | value | len | 硬件 ID(4 字节) | |
0x00~0xFE | ||||||
机械钥匙开锁记录 | 上报 | 7 | value | len | 硬件 ID(4 字节) | |
0x00~0xFE 默认填 0 即可 |
||||||
虹膜解锁记录 | 上报 | 22 | value | len | 硬件 ID(4 字节) | |
0x00~0xFE | ||||||
掌纹解锁记录 | 上报 | 23 | value | len | 硬件 ID(4 字节) | |
0x00~0xFE | ||||||
指静脉解锁记录 | 上报 | 24 | value | len | 硬件 ID(4 字节) | |
0x00~0xFE | ||||||
App 远程解锁记录 | 上报 | 15 | value | len | 成员 ID(4 字节) | |
0x00~0x64 | ||||||
门从内侧打开记录 | 上报 | 17 | bool | len | 固定值(1 字节) | |
0x00 | ||||||
门铃呼叫记录 | 上报 | 19 | bool | len | 状态(1 字节) | |
0x00:未发生 0x01:门铃呼叫 |
数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | |||||
---|---|---|---|---|---|---|---|---|---|
上报 | 8 | enum | 0x01 | 告警枚举 (1 字节) | |||||
取值范围 |
数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | |||||
---|---|---|---|---|---|---|---|---|---|
上报 | 57 | raw | 0x05 | 关锁/落锁方式 (1 字节) |
成员 ID (4 字节) |
||||
0x00:未定义 xxx 关锁 0x01:手机远程关锁 0x02:语音远程关锁 0x03:地理围栏关锁 0x04:App 长按关锁 0x05:配件关锁 0x06:自动落锁 0x07:本地手动落锁 | 0x01~0x64 |
数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
上报 | 44 | raw | 0x07 | 组合类型 (1 字节) |
开锁方式-1 (1 字节) |
硬件 ID-1 (2 字节) |
开锁方式-2 (1 字节) |
硬件 ID-2 (2 字节) |
||||
0x00:单一开锁 0x01:组合开锁 |
0x01:密码 0x02:门卡 0x03:指纹 0x04:人脸 0x05:掌纹 0x06:指静脉 0xF0:临时密码 |
0-999 (10 进制) |
0x01:密码 0x02:门卡 0x03:指纹 0x04:人脸 0x05:掌纹 0x06:指静脉 0xF0:临时密码 |
0-999 (10 进制) |
数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
上报 | 70 | raw | len | 主动执行 成员类型 (1 字节) |
主动执行 成员 ID (2 字节) |
操作分类 (1 字节) |
操作类型 (1 字节) |
数据长度 (1 字节) |
操作详情 (n 字节) |
被操作 成员类型 (1 字节) |
被操作 成员 ID (2 字节) |
|
0x00:超级管理员 0x01:管理员 0x02:特殊成员 |
默认 0xFFFF 取值范围 0x0000-0xFFFE |
开锁方式类: 0x00:添加开锁方式 0x01:删除开锁方式 0x02:修改开锁方式 操作用户类: 0x10:添加用户 0x11:删除用户 本地设置类: 0x20:本地设置 |
类型说明 | n+3 后续全部 数据长度 |
详情说明 | 默认:0xFF 0x00:超级管理员 0x01:管理员 0x02:特殊成员 0x03:普通成员 |
默认 0xFFFF 取值范围 0x0000-0xFFFE |
面板未支持部分设置类 DP,请以公版提供能力为准。
功能 | 数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | |||
---|---|---|---|---|---|---|---|---|
离家布防 | 下发/上报 | 10 | bool | len | 开关(1 字节) | |||
0x00:关闭 0x01:开启 |
||||||||
再次抓拍 | 下发/上报 | 47 | bool | len | 状态(1 字节) | |||
0x01:再次抓拍 | ||||||||
强制反锁 | 下发/上报 | 48 | bool | len | 状态(1 字节) | |||
0x01:强制反锁 | ||||||||
拍照模式 | 下发/上报 | 56 | enum | len | 状态(1 字节) | |||
模式说明 | ||||||||
自动落锁开关 | 下发/上报 | 68 | bool | len | 开关(1 字节) | |||
0x00:关闭 0x01:打开 |
||||||||
自动落锁定时 | 下发/上报 | 69 | value | len | 定时时间(4 字节) | |||
1-1800 单位:秒 |
||||||||
电机转动方向 | 下发/上报 | 65 | enum | len | 转动方向(1 字节) | |||
0x00:顺时针开 0x01:逆时针开 |
||||||||
补光开关 | 下发/上报 | 76 | bool | len | 开关(1 字节) | |||
0x00:关闭 0x01:打开 |
||||||||
常开开关 | 下发/上报 | 58 | bool | len | 开关(1 字节) | |||
0x00:关闭 0x01:打开 |
||||||||
常开时段设置 | 下发/上报 | 59 | raw | len | 是否永久 (1 字节) | 周循环 (1 字节) | 时段个数 (1 字节) | 时段值 (n 字节) |
0x00: 非永久 0x01: 永久 默认永久 |
说明 | 个数 | 时段 |
提供多种类型(布尔、枚举、raw)可自定义配置功能的 DP,可按设备能力、使用场景自定义使用。
功能 | 数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value | |
---|---|---|---|---|---|---|
引导功能 | 下发 | 64 | raw | len | 功能 (1 字节) | |
0x00:功能 0 0x01:功能 1 …… |
||||||
上报 | 64 | raw | len | 功能(1 字节) | 返回状态(1 字节) | |
0x00:功能 0 0x01:功能 1 …… |
0x00:成功 0x01:失败 |
|||||
特殊控制开关 | 下发/上报 | 66 | bool | len | 开关(1 字节) | |
0x00:关闭 0x01:打开 |
||||||
特殊控制时长 | 下发/上报 | 67 | value | len | 定时时长(s)(4 字节) | |
0x00000001~0xFFFFFFFF |
本小节介绍作为开锁方式的算法密码,包括离线密码和动态密码。工作原理大致为:云端与设备端运行相同的算法生成密码与验证密码,当用户输入生成的密码时,设备端验证通过即认为合法,可执行开锁等操作。
门锁本地和云端都独立拥有一套完全相同的动态密码生成算法,两者唯一的联系在于 Unix 时间戳。如果门锁本地和云端的 Unix 时间戳相差不超过 300s(±5 分钟),则认为两者生成的动态密码一致,此时门锁本地允许开门。
使用场景:
操作人员通过 App 获取离线密码,并告知用户
用户得到 清空单条密码:时效性和要清空的那条密码相同,多次使用只有第 1 次生效,产生使用过 清空单条密码的记录
清空单条密码/所有密码的限制:
使用方式:如是模组通用对接请参考 MCU 对接协议-0x16 指令。如是 SDK 对接请参考对应接口文档。
功能 | 数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value |
---|---|---|---|---|---|
离线密码 开锁记录 |
上报 | 32 | raw | len | 模组返回结果(16 字节) |
详见说明 | |||||
离线密码 清空记录 |
上报 | 33 | raw | len | 模组返回结果(16 字节) |
详见说明 |
功能 | 数据方向 | dp_id (1 字节) |
dp_type (1 字节) |
dp_data_len (2 字节) |
dp_data_value |
---|---|---|---|---|---|
短信通知 | 无 | 20 | bool | len | 无 |
劫持报警 | 无 | 16 | bool | len | 无 |
字节 | 含义 | 说明 | 举例 | |||
---|---|---|---|---|---|---|
1 | 时效起始时间 | unsigned int 4 字节(大端) |
例如 unix 时间为: 123-456-789 = 0x075BCD15 若时效为永久有效,则起始时间为 0x386CD300 |
07 | ||
2 | 5B | |||||
3 | CD | |||||
4 | 15 | |||||
5 | 时效结束时间 | unsigned int 4 字节(大端) |
例如 unix 时间为: 999-999-999 = 0x3B9AC9FF 若时效为永久有效,则结束时间为 0x72BC9B7F |
3B | ||
6 | 9A | |||||
7 | C9 | |||||
8 | FF | |||||
9 | 时效循环方式 | 0x00:不循环 | 0x01:天循环 | 0x02:周循环 | 0x03:月循环 | |
10 | 循环标志位 1 | 不循环时 10~17 字节全部为 0 |
该字节 默认为 0x00 |
该字节 默认为 0x00 |
bit7:默认为 0 bit6:31 号 …… bit0:25 号 |
|
11 | 循环标志位 2 | 该字节 默认为 0x00 |
该字节 默认为 0x00 |
bit7:24 号 …… bit0:17 号 |
||
12 | 循环标志位 3 | 该字节 默认为 0x00 |
该字节 默认为 0x00 |
bit7:16 号 …… bit0:9 号 |
||
13 | 循环标志位 4 | 该字节 默认为 0x00 |
bit7:默认为 0 bit6:周六 …… bit1:周一 bit0:周日 |
bit7:8 号 …… bit0:1 号 |
||
14 | 一天中起始时间 1(小时数) | 起始时间:8:30 | 08(十进制) | |||
15 | 一天中起始时间 2(分钟数) | 30(十进制) | ||||
16 | 一天中结束时间 1(小时数) | 结束时间:20:30 | 20(十进制) | |||
17 | 一天中结束时间 2(分钟数) | 30(十进制) |
添加/修改开锁方式时,时效性的循环方式和次数同时生效,但是一般仅使用以下两种情况:
例如,设置2018-01-26 08:00:00
到2018-08-08 09:56:32
期间内,每周一至周五的早上 8:00 到 8:30 生效,则时效性为 0x 5A6A6F80 5B6A4DD0 02 0000003E 0800 081E
:
2018-01-26 08:00:00
转换为 unix 时间为1516924800
,即 0x5A6A6F802018-08-08 09:56:32
转换为 unix 时间为1533693392
,即 0x5B6A4DD0bit7 | bit6 | bit5 | bit4 | bit3 | bit2 | bit1 | bit0 |
---|---|---|---|---|---|---|---|
保留 | 周六 | 周五 | 周四 | 周三 | 周二 | 周一 | 周日 |
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈