新聞中心
PRESS CENTER請求幀格式 | |||
字段 | 必須 | 類型 | 描述 |
msgType | 是 | string | get_req(讀操作)/set_req(寫操作) |
msgPath | 是 | string | 指示目標數(shù)據(jù)點,下文有詳細介紹 |
msgId | 是 | string | 默認時間戳,用于匹配請求幀和響應幀 |
data | 是 | string | msgPath不同,data格式不同 |
響應幀格式 | |||
字段 | 必須 | 類型 | 描述 |
msgType | 是 | string | get_res(讀響應)/set_res(寫響應) |
msgPath | 是 | string | 指示目標數(shù)據(jù)點,下文有詳細介紹 |
msgId | 是 | string | 和請求幀msgId保持一致 |
code | 是 | int | 狀態(tài)碼0-成功;其他-失敗錯誤碼 |
data | 是 | string | msgPath不同,data格式不同 |
msgPath支持:/devInfo/devInfo/sn/devInfo/addr/devInfo/ver/devInfo/cmd/devInfo/passwd。不同屬性描述如下所示:
字段 | 讀/寫 | 類型 | 描述 |
sn | 讀 | string | 產(chǎn)品序列號,縱橫產(chǎn)品唯一標識符,長度固定為15 字節(jié) |
addr | 讀 | int | 設備Modbus地址(1-255) |
ver | 讀 | string | 固件版本號 |
cmd | 寫 | int | 系統(tǒng)命令1-重啟2-復位3-復位+重啟 |
passwd | 讀/寫 | string | 設備密碼,最小6字節(jié),最大64字節(jié),默認值:ET12345678 |
1.1. 讀操作
讀取設備信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/devInfo"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/devInfo",
"code": 0,
"data": {
"sn": "xxxxxxxxxxxxxxxxxxx",
"addr": 1,
"ver": "xxxxxxxxxxxxxxx" ,
"passwd": "xxxxxxxxxxxxxxx"
}
}
讀取設備SN示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/devInfo/sn"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/devInfo/sn",
"code": 0,
"data": "xxxxxxxxxxxxxxx"
}
其余屬性讀操作類似,不在舉例。
1.2. 寫操作
設置設備信息示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/devInfo",
"data": {
"cmd":1
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/devInfo",
"code": 0
}
設置設備密碼示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/devInfo/passwd",
"data": "xxxxxxxxxxxxxxxxxxx"
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/devInfo/passwd",
"code": 0
}
其余屬性寫操作類似,不在舉例。
msgPath支持:/ntpInfo/ntpInfo/enable/ntpInfo/server/ntpInfo/timeStamp。不同屬性描述如下所示:
字段 | 讀/寫 | 類型 | 描述 |
enable | 讀/寫 | int | 0-禁用1-啟用 |
server | 讀/寫 | string | 服務器地址,最大字節(jié)為128,默認為ntp.ntsc.ac.cn |
timeStamp | 讀 | int | 時間戳 |
2.1. 讀操作
讀取NTP信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/ntpInfo"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/ntpInfo",
"code": 0,
"data": {
"enable": 1,
"server": "xxxxxxxxxxxxxxx",
"timeStamp": 67887887
}
}
讀取服務器示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/ntpInfo/server"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/ntpInfo/server",
"code": 0,
"data": "xxxxxxxxxxxxxxx"
}
其余屬性讀操作類似,不在舉例。
2.2. 寫操作
設置NTP信息示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/ntpInfo",
"data": {
"enable": 0,
"server": "xxxxxxxxxxxxxxx"
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/ntpInfo",
"code": 0
}
設置服務器示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/ntpInfo/server",
"data": "xxxxxxxxxxxxxxx"
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/ntpInfo/server",
"code": 0
}
其余屬性寫操作類似,不在舉例。
msgPath支持:/lteInfo/lteInfo/iccid/lteinfo/imei/lteinfo/csq/lteInfo/apn 。不同屬性描述如下所示:
字段 | 類型 | 類型 | 描述 |
iccid | 讀 | string | 卡號,固定字節(jié)長度為15 |
imei | 讀 | string | imei號,固定字節(jié)長度為20 |
csq | 讀 | int | 信號值 |
apn | 讀/寫 | string | apn幀格式 |
apn幀格式 | |||
字段 | 類型 | 類型 | 描述 |
addr | 讀/寫 | string | apn地址,最大字節(jié)128,默認為空 |
name | 讀/寫 | string | apn用戶名,最大字節(jié)64,默認為空 |
passwd | 讀/寫 | string | apn密碼,最大字節(jié)64,默認為空 |
3.1. 讀操作
讀取4G信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/lteInfo"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/lteInfo",
"code": 0,
"data": {
"iccid": "xxxxxxxxxxxxxxxxxxx",
"imei": "xxxxxxxxxxxxxxx",
"csq": 26,
"apn": {
"addr": "xxxxxxxxxxxxxxxxxxx",
"name": "xxxxxxxxxxxxxxxxxxx",
"passwd": "xxxxxxxxxxxxxxxxxxx"
}
}
}
讀取APN示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/lteInfo/apn"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/lteInfo/apn",
"code": 0,
"data": {
"addr": "xxxxxxxxxxxxxxxxxxx",
"name": "xxxxxxxxxxxxxxxxxxx",
"passwd": "xxxxxxxxxxxxxxxxxxx"
}
}
其余屬性讀操作類似,不在舉例。
3.2. 寫操作
設置APN信息示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/lteInfo/apn",
"data": {
"addr": "xxxxxxxxxxxxxxxxxxx",
"name": "xxxxxxxxxxxxxxxxxxx",
"passwd": "xxxxxxxxxxxxxxxxxxx"
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/lteInfo/apn",
"code": 0
}
其余屬性寫操作類似,不在舉例。
共8個可用鬧鐘,msgPath支持:/alarmInfo/alarmInfo/x 。不同屬性描述如下所示:
字段 | 讀/寫 | 類型 | 描述 |
mode | 讀/寫 | int | 0-禁用1-啟用 |
hour | 讀/寫 | int | 小時[0-23] |
min | 讀/寫 | int | 分鐘[0-59] |
sec | 讀/寫 | int | 秒[0-59] |
target | 讀/寫 | int | [0-79](表示控制第x路DO);255(表示重啟) |
action | 讀/寫 | int | 0-斷開1-閉合 |
4.1. 讀操作
讀取鬧鐘信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/alarmInfo"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/alarmInfo",
"code": 0,
"data":{
"0":{
"mode": 1,
"hour": 8,
"min": 45,
"sec": 11,
"target": 55,
"action": 0
},
"7":{
"mode": 1,
"hour": 8,
"min": 45,
"sec": 11,
"target": 55,
"action": 0
}
}
}
讀取第一個鬧鐘信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/alarmInfo/0"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/alarmInfo/0",
"code": 0,
"data": {
"mode": 1,
"hour": 8,
"min": 45,
"sec": 11,
"target": 55,
"action": 0
}
}
其余屬性讀操作類似,不在舉例。
4.2. 寫操作
設置鬧鐘信息示例:
在超市執(zhí)行,/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/alarmInfo",
"data":{
"0":{
"mode": 1,
"hour": 8,
"min": 45,
"sec": 11,
"target": 55,
"action": 0
},
"7":{
"mode": 1,
"hour": 8,
"min": 45,
"sec": 11,
"target": 55,
"action": 0
}
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/alarmInfo",
"code": 0
}
設置第一個鬧鐘信息示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/alarmInfo/0",
"data": {
"mode": 1,
"hour": 8,
"min": 45,
"sec": 11,
"target": 55,
"action": 0
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/alarmInfo/0",
"code": 0
}
其余屬性寫操作類似,不在舉例。
共8條可用邏輯,msgPath支持:/logicInfo/logicInfo/x。不同屬性描述如下所示:
字段 | 讀/寫 | 類型 | 描述 |
mode | 讀/寫 | int | 0-關閉邏輯1-正向跟隨2-反向跟隨 3-模擬量跟隨4-大于等于5-小于等于 |
addr | 讀/寫 | int | 00H表示本地跟隨(本地跟隨永不超時),01H-FEH表示跟隨遠端設備 |
inReg | 讀/寫 | int | 輸入寄存器地址,0表示DI1或者AI1 |
outType | 讀/寫 | int | 輸出寄存器類型,0-DO輸出4-AO輸出 |
outReg | 讀/寫 | int | 輸出寄存器地址,0表示DO1或者AO1 |
thr | 讀/寫 | int | 在模式4和模式5時AI比較的閾值,0-25000,單位uA |
outTime | 讀/寫 | int | 在模式1/2時DO跟隨DI斷聯(lián)超時時間,0-65535,單位秒, 在模式3時AO跟隨AI斷聯(lián)超時時間,0-65535,單位秒 |
outThr | 讀/寫 | int | 在模式3時AO跟隨AI斷聯(lián)后輸出值,0-25000,單位uA |
action | 讀/寫 | int | 在模式1/2時DO跟隨DI斷聯(lián)后DO執(zhí)行動作, 在模式4/5時條件滿足時DO執(zhí)行動作, 0-斷開1-閉合2-翻轉(zhuǎn) |
5.1. 讀操作
讀取邏輯信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/logicInfo"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/logicInfo",
"code": 0,
"data":{
"0":{
"mode": 1,
"addr": 60,
"inReg": 55,
"outType": 0,
"outReg": 55,
"thr": 2000,
"outTime": 10,
"outThr": 4000,
"action": 1
},
"7":{
"mode": 1,
"addr": 60,
"inReg": 55,
"outType": 0,
"outReg": 55,
"thr": 2000,
"outTime": 10,
"outThr": 4000,
"action": 1
}
}
}
讀取第一條邏輯信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/logicInfo/0"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/logicInfo/0",
"code": 0,
"data": {
"mode": 1,
"addr": 60,
"inReg": 55,
"outType": 0,
"outReg": 55,
"thr": 2000,
"outTime": 10,
"outThr": 4000,
"action": 1
}
}
其余屬性讀操作類似,不在舉例。
5.2. 寫操作
設置邏輯信息示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/logicInfo",
"data":{
"0":{
"mode": 1,
"addr": 60,
"inReg": 55,
"outType": 0,
"outReg": 55,
"thr": 2000,
"outTime": 10,
"outThr": 4000,
"action": 1
},
"7":{
"mode": 1,
"addr": 60,
"inReg": 55,
"outType": 0,
"outReg": 55,
"thr": 2000,
"outTime": 10,
"outThr": 4000,
"action": 1
}
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/logicInfo",
"code": 0
}
設置第一條邏輯信息示例:
,/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/logicInfo/0",
"data": {
"mode": 1,
"addr": 60,
"inReg": 55,
"outType": 0,
"outReg": 55,
"thr": 2000,
"outTime": 10,
"outThr": 4000,
"action": 1
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/logicInfo/0",
"code": 0
}
其余屬性寫操作類似,不在舉例。
msgPath支持:/uartInfo/uartInfo/baudrate/uartInfo/bytesize/uartInfo/parity/uartInfo/stopbit/uartInfo/timeout/uartInfo/hbt/uartInfo/hbt/x。不同屬性描述如下所示:
字段 | 讀/寫 | 類型 | 描述 |
baudrate | 讀/寫 | int | 波特率,2400-921600,默認115200 |
bytesize | 讀/寫 | int | 數(shù)據(jù)位,78 |
parity | 讀/寫 | int | 校驗位,0-NONE1-ODD2-EVEN |
stopbit | 讀/寫 | int | 停止位,11.52 |
timeout | 讀/寫 | int | 分幀間隔,50-500,單位ms |
hbt | 讀/寫 | string | 串口心跳(幀格式) |
串口心跳幀格式 | |||
字段 | 讀/寫 | 類型 | 描述 |
cyc | 讀/寫 | int | 串口心跳周期,0-65535,單位秒 |
len | 讀/寫 | int | 串口心跳長度,0-128 |
content | 讀/寫 | string | 串口心跳內(nèi)容,最大字節(jié)128,base64加密后字符串 |
6.1. 讀操作
讀取串口信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/uartInfo"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/uartInfo",
"code": 0,
"data": {
"baudrate": 115200,
"bytesize":8 ,
"parity":0 ,
"stopbit": 1,
"timeout": 50,
"hbt": {
"0":{
"cyc": 30,
"len": 3,
"content": "MTIz"
},
"7":{
"cyc": 30,
"len": 3,
"content": "MTIz"
}
}
}
}
讀取串口心跳示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/uartInfo/hbt"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/uartInfo/hbt",
"code": 0,
"data": {
"0":{
"cyc": 30,
"len": 3,
"content": "MTIz"
},
"7":{
"cyc": 30,
"len": 3,
"content": "MTIz"
}
}
}
其余屬性讀操作類似,不在舉例。
6.2. 寫操作
設置串口信息示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/uartInfo",
"data": {
"baudrate": 115200,
"bytesize": 8,
"parity": 0,
"stopbit": 1,
"timeout": 50,
"hbt": {
"0":{
"cyc": 30,
"len": 3,
"content": "MTIz"
},
"7":{
"cyc": 30,
"len": 3,
"content": "MTIz"
}
}
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/uartInfo",
"code": 0
}
設置串口心跳示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/uartInfo/hbt",
"data": {
"0":{
"cyc": 30,
"len": 3,
"content": "MTIz"
},
"7":{
"cyc": 30,
"len": 3,
"content": "MTIz"
}
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/uartInfo/hbt",
"code": 0
}
其余屬性寫操作類似,不在舉例。
msgPath支持:/diInfo/diInfo/num/diInfo/rpt_enable/diInfo/rpt_cyc/diInfo/rpt_type/diInfo/rpt_direction/diInfo/value/diInfo/value/x。不同屬性描述如下所示:
字段 | 讀/寫 | 類型 | 描述 |
num | 讀 | int | DI接口數(shù)量,硬件決定,最大為80 |
rpt_enable | 讀/寫 | int | 主動上報,0-禁用1-啟用 |
rpt_cyc | 讀/寫 | int | 主動上報周期,0-65535,默認為60,單位秒 |
rpt_type | 讀/寫 | int | 上報數(shù)據(jù)格式,0-MODBUS-RTU1-MODBUS-TCP 2-JSON |
rpt_direction | 讀/寫 | int | 上報方向,0-北向 1-南向 2-南北向 |
value | 讀 | int | 0-斷開 1-閉合 |
7.1. 讀操作
讀取DI信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/diInfo"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/diInfo",
"code": 0,
"data": {
"num": 2,
"rpt_enable":1,
"rpt_cyc":30 ,
"rpt_type": 1,
"rpt_direction": 1,
"value": {
"0": 0,
"l": 0
}
}
}
讀取DI接口數(shù)據(jù)示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/diInfo/value"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/diInfo/value",
"code": 0,
"data": {
"0": 0,
"l": 0
}
}
其余屬性讀操作類似,不在舉例。
7.2. 寫操作
設置DI信息示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/diInfo",
"data": {
"rpt_enable":1,
"rpt_cyc":30 ,
"rpt_type":1,
"rpt_direction": 1
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/diInfo",
"code": 0
}
其余屬性寫操作類似,不在舉例。
msgPath支持:/doInfo/doInfo/num/doInfo/rpt_enable/doInfo/rpt_type/doInfo/rpt_direction/doInfo/rst_enable/doInfo/hold_time/doInfo/hold_time/x/doInfo/turn_time/doInfo/turn_time/x/doInfo/value/doInfo/value/x。不同屬性描述如下所示:
字段 | 讀/寫 | 類型 | 描述 |
num | 讀 | int | DO接口數(shù)量,硬件決定,最大為80 |
rpt_enable | 讀/寫 | int | 主動上報,0-禁用1-啟用 |
rpt_type | 讀/寫 | int | 上報數(shù)據(jù)格式,0-MODBUS-RTU1-MODBUS-TCP 2-JSON |
rpt_direction | 讀/寫 | int | 上報方向,0-北向 1-南向 2-南北向 |
rst_enable | 讀/寫 | int | 重啟狀態(tài)保持,0-禁用1-啟用 |
hold_time | 讀/寫 | string | 輸出保持時間,0-65535,單位秒 |
turn_time | 讀/寫 | string | 周期翻轉(zhuǎn)時間,0-65535,單位秒 |
value | 讀/寫 | string | 0-斷開1-閉合 |
8.1. 讀操作
讀取DO信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/doInfo"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/doInfo",
"code": 0,
"data": {
"num": 2,
"rpt_enable":1,
"rpt_type": 1,
"rpt_direction": 1,
"rst_enable": 0,
"hold_time": {
"0": 30,
"l": 30
},
"turn_time": {
"0": 30,
"l": 30
},
"value": {
"0": 0,
"l": 0
}
}
}
讀取DO輸出狀態(tài)示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/doInfo/value"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/doInfo/value",
"code": 0,
"data": {
"0": 1,
"l": 1
}
}
其余屬性讀操作類似,不在舉例。
8.2. 寫操作
設置DO信息示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/doInfo",
"data": {
"rpt_enable":1,
"rpt_type":1,
"rpt_direction": 1,
"rst_enable":1 ,
"hold_time": {
"0": 30,
"l": 30,
"num-1": 30
},
"turn_time": {
"0": 30,
"l": 30,
"num-1": 30
},
"value": {
"0": 0,
"l": 0,
"num-1": 0
}
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/doInfo",
"code": 0
}
設置DO輸出示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/doInfo/value",
"data": {
"0": 1,
"l": 1
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/doInfo/value",
"code": 0
}
其余屬性寫操作類似,不在舉例。
msgPath支持:/aiInfo/aiInfo/num/aiInfo/rpt_enable/aiInfo/rpt_cyc/aiInfo/rpt_type/aiInfo/rpt_direction/aiInfo/range/aiInfo/range/x/aiInfo/value/aiInfo/value/x。不同屬性描述如下所示:
字段 | 讀/寫 | 類型 | 描述 |
num | 讀 | int | AI接口數(shù)量,硬件決定,最大為80 |
rpt_enable | 讀/寫 | int | 主動上報,0-禁用1-啟用 |
rpt_cyc | 讀/寫 | int | 主動上報周期,0-65535,默認為60,單位秒 |
rpt_type | 讀/寫 | int | 上報數(shù)據(jù)格式,0-MODBUS-RTU1-MODBUS-TCP 2-JSON |
rpt_direction | 讀/寫 | int | 上報方向,0-北向 1-南向 2-南北向 |
range | 讀/寫 | string | 閥值上報(幀格式) |
value | 讀 | string | 0-20000,單位uA |
閥值上報幀格式 | |||
字段 | 讀/寫 | 類型 | 描述 |
min | 讀/寫 | int | 最小值,4000-20000,單位uA |
max | 讀/寫 | int | 最大值,4000-20000,單位uA |
rule | 讀/寫 | int | 上報規(guī)則,0-范圍內(nèi)1-范圍外 |
9.1. 讀操作
讀取AI信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/aiInfo"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/aiInfo",
"code": 0,
"data": {
"num": 8,
"rpt_enable":1,
"rpt_cyc":30 ,
"rpt_type": 1,
"rpt_direction": 1,
"range": {
"0": {
"min": 4000,
"max": 20000,
"rule": 0,
},
"1": {
"min": 4000,
"max": 20000,
"rule": 0,
},
"7": {
"min": 4000,
"max": 20000,
"rule": 0,
}
},
"value": {
"0": 4600,
"l": 4600,
"7": 4600
}
}
}
讀取AI接口數(shù)據(jù)示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/aiInfo/value"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/aiInfo/value",
"code": 0,
"data": {
"0": 4600,
"l": 4600,
"7": 4600
}
}
其余屬性讀操作類似,不在舉例。
9.2. 寫操作
設置AI信息示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/aiInfo",
"data": {
"rpt_enable":1,
"rpt_cyc":30 ,
"rpt_type":1,
"rpt_direction": 1,
"range": {
"0": {
"min": 4000,
"max": 20000,
"rule": 0,
},
"1": {
"min": 4000,
"max": 20000,
"rule": 0,
},
"num-1": {
"min": 4000,
"max": 20000,
"rule": 0,
}
}
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/aiInfo",
"code": 0
}
其余屬性寫操作類似,不在舉例。
10. AO信息
msgPath支持:/aoInfo/aoInfo/num/aoInfo/rpt_enable/aoInfo/rpt_type/aoInfo/rpt_direction/aoInfo/value/aoInfo/value/x。不同屬性描述如下所示:
字段 | 讀/寫 | 類型 | 描述 |
num | 讀 | int | AO接口數(shù)量,硬件決定,最大為80 |
rpt_enable | 讀/寫 | int | 主動上報,0-禁用1-啟用 |
rpt_type | 讀/寫 | int | 上報數(shù)據(jù)格式,0-MODBUS-RTU1-MODBUS-TCP 2-JSON |
rpt_direction | 讀/寫 | int | 上報方向,0-北向 1-南向 2-南北向 |
value | 讀/寫 | string | 0-20000,單位uA |
10.1. 讀操作
讀取AO信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/aoInfo"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/aoInfo",
"code": 0,
"data": {
"num": 2,
"rpt_enable":1,
"rpt_type": 1,
"rpt_direction": 1,
"value": {
"0": 0,
"l": 0
}
}
}
讀取AO接口數(shù)據(jù)示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/aoInfo/value"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/aoInfo/value",
"code": 0,
"data": {
"0": 0,
"l": 0,
"num-1": 0
}
}
其余屬性讀操作類似,不在舉例。
10.2. 寫操作
設置AO信息示例:
/*請求*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/aoInfo",
"data": {
"rpt_enable":1,
"rpt_type":1,
"rpt_direction": 1,
"value": {
"0": 0,
"l": 0,
"num-1": 0
}
}
}
/*響應*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/aoInfo",
"code": 0
}
其余屬性寫操作類似,不在舉例。
msgPath支持:/socketInfo/socketInfo/x/socketInfo/x/enable/socketInfo/x/type/socketInfo/x/state/socketInfo/x/addr/socketInfo/x/port/socketInfo/x/reg/socketInfo/x/hbt/socketInfo/x/mqtt。不同屬性描述如下所示:
字段 | 讀/寫 | 類型 | 描述 |
enable | 讀/寫 | int | SOCKET工作狀態(tài),0-禁用1-啟用 |
type | 讀/寫 | int | 協(xié)議類型,0-TCP1-UDP2-MQTT |
state | 讀 | int | 連接狀態(tài), 0-未連接1-連接 |
addr | 讀/寫 | string | 連接地址,最大字節(jié)為128 |
port | 讀/寫 | int | 端口 |
reg | 讀/寫 | string | 注冊包 |
hbt | 讀/寫 | string | 心跳包 |
mqtt | 讀/寫 | string | mqtt |
注冊包幀格式 | |||
字段 | 讀/寫 | 類型 | 描述 |
type | 讀/寫 | int | 0-禁用1-設備ID號 2-IMEI號3-ICCID 4-自定義 |
mode | 讀/寫 | int | 0-連接發(fā)送1-數(shù)據(jù)發(fā)送 |
content | 讀/寫 | string | 注冊包內(nèi)容,最大字節(jié)為128,base64字符串 |
len | 讀/寫 | int | 注冊包長度,0-128 |
心跳包幀格式 | |||
字段 | 讀/寫 | 類型 | 描述 |
type | 讀/寫 | int | 0-禁用1-啟用 |
cyc | 讀/寫 | int | 心跳包周期,0-65535,單位秒,默認30 |
content | 讀/寫 | string | 心跳包內(nèi)容,最大字節(jié)為128,base64 字符串,默認為ping!!! |
len | 讀/寫 | int | 心跳包長度,0-128 |
mqtt幀格式 | |||
字段 | 讀/寫 | 類型 | 描述 |
clientId | 讀/寫 | string | 客戶端ID,最大字節(jié)為128,默認為mqtt-clientId-x |
user | 讀/寫 | string | 用戶名,最大字節(jié)為128 |
passwd | 讀/寫 | string | 密碼,最大字節(jié)為128 |
keepAlive | 讀/寫 | int | 心跳,0-65535,單位秒,默認為60 |
clean | 讀/寫 | int | 清除會話,0-禁用1-啟用 |
ssl | 讀/寫 | int | 0-禁用1-啟用 |
sub | 讀/寫 | string | 訂閱(最多同時訂閱兩個主題) |
pub | 讀/寫 | string | 發(fā)布 |
will | 讀/寫 | string | 遺囑 |
pub幀格式 | |||
字段 | 讀/寫 | 類型 | 描述 |
topic | 讀/寫 | string | 發(fā)布主題,最大字節(jié)為128,默認為空 |
qos | 讀/寫 | int | 012 |
will幀格式 | |||
字段 | 讀/寫 | 類型 | 描述 |
flag | 讀/寫 | int | 0-禁用1-啟用 |
topic | 讀/寫 | string | 最大字節(jié)為128,默認為will |
msg | 讀/寫 | string | 最大字節(jié)為128,默認為I'm offline! |
11.1. 讀操作
讀取socket-0信息示例:
/*請求*/
{
"msgType": "get_req",
"msgId": "123456001",
"msgPath": "/socketInfo/0"
}
/*響應*/
{
"msgType": "get_res",
"msgId": "123456001",
"msgPath": "/socketInfo/0",
"code": 0,
"data": {
"enable": 0,
"type": 1,
"state": 1,
"addr":"xxxxxxxxxxxx" ,
"port":5600,
"reg":{
"type": 1,
"mode": 1,
"content":"xxxxxxx" ,
"len":0
},
"hbt":{
"type": 1,
"mode": 1,
"content":"xxxxxxx" ,
"len":7
},
"mqtt":{
"clientId":"xxxxxxxxxxxx" ,
"user":"xxxxxxxxxxxx" ,
"passwd":"xxxxxxxxxxxx" ,
"keepAlive":60,
"clean":1,
"ssl":1,
"sub":{
"0":{
"topic":"xxxxxxxxxxxx" ,
"qos":0,
},
"1":{
"topic":"xxxxxxxxxxxx" ,
"qos":0,
}
},
"pub":{
"0":{
"topic":"xxxxxxxxxxxx" ,
"qos":0,
}
},
"will":{
"flag":0,
"topic":"xxxxxxxxxxxx" ,
"msg":"xxxxxxxxxxxx",
}
}
}
}
其余屬性讀操作類似,不在舉例。
11.2. 寫操作
設置socket-0信息示例:
/*請求*/
{
"msgType": "set_res",
"msgId": "123456001",
"msgPath": "/socketInfo/0",
"data": {
"enable": 0,
"type": 1,
"addr":"xxxxxxxxxxxx",
"port":5600,
"reg":{
"type": 1,
"mode": 1,
"content":"xxxxxxxx",
"len":8
},
"hbt":{
"type": 1,
"mode": 1,
"content":"xxxxxxxx",
"len":8
},
"mqtt":{
"clientId":"xxxxxxxxxxxx",
"user":"xxxxxxxxxxxx",
"passwd":"xxxxxxxxxxxx",
"keepAlive":30,
"clean":1,
"ssl":1,
"sub":{
"0":{
"topic":"xxxxxxxxxxxx",
"qos":1
},
"1":{
"topic":"xxxxxxxxxxxx",
"qos":1
}
},
"pub":{
"0":{
"topic":"xxxxxxxxxxxx",
"qos":1,
}
},
"will":{
"flag":1,
"topic":"xxxxxxxxxxxx",
"msg":"xxxxxxxxxxxx",
}
}
}
}
/*響應*/
{
"msgType": "set_req",
"msgId": "123456001",
"msgPath": "/socketInfo/0",
"code": 0
}
其余屬性寫操作類似,不在舉例。