Skip to content

设备管理

设备管理模块负责门锁的初始化、密钥生成、状态查询等核心功能。这些操作是使用门锁前的必要步骤。

概述

设备管理主要包括以下功能:

  • 密钥管理:获取公钥、私钥和签名密钥,建立安全通信
  • 设备信息查询:读取锁的详细状态和配置信息
  • 设备诊断数据读取:读取工厂测试所需的功耗等诊断数据
  • 超级管理员设置:初始化门锁的首个管理员
  • 领锁状态管理:控制门锁的初始化状态

获取公钥

指令码

0x3090

请求参数

字段名称类型长度说明
CmdID整型2指令 ID (0x3090)
LockID字符串40锁 ID

响应参数

字段名称类型长度说明
CmdID整型2指令 ID (0x3090)
Status整型1处理状态
PublicKey二进制16公钥

说明

  • 加密类型: 0 (明文)
  • 公钥由锁端随机生成
  • 锁里写入钥匙数据后不允许再获取
  • 密钥体系和用途详见 加密与签名

获取私钥和签名密钥

密钥命名混乱历史

由于历史原因,代码中存在多种命名(如CommKey、通信密钥等),详见 密钥命名混乱历史

指令码

0x3091

请求参数

字段名称类型长度说明
CmdID整型2指令 ID (0x3091)
LockID字符串40锁 ID
KeyID字符串40钥匙 ID
AuthUserID字符串20钥匙授权人 ID
Timestamp整型4当前时间戳(UNIX格式)
AuthCodeLen整型1AuthCode 数据长度(固定为16)
AuthCode二进制16鉴权码

响应参数

字段名称类型长度说明
CmdID整型2指令 ID (0x3091)
Status整型1处理状态
PrivateKey二进制16私钥
SignKey二进制16签名密钥
RandPassTick整型4随机密码时间戳

说明

读取设备状态信息

获取门锁的详细状态信息,包括硬件版本、软件版本、功能特征值等。

指令码

0x3040

请求参数

字段名称类型长度说明
CmdID整型2指令 ID
LockID字符串40锁 ID
UserID字符串20用户 ID
TimeStamp整型4时间戳(UTC+0)
LocalUnix整型4当地时间(UNIX 格式)
无网络情况传 0,锁板不校验
中国传 UTC+8:8*3600 + timestamp

响应参数

字段名称类型长度说明
CmdID整型2指令 ID
Status整型1处理状态
Vendor字符串20厂商名称
例如:万达集团WDJT
Product整型1锁设备类型
1: 普通门锁
2: 视频门锁
3: 人脸识别门锁
4: 挂锁等
Model字符串20产品型号
例如:一握开家用版v2singlegrip2
外观不同或功能有差异的产品必须使用不同型号
FwVersion字符串20软件版本
例如:1.0.0.230828
HwVersion字符串20硬件版本
例如:1.0.0.230828
SerialNum0字符串16厂商序列号
同一把锁必须保证唯一,重置不变
SerialNum0 相同的设备会覆盖现有设备
SerialNum1字符串16成品商序列号(可选)
等同于产品外包装上的 SN 号
BtDeviceName字符串16蓝牙名称
例如:TMH_c3570480da8d
ElectricQuantity整型1电池剩余电量
ElectricQuantityStandby整型1备用电池剩余电量
RestoreCounter整型2重置次数
RestoreDate整型4重置时间(UNIX 时间格式)
IcPartNo字符串10主控芯片型号
Indate整型4有效时间(UNIX 时间格式)
Mac字符串20蓝牙 MAC 地址
FeatureValueLength整型1特征值字符串长度
FeatureValue字符串变长锁特征值说明(设备支持的功能)
FeatureEnValLength整型1使能特征值字符串长度
FeatureEnVal字符串变长使能锁特征值说明(设备已启用的功能)
FeatureParaTotal整型1支持的带参数特征值的总条目数
FeatureParaBit整型1对应特征值的位
FeatureParaLength整型1对应特征值的参数长度
FeatureParaData变长-对应特征值的参数
若 FeatureParaTotal > 1 则重复上述 3 个字段

锁特征值说明

特征值概述

特征值是一个 16 进制字符串,用于说明门锁支持的功能。

  • 如果使用官方 APP SDK,SDK 提供了相应的方法来判断特征值是否支持某项功能
  • 如果需要在后端或 Web 前端进行判断,请参考以下规则自行实现

解析规则

特征值是一个 16 进制字符串,表示门锁支持的功能。

解析步骤:

  1. 将 16 进制字符串转换为二进制
  2. 每个字节的每一位代表一个功能
  3. 值为 1 表示支持,值为 0 表示不支持

示例:

假设某把锁的特征值为:C2F44354CF1F3

转换为二进制后:

1100 0010 1111 0100 0100 0011 0101 0100 1100 1111 0001 1111 0011

高低位转换后的二进制:

11001111 10001111 00110010 10101100 00100010 11110100 0011

功能位定义

高低位转换后,每个字节位(从 0 开始计算)对应的功能如下:

变量名功能说明是否带参数
0password支持密码
1icCard支持IC卡
2fingerprint支持指纹
3fingerVein支持指静脉
4palmVein支持掌静脉
5d3Face支持3D人脸
6qrCode支持二维码
7bluetoothRemoteControl支持蓝牙遥控器
8wirelessKey支持无线钥匙
9gatewayUnlock支持网关开锁
10isSupportIris支持虹膜识别
11reserveMethod2预留开锁方式2
12reserveMethod3预留开锁方式3
13reserveMethod4预留开锁方式4
14lockCommand支持闭锁指令
15firmwareUpgrade支持固件升级设置
16passwordIssue支持密码下发
17cardIssue支持卡片下发
18fingerprintIssue支持指纹下发
19fingerVeinIssue支持指静脉下发
20palmVeinIssue支持掌静脉下发
21d3FaceIssue支持3D人脸下发
22reserveDownload1预留下发特征1
23reserveDownload2预留下发特征2
24lockFreeze支持冻结/解冻锁
25readAdminPassword支持读取管理员密码
26passwordManagement支持密码管理功能
27passwordWithDelete支持密码带删除功能
28remoteUnlock支持配置远程开锁
29autoLock支持自动闭锁设置
30antiPrySwitch支持防撬开关配置
31resetSwitch支持重置键配置
32lockSwitch支持反锁功能配置
33lockSound支持语音提示管理
34languageSetting支持语言设置
35realTimeClock支持实时时钟
36wifi支持WIFI
37videoIntercom支持可视对讲
38cyclePassword支持循环密码
39cycleFingerprintCard支持循环指纹/卡
40doubleAuthentication支持双重认证
41openDirection支持左右开门设置
42proximitySensing支持接近感应
43doorStatus支持门磁状态
44wiredDoorMagnet支持有线门磁
45wirelessDoorMagnet支持无线门磁
46doorNotClosedAlarm支持门未关报警
47unlockReminder支持开锁提醒
48wirelessKeyboard支持无线键盘
49lightingTime支持照明灯时间配置
50passageMode支持常开模式(某一天几点到几点)
51hotelLockCardSystem支持常开模式自动开锁设置
52discardValue1常开模式下是否支持关闭自动闭锁
53discardValue2保留项(原考勤功能)
54discardValue3支持酒店锁卡系统
55appUnlockOnlineAPP开锁时需联网
56bluetoothBroadcast支持蓝牙广播
关闭则不能使用蓝牙主动开锁
57isSupportPush支持推送设置
58motorTorsion支持电机扭力设置
59isSupportOpen支持开门器开锁
60isSupportAutoLight支持自动亮屏
61stayWarn支持逗留警告
62abnormalWarn支持异常警告
63isSupportForcedOpen支持胁迫开门
64isSupportCatEye猫眼监控功能
65isSupportBackupBattery支持备用电池
66offlinePasswordEncryption离线密码算法
用于区分方案商的不同离线密码算法
67offlinePasswordNumMax离线密码最大个数
68deviceEnMultiLanguage设备支持的多国语言
bit0=1: 支持中文
bit1=1: 支持英文
69isNoSupportedBlueBroadcast0: 默认支持蓝牙广播
1: 不支持蓝牙广播
70isElectronicAntiLock电子反锁
1: 打开
0: 关闭
71isVisualDoorBellCode是否支持可视门铃码
72isDoubleLockLinkage双锁联动
73wifiLockTypeWiFi 类型
0: WiFi保活
1: WiFi不保活图传
2: WiFi不保活可视对讲
74isMJpeg是否支持 mJpeg
75isH264是否支持 h264
76isH265是否支持 h265
77languageSpeech是否支持语音的语种设置

提示

更多功能位定义请参考最新的协议文档或联系技术支持。

获取门锁功耗数据

获取门锁在工厂测试中保存的功耗诊断数据,用于质检、追溯与导出报表。

指令码

0x3041

请求参数

字段名称类型长度说明
CmdID整型2指令 ID (0x3041)
LockID字符串40锁 ID
UserID字符串20用户 ID
TimeStamp整型4当前时间戳(UTC)
TestSessionID整型4本次测试会话 ID,用于关联同一次产测数据;无会话时传 0

响应参数

字段名称类型长度说明
CmdID整型2指令 ID (0x3041)
Status整型1处理状态
DataVersion整型1功耗数据格式版本号,当前固定为 1
SampleTime整型4功耗数据采集时间(UNIX 时间)
VoltageMv整型2采样时电源电压,单位 mV
StandbyCurrentUa整型4待机电流,单位 μA
ConnectCurrentMa整型2蓝牙连接状态平均电流,单位 mA
UnlockPeakCurrentMa整型2开锁瞬时峰值电流,单位 mA
MotorCurrentMa整型2电机工作平均电流,单位 mA
LowVoltageCurrentUa整型4低压休眠电流,单位 μA
BatteryLevel整型1电池剩余电量,范围 0-100
ResultFlags整型1测试结果标记位

ResultFlags 位定义

Bit名称说明
0standbyValid待机电流有效
1connectValid蓝牙连接电流有效
2unlockPeakValid开锁峰值电流有效
3motorValid电机工作电流有效
4lowVoltageValid低压休眠电流有效
5batteryLevelValid电池电量有效
6-7Reserved保留

说明

  • 本接口返回锁板当前保存的最近一次功耗测试结果
  • 功耗数据由锁板采集并保存,APP 负责读取与展示
  • 当某项数据未采集成功时,对应值返回 0,并将 ResultFlags 中对应位清零
  • 数值单位以字段名为准:Ua 表示微安,Ma 表示毫安,Mv 表示毫伏

增加超级管理员

添加门锁的首个超级管理员用户,完成门锁的初始化。

指令码

0x3001

请求参数

字段名称类型长度说明
CmdID整型2指令 ID
LockID字符串40锁 ID
AuthUserID字符串20授权者 ID(管理员角色)
KeyID字符串40钥匙 ID
UserID字符串20用户 ID
OpenMode整型1开锁方式
KeyType整型1钥匙类型
0: 普通
1: 临时(到期自动删除)
2: 蓝牙遥控器
255: 测试(添加正式钥匙后自动失效)
StartDate整型4启用日期(UNIX 时间)
ExpireDate整型4停用日期(UNIX 时间)
UseCountLimit整型2使用次数限制
0xFFFF: 不限次数
IsRound整型1是否循环
WeekRound整型1循环周期
Bit0-6 置位分别代表周日至周六
StartHour整型1开始小时
StartMin整型1开始分钟
EndHour整型1结束小时
EndMin整型1结束分钟
Role整型1用户角色
0: 普通用户
1: 管理员
0xff: 超级管理员
Password字符串20超级管理员领锁时需验证的密码
Token整型4动态口令
AuthCodeLen整型1鉴权码长度
AuthCode字符串变长鉴权码
首次请求可填写附加信息,用于锁验证用户合法性

鉴权码计算

鉴权码计算方法参考 加密与签名 文档。

响应参数

字段名称类型长度说明
CmdID整型2指令 ID
LockID字符串40锁 ID(成功时返回)
Token整型4动态口令
Status整型1处理状态
No整型2在锁上的用户序号
APP 可将其替换为 KeyID
serialNo字符串4序列号,用于临时密码生成

退出领锁状态

退出门锁的领锁(初始化)状态。

指令码

0x30F3

请求参数

字段名称类型长度说明
CmdID整型2指令 ID
LockID字符串40锁 ID

响应参数

鑫泓佳智能硬件通信协议文档