中控Push通信协议

所需积分/C币:16 2017-08-01 23:07:23 801KB PDF
收藏 收藏 3
举报

中控Push通信协议
修改记录 修订人修订日期版本/次页次 修订章节内容 生效日期 陈润华 2013-12-28 1.按公司规定,统一协议 陈润华 2013-12-30 V3.2 修正排版 2.添加上传查询数据 3.添加命令执行结果 定义 本协议为安防PUSH通信协议,协议遵循了公司标准化的规范,拥抱了“面向修改封闭, 面向添加开放”先进接口设计思想。PUSH通信协议是一种精简的、规范化的、锁步的HTTP 协议,以设备主动访问服务器的机制进行数据传输。主要适应环境:局域网、互 联网、移动互联网 。目前协议基于 版本。 精简:即 协议是 协议的子集 烑范:即非通用的,协议必须遵守特定的规范,以便于设备与服务器软件的对接。 锁步:即设备与服务器采取一问一答的方式通信所有会话都由设备主动发起。 规范 PUSH规范是参考RFC2616,并对HTTP进行精简而定义出来的约定的准则。TP由请 求部分、响应部分组成。请求部分包括请求行、头、空行、消息体;响应部分包括状态行 头、空行、消息体。请求行包括请求方法、URL、版本信息。ⅢTP支持的请求方法有很多, 安防PUSH协议仅支持GET、POST两个方法,实例如卜。 实例 Get /icLock/getrequest?s =2602011070363 Http/1.1 //请求行 Cookie: token=eb77dad592b184552d2a49b3dle27537 //请求头 Host:192.168.18.188:8080 User-Agent: iClock Proxy/1.09 Connection: starting Accept: application/push Accept-Charset: UTF-8 Accept-Language: zh-CN Http/1.1 200 Ok //状态行 Server: C#demo/1.1 //响应头 Date: Thu, 26 Dec 2013 15: 05: 33 GMT Content-Type: application/push; charset=UTF-8 Content-Length: 2 Connection: keep-alive 实例: P0sT/ clock/cdat?SN=2602011070363& table= tlog Http/1.1//请求行 Cookie: token=eb77dad592b184552d2a49b3dle27537 //请求头 Host:192.168.18.188:8080 User-Agent: iClock Proxy/1. 09 Connection: starting Accept lication/push Accept-Charset: UTF-8 Accept-Language: zh-CN Content-Type: application/push; charset=UTF Content-Language: zh-CN Content-Length: 98 time=2013-12-2615:49:12 pin=0 cardno=3307954468 eventaddr=1 even inoutstatus=0 verlfytyp HTTP/1.12000K //状态行 Server: C#demo/1.1 //响应头 Date: Thu, 26 Dec 2013 16: 06: 00 GMT Content-Type: application/push; charset=UTF-8 Content-Length: 2 Connection: keep-alive 2.1请求部分请示行 请求行包括请求方法、URL、版木信息,规范如下 2.1.1请求方法仅支持GET、POsT两种 2.1.2URL包括路径、参数 路径不能修改,可以新增向公司市请。如/ clock/ cdata。 2>参数根据业务要求,可以灵活增加,不可修改原参数含义;每个URL必须有SN,且 SN为第一参数。如SN-2602011070363& table- rtog。 2.1.3协议必须为HITP/1.1版本 2.2请求部分头 2.2.1GET方法 头必选部分 ,可选部 分为 2.2.2POST方法 头必选部分 ,可选部分为 2.3请求部分-消息体 方法消息体必须为空。 方法消息体必须不为空此为 协议内容。 内容规范 字段数据格式:“ KeyName=vaue” 说明:通讯双方对 KeyName不区分大小写;当 Value为非数值类型时,多国语言必须米用 UTF8编码,当vaue为数值类型时,含义可自由定义,可以是十进制字符串、十六进制 字符串 1>表数据格式:“表名+空格+字段数据”,多条表数据以“\rⅧn“分隔,字段间以‘’ 分隔,实例如下 User PIN=122\ tcardno=45678\tname-chenl\group=1\r\n User PIN=124\tcardno=45854\ tname=chenbtgroup=3\r\n User PIN=125\tcardno-45843\ tname=chenetgroup-1 参数格式:“字段数据格式“,多个参数问以'’,’分隔,实例如下: Device Type=acc, DeviceName=inBI0180, FirmVer=Ver 5. 2.8(C1) Sep 19 2012, PushVersion=3.0.1 Comm'T'ype=ethernet, Maxl'ac kageSize=2048000 命令执行结果格式:“字段数据格式“,多个命令执行结果以”“分隔,字段间以 分隔,实例如下 ID=83&Return=0& CMD=DATA UPDATE\r\n D=84&Return=OK CMD=DATA DELETE\r\n ID=85RReturn=O&CMD=SET OPTIONS 2.4响应部分状态行 状态行包括版本、状态码、状态信息,遵守 规范。 2.5响应部分-头 头必须部分: Server、Date、 Content-Type、 Content- Length、 Connection, 其他可选。 2.6响应部分消息体 响应部分消息体分为两种:命令数据、结果数据、文件数据。 2.6.1命令数据 格式:C:命令ID:命令,其中’:’为关键字,命令部分不能含有冒号。 宇段数据格式:“ KeyName=value”。 说明:通讯双方对 KeyName不区分大小写;当vaue为非数值类型时,多国语 言必须采用UTF8编码,当vaue为数值类型时,含义可自由定义,可以是十进 制字符串、|六进制字符串。 多宇段数据格式: KevName= Value\ tKeyName= Value\ tKeyName= Value 多字段数据格式: KevName= Value, KeyName= Value, KeyName= Value 多字段数据格式: KevName, Key Name, KeyName 命令分为三类 数据类 格式:命令空格表名多字段数据格式 命令包括: (目前保留未用)、 目前具有增加与更新数据的 作用) (用来删除数据)、 (用来查询数据条数),实例 D)DATA UIDATE user CardNo=\tPin66\tPassword-tRoup=0\tStart'T'ime=\tEnd'Time 2) DATA DELETE userauthorize Pin-123\ tAuthorizeDoorId-1 3) DATA COUNT user 格式:命令空格多字段数据格式 命令包括: (用来查询数据) DATA QUERY tablename=transaction, fielddesc=*k, filter=k 控制类 +空格+指令 指令由数值经%02X格式化而来的字符串 CONTROL DEVICE AABBCCDD 空格多字段数据格式 PGradE checksum-ogoier9883k jankdef1894cu, url- /iclack/firmware/iclock660/5. 10. 20/ emfw cfg, size=2039822 配置类 空格多字段数据格式 空格多字段数据格式 1)set option IPAddress=192. 168. 1. 201, TCPPor t=4370 2)gct option MaxUscrCount, MaxAttLogCount, DeviceName, FirmVer 2.6.2结果数据 成功返回: 失败返回: 空格错误措述 1)OK 2)FAILED Unknown Device 2.6.3文件数据 分包返回一个文件内容到设备。 流程 1、 First connect GET/clock/cdata?SN=2602011070363Roptions-all response: registryCode/none gI ode=kndOTOMUIM 2、 Registry POST clock/registry?SN-2602011070 Response: registryCode egi(ode=nd0uo平 3、Push DEVICE Server GET /clock/ push?S\-2602011070363 Communication parameter revErsion=3. I1\nServerName=ADMS 4、 Send data to server 能翻温 P0L/cd9201000=8m=mx Return result 5、 Request data GET Ziclock/getrequestoSN-2602011070363 Cache d C: 111: DATA LPDATE user Card\o=1212709\tPin=66\pAssword=\tRoup=o a 6 Return Result of Running POST- /clock/devicecmd?SN-2602011070363 Return result OK 四、详解 上传:本文档的上传是指从设备发送数据到服务器屮。 下载:本文档的下载是指从服务器下载数据到设备中。 4.1第一次连接 用途:兼容老协议 请求韶分 如果设备已经注册,下一步下载配置参数;如果设备未注册,下一步注册 Get /icLock/cdata? sn=2602011070363&options-all Http/1.1 Host:192.168.18.188:8080 User-Agent: cLock Proxy /1.09 Connection: starting Accept: application/push Accept-Charset: UTF-8 Accept-Language: zh-CN 注:消息体为空 响应部分 如果设备已经注册,必须返回 registry、 Registry Code;如果设备未注册,不返回 registry、 Registry Code HTTP/1.12000K Server: C#demo/1.1 Date: Sat. 28 Dec 2013 09: 14: 04 GMT Content-Type: application/push; charset=UTF-8 Content-Length: 218 Connection: keep-alive registry=ok Registry Code=RndOTOMUMI ServerVersion=3.1. 1 ServerName=ADMS PushVersion=3. 2. 0

...展开详情
试读 28P 中控Push通信协议
立即下载 低至0.43元/次 身份认证VIP会员低至7折
    一个资源只可评论一次,评论内容不能少于5个字
    bao0682 这个是安防 sdk 不是考勤 下载的请注意了
    2018-08-07
    回复
    jlzq1314 不适用,以为是人脸考勤机的。应该写明用途。
    2018-04-12
    回复
    SECOWU 非常好...................
    2017-10-07
    回复
    关注 私信 TA的资源
    上传资源赚积分,得勋章
    最新推荐
    中控Push通信协议 16积分/C币 立即下载
    1/28
    中控Push通信协议第1页
    中控Push通信协议第2页
    中控Push通信协议第3页
    中控Push通信协议第4页
    中控Push通信协议第5页
    中控Push通信协议第6页
    中控Push通信协议第7页
    中控Push通信协议第8页
    中控Push通信协议第9页

    试读已结束,剩余19页未读...

    16积分/C币 立即下载 >