考勤 PUSH 通讯协议
PUSH SDK
文档版本:V3.4 日期:2018年10月
push 协议版本:V2.4.0
1
修改记录
日期
版本
描述
修改人 备注
2018/10/08
V3.4
2018/8/9
V3.3
2017/11/10
V3.2
2017/9/8
初版
1. 通信加密新增2条协议:
①交换公钥协议
②交换因子协议
2. 支持通信加密版本说明:
①考勤PUSH:2.4.0及以上
3. 通信加密详细说明见(附录8)
1. TransFlag增加2位:
①11(工作号码,WORKCODE)
②12(比对照片,BioPhoto)
2. 在线登记卡 ENROLL_MF
3. 在线登记人脸,掌纹(一体化模板)
ENROLL_BIO
4. 上传一体化模板增加 可见光人脸Type=9
5. 在线升级
6. 后台验证
7. 增加以下参数:
①BioPhotoFun来标识比对照片
②BioDataFun来标识可见光人脸模板
③VisilightFun来标识可见光设备
8.新增比对照片相关协议
1. 对序列号进行说明
2. 增加初始化请求回复内容支持BIODATA
表
1. 完善错误码列表,区分通用错误码及特殊命令
错误
2. 新增一体化数据协议(目前应用于手掌模板)
3. 新增推送配置信息协议(需定制开启)
4. 新增用户个人验证方式设置
5. 新增数据打包上传协议(需定制开启)
6. 拓展 PUTFILE命令支持同步数据协议
7. 修正上传操作记录协议格式
阎广田
阎广田
汪国冬
李仙平
梁贤森
1
1
目录
1 摘要.....................................................................................................................................................................................6
2 特点.....................................................................................................................................................................................6
2.1 编码........................................................................................................................................................................ 6
2.2 HTTP 协议简介......................................................................................................................................................6
3 定义.....................................................................................................................................................................................7
4 功能.....................................................................................................................................................................................8
5 流程.....................................................................................................................................................................................9
6 初始化信息交互...............................................................................................................................................................10
7 交换公钥(支持通信加密的场合)...............................................................................................................................15
8 交换因子(支持通信加密的场合)...............................................................................................................................16
9 推送配置信息...................................................................................................................................................................17
10 上传更新信息.................................................................................................................................................................18
11 上传数据.........................................................................................................................................................................20
11.1 上传方式.............................................................................................................................................................20
11.2 上传考勤记录....................................................................................................................................................20
11.3 上传考勤照片....................................................................................................................................................22
11.4 上传操作记录....................................................................................................................................................24
11.5 上传用户信息....................................................................................................................................................26
11.6 上传身份证信息................................................................................................................................................29
11.7 上传指纹模板....................................................................................................................................................34
11.8 上传面部模板....................................................................................................................................................38
11.9 上传指静脉模板................................................................................................................................................40
11.10 上传一体化模板..............................................................................................................................................43
11.11 上传用户照片..................................................................................................................................................47
11.12 上传数据包......................................................................................................................................................50
11.13 上传比对照片..................................................................................................................................................52
12 获取命令.........................................................................................................................................................................54
12.1 DATA 命令......................................................................................................................................................... 56
12.2 UPDATA 子命令...............................................................................................................................................56
12.2.1 用户信息................................................................................................................................................56
12.2.2 身份证信息............................................................................................................................................57
12.2.3 指纹模板................................................................................................................................................60
12.2.4 面部模板................................................................................................................................................61
12.2.5 指静脉模板............................................................................................................................................61
12.2.6 一体化模板............................................................................................................................................62
12.2.7 用户照片................................................................................................................................................62
2
12.2.8 比对照片................................................................................................................................................63
12.2.9 短消息....................................................................................................................................................64
12.2.10 个人短消息用户列表..........................................................................................................................64
12.2.11 宣传照片..............................................................................................................................................65
12.2.12 工作代码..............................................................................................................................................65
12.2.13 快捷键..................................................................................................................................................66
12.2.14 门禁组..................................................................................................................................................67
12.2.15 门禁时间表..........................................................................................................................................67
12.2.16 门禁节假日..........................................................................................................................................68
12.2.17 门禁多组验证......................................................................................................................................68
12.3 DELETE 子命令............................................................................................................................................... 69
12.3.1 用户信息................................................................................................................................................69
12.3.2 指纹模板................................................................................................................................................69
12.3.3 面部模板................................................................................................................................................70
12.3.4 指静脉模板............................................................................................................................................70
12.3.5 一体化模板............................................................................................................................................70
12.3.6 用户照片................................................................................................................................................71
12.3.7 比对照片................................................................................................................................................71
12.3.8 短消息....................................................................................................................................................71
12.3.9 工作代码................................................................................................................................................72
12.3.10 宣传照片..............................................................................................................................................72
12.4 QUERY 子命令.................................................................................................................................................72
12.4.1 考勤记录................................................................................................................................................73
12.4.2 考勤照片................................................................................................................................................73
12.4.3 用户信息................................................................................................................................................73
12.4.4 指纹模板................................................................................................................................................74
12.5 CLEAR 命令...................................................................................................................................................... 74
12.5.1 清除考勤记录........................................................................................................................................74
12.5.2 清除考勤照片........................................................................................................................................75
12.5.3 清除全部数据........................................................................................................................................75
12.6 检查命令............................................................................................................................................................75
12.6.1 检查数据更新........................................................................................................................................75
12.6.2 检查并传送新数据................................................................................................................................76
12.6.3 考勤数据自动校对功能........................................................................................................................76
12.7 配置选项命令....................................................................................................................................................76
12.7.1 设置客户端的选项................................................................................................................................76
12.7.2 客户端重新刷新选项............................................................................................................................77
12.7.3 发送客户端的信息到服务器................................................................................................................77
12.8 文件命令............................................................................................................................................................77
12.8.1 取客户端内的文件................................................................................................................................77
3
12.8.2 发送文件到客户端................................................................................................................................78
12.9 远程登记命令....................................................................................................................................................80
12.9.1 登记用户指纹........................................................................................................................................80
12.9.2 登记卡号................................................................................................................................................81
12.9.3 登记人脸,掌纹(一体化模板)........................................................................................................81
12.10 控制命令..........................................................................................................................................................82
12.10.1 重新启动客户端..................................................................................................................................82
12.10.2 输出打开门锁信号..............................................................................................................................82
12.10.3 取消报警信号输出..............................................................................................................................83
12.11 其他命令..........................................................................................................................................................83
12.11.1 执行系统命令......................................................................................................................................83
12.11.2 在线升级..............................................................................................................................................83
12.11.3 后台验证..............................................................................................................................................85
13 命令回复.........................................................................................................................................................................87
14 异地考勤.........................................................................................................................................................................89
15 附录.................................................................................................................................................................................91
15.1 附录 1.................................................................................................................................................................91
15.2 附录 2.................................................................................................................................................................92
15.3 附录 3.................................................................................................................................................................93
15.4 附录 4.................................................................................................................................................................94
15.5 附录 5.................................................................................................................................................................95
15.6 附录 6.................................................................................................................................................................95
15.7 附录 7.................................................................................................................................................................96
15.8 附录 8.................................................................................................................................................................97
4
1 摘要
Push协议是基于超文本传输协议(HTTP)的基础上定义的数据协议,建立在TCP/IP连接上,主要应
用于中控考勤、门禁等设备与服务器的数据交互,定义了数据(用户信息、生物识别模板、考勤记录
等)的传输格式、控制设备的命令格式;目前中控支持的服务器有 WDMS、 ZKECO、 ZKNET、
ZKBioSecurity3.0等,第三方支持的服务器有 印度ESSL 等。
2 特点
●新数据主动上传
●断点续传
●所有行为都由客户端发起,比如上传数据、服务器下发的命令等
2.1 编码
协议中传输的数据大部分都是ASCII字符,但是个别的字段也涉及到编码的问题,比如用户姓名, 所
以对该类型数据做如下规定:
●为中文时,使用GB2312编码
●为其他语言时,使用UTF-8编码
目前涉及到该编码的数据如下:
●用户信息表的用户姓名
●短消息表的短消息内容
2.2 HTTP协议简介
Push协议是基于HTTP协议的基础上定义的数据协议,这里简单介绍下什么是HTTP协议,如果已经熟
悉可跳过此部分。
HTTP协议是一种请求/响应型的协议。客户端给服务器发送请求的格式是一个请求方法(request
method),URI,协议版本号,然后紧接着一个包含请求修饰符(modifiers),客户端信息,和可能
的消息主体的类MIME(MIME-like)消息。服务器对请求端发送响应的格式是以一个状态行(status
line),其后跟随一个包含服务器信息、实体元信息和可能的实体主体内容的类MIME(MIME-like)的
消息。其中状态行(status line)包含消息的协议版本号和一个成功或错误码。如下例子
5
客户端请求:
GET http://113.108.97.187:8081/iclock/accounts/login/?next=/iclock/data/iclock/ HTTP/1.1
User-Agent: Fiddler
Host: 113.108.97.187:8081
服务器响应:
HTTP/1.1 200 OK
Server: nginx/0.8.12
Date: Fri, 10 Jul 2015 03:53:16 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: close
Content-Language: en
Expires: Fri, 10 Jul 2015 03:53:16 GMT
Vary: Cookie, Accept-Language
Last-Modified: Fri, 10 Jul 2015 03:53:16 GMT
ETag: "c487be9e924810a8c2e293dd7f5b0ab4"
Pragma: no-cache
Cache-Control: no-store
Set-Cookie: csrftoken=60fb55cedf203c197765688ca2d7bf9e; Max-Age=31449600; Path=/
Set-Cookie: sessionid=06d37fdc8f36490c701af2253af79f4a; Path=/
0
HTTP通信通常发生在TCP/IP连接上。默认端口是TCP 80,不过其它端口也可以使用。但并不排除
HTTP协议会在其它协议之上被实现。HTTP仅仅期望的是一个可靠的传输(译注:HTTP一般建立在
传输层协议之上);所以任何提供这种保证的协议都可以被使用。
3 定义
文档中引用定义使用格式为:${ServerIP}
●ServerIP:服务器IP地址
●ServerPort:服务器端口
●XXX:未知值
6
●Value1\Value2\Value3……\Valuen:值1\值2\值3……值n
●Required:必须存在
●Optional:可选
●SerialNumber:系列号(可以为字母、数字、字母+数字组合)
●NUL:null(\0)
●SP:空格
●LF:换行符(\n)
●HT:制表符(\t)
●DataRecord:数据记录
●CmdRecord:命令记录
●CmdID:命令编号
●CmdDesc:命令描述
●Pin:工号
●Time:考勤时间
●Status:考勤状态
●Verify:验证方式
●Workcode:workcode编码
●Reserved:预留字段
●OpType:操作类型
●OpWho:操作者
●OpTime:操作时间
●BinaryData:二进制数据流
●TableName:数据表名
●SystemCmd:系统命令
●Key:键
●Value:值
●FilePath:文件路径
●URL:资源位置
4 功能
客户端的角度来描述Push协议支持的功能
7