一、统一说明
1、返回数据格式
返回数据格式如下:
{"code":1001,"message":"信息内容","data":object}
ResultData字段说明
字段 |
类型 |
说明 |
code |
Integer |
代码(参考返回代码说明表) |
message |
String |
返回操作结果描述 |
data |
Json |
Json数据,具体格式参考各个接口 |
文档中所有接口的返回数据说明表,如无特殊说明均为ResultData数据格式,返回的数据均存放于data字段中
2、接口鉴权方式
除获取token的接口外,其余的接口调用时需要进行token认证。认证过程如下:
1、调用获取token接口,传入账号、密码等信息获取token码;
2、在调用接口的时候需要在HTTP的请求头中增加token字段,字段值为获取到的token码。
注意事项:
Token时效为2小时,需要调用方在token失效前重新获取token
3、接口地址
http://dust.0531yun.cn
4、接口注意事项
调用接口(除测试、登录接口外)需要将token写入http请求头中。请求头字段名固定为token,字段值为登录接口获取到的token值。
token通过接口根据用户的登录名和密码获取。根据用户名和密码调用登录接口,登录成功后接口返回token。
接口中如无特殊说明,采用post方法的接口中参数为json格式,放入请求body中;采用get方法的接口中参数为查询参数,放入请求地址后
二、接口详细
1、登录操作
1.1 根据用户的登录名和密码获取token
1.1.1接口描述
接口编号 |
1.1 |
接口描述 |
根据用户的登录名和密码获取token |
接口地址 |
/api/getTokenByAcc |
请求方式 |
GET |
参数格式 |
JSON |
返回数据格式 |
JSON |
备注 |
|
参数名 |
数据类型 |
必填 |
说明 |
loginName |
string |
Y |
登录名和密码由平台方分配 |
password |
string |
Y |
密码 |
表1.1.1.1
1.1.2返回数据
Token数据
字段 |
类型 |
说明 |
expiration |
Long |
Token过期时间(时间戳) |
token |
String |
Token值 |
表1.1.2.1
1.1.3 返回数据示例
{
"code":1000,
"message":"获取成功",
"data":{
"token":"eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1ODc2MTE1MDgsInVzZXJJZCI6IjBiOTA1ZWIyNjBmMjRhZjI5MWE2OWNkMjY2NGM4ZjdlIiwiaWF0IjoxNTg3NjA0MzA4LCJqdGkiOiJ0b2tlbklkIn0.lVg4Fiyfb2nMkoxwbrwENzy5wdRZeMeWaEV5betNtks",
"expiration":1587611508
}
}
2、设备信息
2.1 获取当前用户绑定的设备
2.1.1接口描述
接口编号 |
2.1 |
接口描述 |
获取当前用户绑定的设备 |
接口地址 |
/api/device/getDevices |
请求方式 |
GET |
参数格式 |
JSON |
返回数据格式 |
String |
备注 |
|
参数名 |
数据类型 |
必填 |
说明 |
表2.1.1.1
2.1.2返回数据
设备信息
字段 |
类型 |
说明 |
deviceId |
string |
设备id |
devaddr |
integer |
设备地址 |
devName |
string |
设备名称 |
offalert |
boolean |
离线报警开关 |
offlinesmsalert |
boolean |
离线短信告警开关 |
offlineinterval |
integer |
离线判断时间(分钟) |
savedatainterval |
integer |
保存数据间隔(分钟) |
smsinterval |
integer |
短信告警间隔,单位分钟 |
smsalertmax |
integer |
短信告警限制次数,max |
projectId |
string |
所属项目id |
lat |
number |
纬度 |
lng |
number |
经度 |
phone1 |
string |
接收报警短信的手机号1 |
... |
string |
|
phone10 |
string |
接收报警短信的手机号10 |
createTime |
string |
创建时间 |
factorList |
Json数组 |
环境因子 参考表2.1.2.2 |
表2.1.2.1
节点信息
字段 |
类型 |
说明 |
factor |
string |
因子编码 |
factorText |
string |
因子名称 |
lowerLimit |
float |
下限 |
upperLimit |
float |
上限 |
smsType |
integer |
内容方式,0,系统默认;1,自定义内容 |
smsContent |
string |
节点告警内容 |
alarm |
boolean |
是否报警 |
factorUnit |
string |
单位 |
表2.1.2.2
2.1.3 返回数据示例
{
"code":1000,
"message":"获取成功",
"data":[
{
"deviceId":"11111111",
"projectId":"6fdf6e19ba824f3a9ef0bbff85e4ae16",
"devAddr":11111111,
"devName":"11111111",
"savedatainterval":5,
"offlineinterval":1,
"lat":34.331758,
"lng":107.255675,
"offalert":false,
"smsinterval":5,
"smsalertmax":3,
"phone1":"",
"phone2":"",
"phone3":"",
"phone4":"",
"phone5":"",
"phone6":null,
"phone7":null,
"phone8":null,
"phone9":null,
"phone10":null,
"createTime":"2020-04-30 09:36:48",
"factorList":[
{
"deviceId":"11111111",
"factor":"atm",
"factorText":"大气压",
"lowerLimit":0,
"upperLimit":10,
"smsType":null,
"smsContent":"",
"alarm":true,
"factorUnit":"kpa"
}
]
}
]
}
2.2 获取当前用户绑定的项目列表
2.2.1接口描述
接口编号 |
2.2 |
接口描述 |
获取当前用户绑定的项目列表 |
接口地址 |
/api/device/getCurrentUserProjectList |
请求方式 |
GET |
参数格式 |
JSON |
返回数据格式 |
String |
备注 |
|
参数名 |
数据类型 |
必填 |
说明 |
表2.2.1.1
2.2.2返回数据
项目信息
字段 |
类型 |
说明 |
projectId |
integer |
项目id |
parentId |
string |
父项目id |
projectType |
integer |
区域类型 0代表区域,1代表项目 |
projectName |
string |
项目名称 |
projectLocation |
string |
项目地址 |
chief |
string |
项目负责人 |
chiefPhone |
string |
负责人手机号 |
createTime |
string |
创建时间时间戳格式 |
createTimeStr |
string |
创建时间字符串格式 |
表2.2.1.2
2.2.3 返回数据示例
{
"code":1000,
"message":"获取成功",
"data":[
{
"projectId":"6fdf6e19ba824f3a9ef0bbff85e4ae16",
"parentId":"a6a3333e1dd44fceab89aa2b474a184d",
"projectType":1,
"projectName":"2020/3/18创建",
"projectLocation":"2",
"chief":"1",
"chiefPhone":"1",
"createTime":1584497860000,
"createTimeStr":"2020-03-18 10:17:40"
}
]}
2.3 根据项目id获取当前用户的设备列表
2.3.1接口描述
接口编号 |
2.3 |
接口描述 |
根据项目Id获取当前用户设备列表 |
接口地址 |
/api/device/getUserDeviceList |
请求方式 |
GET |
参数格式 |
JSON |
返回数据格式 |
String |
备注 |
|
参数名 |
数据类型 |
必填 |
说明 |
projectId |
String |
Y |
项目id |
表2.1.1.1
2.3.2返回数据
参考表2.1.2.1和2.1.2.2
2.3.3 返回数据示例
3、数据接口
3.1 查询实时数据
3.1.1接口描述
接口编号 |
3.1 |
接口描述 |
查询实时数据 |
接口地址 |
/api/data/getRealtimeData |
请求方式 |
GET |
参数格式 |
JSON |
返回数据格式 |
JSON |
备注 |
|
参数名 |
数据类型 |
必填 |
说明 |
deviceIds |
string |
Y |
设备id,多个设备用半角英文,分隔 |
表3.1.1.1
3.1.2返回数据
设备实时数据
字段 |
类型 |
说明 |
deviceId |
integer |
设备id |
status |
string |
设备状态 ”online”,”alarming”,”offline” |
r1 |
integer |
继电器1状态 1闭合 0断开 |
... |
|
|
r8 |
integer |
继电器16状态 1闭合 0断开 |
hum |
float |
湿度 |
wd8 |
float |
八风向 |
lux |
float |
光照 |
tsp |
float |
悬浮微粒 |
no2 |
float |
二氧化氮 |
so2 |
float |
二氧化硫 |
noise |
float |
噪音 |
wp |
float |
风力 |
atm |
float |
大气压 |
ws |
float |
风速 |
tem |
float |
温度 |
o3 |
float |
臭氧 |
pm10 |
float |
Pm10 |
co |
float |
一氧化碳 |
pm25 |
float |
Pm2.5 |
wd360 |
float |
风向 |
alarmInfos |
Json数组 |
报警信息 参考表3.1.2.2 |
表3.1.2.1
节点实时数据
字段 |
类型 |
说明 |
alarmInfo |
string |
报警说明 |
factor |
string |
报警因子 |
表3.1.2.2
3.1.3 返回数据示例
{
"code":1000,
"message":"获取成功",
"data":[
{
"r2":0,
"hum":25.7,
"r3":0,
"r4":0,
"r5":0,
"r6":0,
"r7":0,
"r8":0,
"wd8":174,
"deviceId":"11111111",
"lux":19136.965,
"tsp":127,
"no2":3.33,
"so2":4.71,
"noise":30.9,
"wp":115,
"atm":36.8,
"firstData":false,
"ws":29,
"tem":-42,
"o3":33.2,
"pm10":276,
"co":39.9,
"pm25":280,
"alarmInfos":[
{
"alarmInfo":"大气压越上限,当前值:36.8,上限值:10.0",
"factor":"atm"
}
],
"wd360":107,
"status":"alarming",
"r1":0
}
]
}
3.2 查询历史数据
3.2.1接口描述
接口编号 |
3.2 |
接口描述 |
查询历史数据 |
接口地址 |
/api/data/getHistoryData |
请求方式 |
GET |
参数格式 |
JSON |
返回数据格式 |
JSON |
备注 |
历史数据查询有查询频率限制,1分钟内最多查询6次 |
参数名 |
数据类型 |
必填 |
说明 |
deviceId |
integer |
Y |
设备id |
beginTime |
string |
Y |
开始时间,格式yyyy-MM-dd HH:mm:ss |
endTime |
string |
Y |
结束时间,格式yyyy-MM-dd HH:mm:ss |
表3.2.1.1
3.2.2返回数据
设备历史数据
字段 |
类型 |
说明 |
recordId |
string |
记录id |
deviceId |
integer |
设备地址 |
pm25 |
float |
Pm2.5 |
pm10 |
float |
Pm10 |
noise |
float |
噪声 |
tem |
float |
温度 |
hum |
float |
湿度 |
wp |
float |
风力 |
ws |
float |
风速 |
wd8 |
float |
八风向 |
wd360 |
float |
风向 |
tsp |
float |
悬浮微粒 |
atm |
float |
大气压 |
lux |
float |
光照 |
co |
float |
一氧化碳 |
so2 |
float |
二氧化硫 |
no2 |
float |
二氧化氮 |
o3 |
float |
臭氧 |
isAlarm |
Boolean |
是否为报警数据 |
alarmFactor |
string |
报警因子,多个用,分隔 |
recordTime |
Long |
记录时间时间戳 |
strtime |
string |
字符串格式的记录时间 |
表3.2.2.1
3.2.3 返回数据示例
{
"code":1000,
"message":"获取成功",
"data":[
{
"recordId":4169,
"deviceId":"22222222",
"pm25":171,
"pm10":-166,
"noise":47,
"tem":18.8,
"hum":27.5,
"wp":-326,
"ws":44.5,
"wd8":-446,
"wd360":255,
"tsp":232,
"atm":20.5,
"lux":25755.37,
"co":42.3,
"so2":4.84,
"no2":4.9,
"o3":5.1,
"isAlarm":false,
"alarmFactor":null,
"recordTime":1584510020000,
"strtime":"2020-03-18 13:40"
}
]
}