人脸设备接口文档-websocket协议通讯
### 人脸设备接口文档-websocket协议通讯 #### 一、交互流程概述 本文档主要针对RK3288设备的WebSocket通信协议进行说明,详细介绍了设备与服务器之间的交互流程及接口文档。WebSocket协议允许客户端与服务器之间建立持久的连接,进行双向实时通信。 #### 二、接口功能详解 - **设备注册** (`cmd=0`): 设备向服务器发起注册请求,包含设备的基本信息如名称、型号等。 - **鉴权失败** (`cmd=5`): 当设备尝试与服务器建立连接时,如果验证失败,则服务器会返回鉴权失败的信息。 - **鉴权成功** (`cmd=6`): 设备经过正确的身份验证后,服务器会发送鉴权成功的响应。 - **上传/下发白名单指令** (`cmd=1` & `cmd=3`): 设备与服务器之间可以互相发送指令来上传或下发白名单信息。 - **上传/下发黑名单指令** (`cmd=2` & `cmd=4`): 类似于白名单指令,但用于黑名单管理。 - **删除用户** (`cmd=9` & `cmd=10`): 设备或服务器可以发起删除用户的请求。 - **上传识别记录** (`cmd=11`): 服务器可以要求设备上传最近的识别记录。 - **远程开门、关机、重启** (`cmd=12` & `cmd=13` & `cmd=14`): 服务器可以远程控制设备执行特定操作。 - **发送授权码** (`cmd=16`): 服务器向设备发送授权码。 - **设置开闸模式** (`cmd=17`): 服务器可以设置设备的开闸模式。 - **查询开闸模式** (`cmd=18`): 服务器可以查询设备当前的开闸模式。 - **命令应答** (`cmd=100`): 设备对服务器发出的命令进行应答。 #### 三、接口数据详情 - **cmd=0 设备注册** ```json { "cmd": "0", "data": { "DeviceName": "人脸识别产品", // 设备名称 "DeviceModel": "ght", // 设备型号 "serialNumber": "c143-ae50-ce78-6a64-ef71", // 序列号 "Version": "1.0", // 版本号 "DeviceMac": "28:ed:e0:96:5c:c7", // MAC地址 "DeviceMaker": "深圳广汇通", // 设备制造商 "secretkey": "qwer" // 设备秘钥 } } ``` 此接口用于设备首次启动时向服务器发送注册信息。包括设备的名称、型号、序列号、版本号、MAC地址、制造商以及秘钥等重要信息。 - **cmd=5 鉴权失败** ```json { "cmd": "5", "data": {} } ``` 该接口表示服务器收到设备注册请求后验证失败,通常是因为设备提供的秘钥不正确或其他认证信息有误。 - **cmd=6 鉴权成功** ```json { "cmd": "6", "data": {} } ``` 服务器确认设备的身份信息无误后,通过此接口向设备发送鉴权成功的信息。 - **cmd=1 上传白名单指令** 1. **S->A** (服务器向设备发送指令): ```json {"cmd": 1, "data": {}} ``` 2. **A->S** (设备向服务器上传白名单): ```json { "cmd": "1", "data": { "id": 1, // 编号 "code": 123456, // 工号 "name": "张三", // 姓名 "identity": 6542135222125452316, // 身份证号 "cardNum": 123123, // IC卡编号 "type": 1, // 类型(1为白名单,2为黑名单) "image": "Base64", // 头像图片(Base64编码) "photoname": "name", // 入库相片名称 "sex": 1, // 性别(1为男,2为女) "organization": "组织", // 所属组织 "position": "职位", // 职位名称 "mail": "xxx@yy.com", // 邮箱 "hiredate": "日期", // 入职日期 "entrancenum": "01", // 门禁编号 "serialNo": "c143-ae50-ce78-6a64-ef71", // 序列号 "time": 1561515451241 // 时间戳 } } ``` 设备上传白名单时需提供详细人员信息,包括个人基本信息和图像数据等。 - **cmd=2 上传黑名单指令** 1. **S->A** (服务器向设备发送指令): ```json {"cmd": 2, "data": {}} ``` 2. **A->S** (设备向服务器上传黑名单): ```json { "cmd": "2", "data": { "id": 1, // 编号 "code": 123456, // 工号 "name": "张三", // 姓名 "identity": 6542135222125452316, // 身份证号 "cardNum": 123123, // IC卡编号 "type": 2, // 类型(1为白名单,2为黑名单) "image": "Base64", // 头像图片(Base64编码) "photoname": "name", // 入库相片名称 "sex": 1, // 性别(1为男,2为女) "organization": "组织", // 所属组织 "position": "职位", // 职位名称 "mail": "xxx@yy.com", // 邮箱 "hiredate": "日期", // 入职日期 "entrancenum": "01", // 门禁编号 "serialNo": "c143-ae50-ce78-6a64-ef71", // 序列号 "time": 1561515451241 // 时间戳 } } ``` 设备上传黑名单时也需要提供类似白名单的详细信息。 以上内容详细阐述了人脸识别设备与服务器之间基于WebSocket协议的通信方式及其数据结构。这种通信机制能够确保高效、安全的数据传输,并支持实时的双向通信。对于维护系统安全性和提高用户体验具有重要意义。
剩余9页未读,继续阅读
- 粉丝: 391
- 资源: 327
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- k8s上部署minio 14.8.5 存储
- JAVAjava web宿舍管理系统源码数据库 MySQL源码类型 WebForm
- 高性能智能模块Thundercomm TurboX D845 SOM产品概述与技术特性
- 基于OpenCV的人脸识别
- toshiba,GTLC,BICS3 规格书,data sheet,Nand flash
- 【java毕业设计】易商B2C网上交易系统ssh+mysql源码(完整前后端+说明文档+LW).zip
- 【java毕业设计】超市管理系统ssh+mysql源码(完整前后端+说明文档+LW).zip
- 基于Qt(C++)开发的学生信息管理系统
- 【java毕业设计】高校大学生信息发布网ssh+mysql源码(完整前后端+说明文档+LW).zip
- java企业车库管理系统源码数据库 MySQL源码类型 WebForm
- 【java毕业设计】滑雪场管理系统ssh+mysql源码(完整前后端+说明文档+LW).zip
- 渗透辅助工具-摄像头拍照工具.zip
- 基于Qt的不规则窗体(图片遮罩)与鼠标事件控制实践案例
- 【java毕业设计】酒店管理系统ssh+mysql源码(完整前后端+说明文档+LW).zip
- 【java毕业设计】酒店人员管理系统ssh+mysql源码(完整前后端+说明文档+LW).zip
- 猫鼠信安渗透集成工具箱.zip