第三方平臺接入指南
更新時間:2019-04-19
配置信息
1、第三方平臺用戶在配置頁面上填寫自己服務器的URL和token,以HTTP開頭,用來接收極動云平臺的 驗證信息和推送信息,同時還需選擇數據加密方式(明文或者密文)。
2、提交配置信息后,極動云平臺會發http get請求到用戶填寫的URL中,參數包括signature、nonce、
timestamp(nonce:隨機字符串,timestamp:當前時間戳,signature:簽名),第三方平臺用戶收到后對token、
nonce和timestamp進行校驗,若確認,就返回nonce,接入生效。
signature = MD5(SHA1(token+nonce+timestamp))

接口說明
1、獲取平臺token(GET)
URL | https://api.expeedos.cn/v1/platform/token?platform_key=xxx&secret_key=yyy |
http頭部 | |
Request | |
Responese |
{ “result_code”:0, “access_token”:”zzz”, “expires_in”:7200, “result_message”:”ok” } |
注意事項 | 該接口每日調用次數不能超過200次 |
參數說明
標簽 | 類型 | 是否必填 | 含義 |
---|---|---|---|
platform_key | String | Y | 平臺識別碼 |
secret_key | String | Y | 密鑰 |
token | String | 調用接口憑證 | |
expires_in | int | 憑證有效時間(秒) | |
result_code/result_message | int | 0代表成功,對應"result_message"為"ok"; 1代表失敗,對應"result_message"為"驗證失敗"; |
2、設備上下線狀態查詢(GET)
URL | https://api.expeedos.cn/v1/devices/device_status/{device_id} |
http頭部 | access_token:xxx; device_key:xxx |
Request | |
Responese |
{ “result_code”:0, “device_status”:1, “result_message”:”ok” } |
注意事項 |
參數說明
標簽 | 類型 | 是否必填 | 含義 |
---|---|---|---|
token | String | Y | 調用接口憑證 |
device_id | String | Y | 設備ID |
device_key | String | ||
result_code/result_message | int | 0代表成功,對應"result_message"為"ok"; 1 代表token過期,對應"result_message"為"token過期"; 2 代表設備不存在,對應"result_message"為"設備不存在"; … |
|
device_status | int | 設備狀態,0為離線,1為上線; |
3、查詢設備當前狀態(GET)
URL | https://api.expeedos.cn/v1/devices/{device_id}/currentDatapoints?id=xxx,yyy |
http頭部 | access_token:xxx; device_key=xxx |
Request(JSON) | |
Responese |
{ "result_code":0; "result_message":"ok" "data":{ "xxx":0, "yyy":2 } } |
注意事項 |
參數說明
標簽 | 類型 | 是否必填 | 含義 |
---|---|---|---|
access_token | String | Y | 調用接口憑證 |
device_id | String | Y | 設備ID |
device_key | String | ||
id | String | 狀態屬性名稱,查詢所有屬性填“all” |
4、查詢設備歷史記錄(GET)
URL | https://api.expeedos.cn/v1/devices/{device_id}/datapoints?id=xxx,yyy&start=xxx&end=xxx&limit=8&cursor=ZZZ&first=0 |
http頭部 | access_token:xxx; device_key=xxx |
Request(JSON) | |
Responese |
{ “result_code”:0; “result_message”:”ok” “cursor”: 1486958400000, “data”:[{ “timestamp”:”2017-02-13T12-00-00-000”, ”xxx”:0; ”yyy”:2; }, { “timestamp”:”2017-02-13T12-00-01-000”, ”xxx”:2 }, … ] } |
注意事項 |
參數說明
標簽 | 類型 | 是否必填 | 含義 |
---|---|---|---|
access_token | String | Y | 調用接口憑證 |
device_id | String | Y | 設備ID |
device_key | String | Y | |
id | String | N | 要查詢的數據點名,多個查詢以“,”隔開,不傳則默認傳該設備下所有數據點 |
start | String | N | 起始時間,傳時間格式,例2017-02-13T12-00-00-000;start與end必須成對出現 |
end | String | N | 截止時間,傳時間格式,例2017-02-13T12-00-00-000;start與end必須成對出現 |
first | int | N | 0表示按最近時間排序,1表示按最早時間排序,默認不填為0; |
limit | int | N | 限定本次請求最多返回的數據點的數量,取值1-6000,不傳則默認查詢100; |
cursor | long | N | 指定本次請求繼續從cursor位置開始提取數據 |
cursor | long | N | 指定本次請求繼續從cursor位置開始提取數據 |
result_code/result_message | int/String | 0代表成功,對應“result_message”為”ok”; 1 代表token過期,對應“result_message”為“token過期”; 2 代表設備不存在,對應“result_message”為“設備不存在”; 3 代表查詢參數非法,對應”result_message”為“查詢參數非法”; … |
5、設備上下線通知(POST)
URL | 用戶注冊URL |
http頭部 | |
Request(JSON) | { “msg_type”:”1”, “device_id”:xxx, “device_key”:xxx, “device_sn”:xxx, “device_status”:0 } |
Responese | { “result_code”:0, “result_msg”:”ok” } |
參數說明
標簽 | 類型 | 是否必填 | 含義 |
---|---|---|---|
msg_type | String | Y | 1為設備上下線通知;2為設備數據上送通知;3為設置信息返回通知 |
device_id | String | Y | 設備ID |
device_status | String | 設備狀態,0為上線,1為離線; | |
device_sn | String | 設備SN | |
result_code | String | 0代表成功;... | |
result_message | String | 返回信息; |
6、設備數據上送通知(POST)
URL | 用戶注冊URL |
http頭部 | |
Request(JSON) | { “device_id”:xxx “device_key”:xxx “msg_type”:”2” data:[{ “timestamp”:”2017-02-13T12-00-00-000”, “value1”:xx, “value2”:yy … }, { “timestamp”:”2017-02-13T12-00-00-000”, “value1”:xx, “value2”:yy … }, .. ] } |
Responese | { “result_code”:0, “result_message”:”ok” } |
參數說明
標簽 | 類型 | 是否必填 | 含義 |
---|---|---|---|
msg_type | String | Y | 1為設備上下線通知;2為設備數據上送通知;3為設置信息返回通知 |
device_id | String | Y | 設備ID |
data | JSON數組 | 具體數據 | |
result_message | String | 返回信息; |
7、應用端發送設置信息(POST)
URL | https://api.expeedos.cn/v1/devices/{device_id}/device_setting |
http頭部 | access_token:xxx; device_key=xxx |
Request(JSON) | { “temp”:xxx; “switch”:xxx; } |
Responese | { “result_code”:0, “result_message”:”ok”, “message_id”:xxxxx } |
參數說明
標簽 | 類型 | 是否必填 | 含義 |
---|---|---|---|
token | String | Y | 調用接口憑證 |
device_id | String | Y | 設備ID |
device_key | String | Y | |
data | Y | 設置信息 | |
result_code/result_message | int/String | 0代表成功,對應“result_message”為”ok”; 1 代表token過期,對應“result_message”為“token過期”; 2 代表設備不存在,對應“result_message”為“設備不存在”; 3 代表設備不在線,對應“result_message”為“設備不在線” … | |
message_id | String | 用于標識設置返回信息 | 設置信息 |
8、服務器返回設置信息(POST)
URL | 用戶注冊URL |
http頭部 | access_token:xxx; device_key=xxx |
Request(JSON) | { “msg_type”:3; “message_id”: xxx “device_id”:xxx “set_result”:0 } |
Responese | { “result_code”:0; “result_message”:”ok” } |
參數說明
標簽 | 類型 | 是否必填 | 含義 |
---|---|---|---|
msg_type | String | Y | 1為設備上下線通知;2為設備數據上送通知;3為設置信息返回通知 |
message_id | String | Y | 用于標識設置返回信息 |
device_id | String | Y | 設備ID |
set_result | String | Y | 0為設置成功;1為設置失??; |
result_code | int | Y | 0代表成功;… |
result_message | String | Y | 返回信息; |
錯誤代碼
錯誤代碼(resul_code) | 錯誤信息(result_message) | 注釋 |
---|---|---|
0 | ok | 成功 |
1 | token過期 | token過期 |
2 | 設備不存在 | 設備不存在 |
3 | Device_key不存在 | |
4 | URL參數非法 | |
5 | BODY參數非法 |