地铁数据上传协议
本文来源:广州软件开发 发布日期:2018-08-24
地铁数据上传协议
前提条件
1)在使用该协议上传数据之前必须确保tbl_devices有相应的数据;该数据来源于后台管理系统中的设备管理功能模块;设备管理功能动作 | 管理tbl_devices表 |
新增设备 | 新增一条设备信息到该表中,id(设备ID),ipAddress(设备ip地址),enable为0;其他项为默认选项 |
更新设备 | 当ipAddress被更新时,需更新该表中设备的ipAddress,其他情况跳过; |
删除设备 | 删除该设备信息 |
2)上传任何设备的信息前提条件是该设备已被注册,数据分析客户端程序必须确保数据在提交到服务器之前,设备已被注册,否则服务器将会丢弃该次上传的所有数据;
变量声明
链接地址中含有${..}格式的,里面包含的内容为变量名;变量名 | 简述 |
SERVER_HOST | 服务器地址,如:www.renaoyou.com |
SERVER_PORT | 服务器端口号,如:8080 |
DATA_TYPE | 要上传数据类型,如:设备状态信息(DATA_TYPE=status) |
事务ID |
本次数据上传唯一标识,有分析客户端程序生成; 生成策略: transId=本机ip+_+当前事务的序号(使用一个本地表,每次获取序号时,递增1) 如:192.168.1.116_1, 192.168.1.116_2 |
设备注册
传送JSON格式的数据如下:
将下列JSON格式的数据以POST方式放入device请求参数中 | |
字段 | 说明 |
ipAddress | 该设备的ip地址 |
服务器返回的JSON数据格式如下:(如:服务器中断或没返回数据需再次注册,直到status=[0,1]为止);
字段 | 说明 |
detail | 状态详情 |
status |
0: 正常 2:设备未找到 1:设备已注册 |
数据上传
上传参数:
HTTP参数 | |
data | JSONList格式的数据,根据DATA_TYPE不同,data的内容也各不相同,DATA_TYPE类型在后面将会详细介绍; |
服务器返回JSON格式数据:
字段 | 说明 |
done | 返回成功上传数据的条数; |
status |
上传完数据之后,需要检查status的值: 3为重复提交; 4为该数据包含有无效数据; 如:{"detail":"数据包中含有无效数据!","status":4,"done":10}; 表示已成功上传10条数据,在上传第11条数据的时候发现数据无效(原因:设备未找到或为注册); 如果客户端软件收到状态4的数据时,应该做相应的处理,且提交已上传成功的10条数据; |
detail | 错误信息 |
注意:数据在上传的过程中也有可能中断,客户端软件必须做相应的处理,保证数据不会丢失;
数据在上传之后必须马上提交,否则服务会在一段时间之后自动清理过期的数据;
数据提交上传参数:(无)
服务器返回数据:(无)该次数据提交失败或服务器返回状态不为202时,需再次提交该数据,直到成功为止;
数据类型定义(DATA_TYPE)
设备状态数据格式:DATA_TYPE | status | ||||||||||
data |
|
系统信息数据格式:
DATA_TYPE | system-info | ||||||||||||||||||
data |
|
车载网桥数据格式:
DATA_TYPE | bridge-info | ||||||||||||||||||||||||||||||||||||||
data |
|
设备状态数据格式:
DATA_TYPE | lcd-info | ||||||||||||||
data |
|
开关机数据格式:
DATA_TYPE | power-info | ||||||||||||
data |
|
系统信息
传送JSON格式的数据:(无)
服务器返回的JSON数据格式如下:
字段 | 说明 |
name | infoName |
lcdCount | lcdCount |
lcdTime | lcdTime |
controlCount | controlCount |
controlTime | controlTime |
netCount | netCount |
netTime | netTime |
exchangeCount | exchangCount |
exchangeTime | exchangTime |
upTime | upTime |
上一篇:软件开发管理模型及分析比较
下一篇:没有了
下一篇:没有了