一、統一說明
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"
}
]
}