From c01cb4f72503b36a9c69bd2ea47359e87643549e Mon Sep 17 00:00:00 2001 From: anlicheng <244108715@qq.com> Date: Mon, 2 Dec 2024 11:50:38 +0800 Subject: [PATCH] add docs --- docs/jianguanzhihui/donghuoliren.md | 57 +++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 docs/jianguanzhihui/donghuoliren.md diff --git a/docs/jianguanzhihui/donghuoliren.md b/docs/jianguanzhihui/donghuoliren.md new file mode 100644 index 0000000..4fb5b45 --- /dev/null +++ b/docs/jianguanzhihui/donghuoliren.md @@ -0,0 +1,57 @@ +# 签名算法的说明 + +## 约定token的值为 + aB3$dEfGhiJkLmNoPqRsTuVwXyZ!@#4f5e6d7c8b9a0f1e2d + +## 所有接口都必须传递签名值,签名值算法如下: + 参数签名算法,算法逻辑如下: + 1. 将对象转换成JSON字符串str1, str1即为post请求中的body体 + 2. 将str1和给定的token值进行拼接后,然后对字符串进行md5加密, 拼接格式如何: md5_str = md5($token + str1 + $token) + 3. md5_str放到post请求的header里面,格式如下: sign: md5_str + +## 推送的数据格式 +```text +method: post +header: + sign: md5($token + body + $token) + content-type: application/json + +body: + { + "count": 1, // 单位时间内发生的次数,目前固定为1,即每次发生后都推送 + "taskId": "0520101121011022700001_22706", // 点位编码 + 事件编码;用于确认同一个设备发送的同一类型的事件 + "eventInfo": { + "occurrenceTime": "2024-11-29 09:01:40", // 事件发送的时间 + "location": "0520101121011022700001", // 产生该事件的设备的点位信息编码 + "description": "person", // 事件描述 + "category": "23104", // 事件分类信息, 目前系统中 (23104 动火离人 ) + "attachments": [ + { + "url": "https://lgsiot.njau.edu.cn/upload/2024/11/29/2024-11-29-1732842080-1732842100.mp4", // 视频文件的url地址 + "name": "2024-11-29-17328420801732842100.mp4" // 视频文件的名称 + } + ] + } + } +``` + +## 推送消息返回格式 + +### 推送成功 + +```json + {"result": "ok"} +``` + +### 推送失败 + +```json +{"error": {"code": -1, "message": "错误描述信息"}} +``` + +## 推送机制 + +```text +1. 当http请求效应的状态码为非200时,推送方尝试重复推送,直到返回的状态码为200(注意:如果接收方的服务器异常,可能会收到之前的消息) +2. 当http请求效应的状态码为200时,推送方记录日志并推送吓一条消息 +``` \ No newline at end of file