mirror of
https://github.com/emqx/neuron.git
synced 2026-10-19 05:51:27 +08:00
180 lines
5.6 KiB
Plaintext
180 lines
5.6 KiB
Plaintext
*** Settings ***
|
|
Library REST http://127.0.0.1:7001
|
|
Resource common.resource
|
|
|
|
*** Variables ***
|
|
${PLUGIN-MODBUS-TCP} modbus-tcp
|
|
${PLUGIN-MQTT} mqtt
|
|
${PLUGIN-EKUIPER} ekuiper
|
|
|
|
${NODE_DRIVER} 1
|
|
${NODE_APP} 2
|
|
|
|
${NODE_STATE_INIT} 1
|
|
${NODE_STATE_READY} 2
|
|
${NODE_STATE_RUNNING} 3
|
|
${NODE_STATE_STOP} 4
|
|
|
|
${NODE_LINK_STATE_DISCONNECTED} 0
|
|
${NODE_LINK_STATE_CONNECTED} 1
|
|
|
|
${NODE_CTL_START} 0
|
|
${NODE_CTL_STOP} 1
|
|
|
|
${TAG_ATTRIBUTE_READ} 1
|
|
${TAG_ATTRIBUTE_WRITE} 2
|
|
${TAG_ATTRIBUTE_SUBSCRIBE} 4
|
|
${TAG_ATTRIBUTE_RW} 3
|
|
|
|
${TAG_TYPE_INT8} 1
|
|
${TAG_TYPE_UINT8} 2
|
|
${TAG_TYPE_INT16} 3
|
|
${TAG_TYPE_UINT16} 4
|
|
${TAG_TYPE_INT32} 5
|
|
${TAG_TYPE_UINT32} 6
|
|
${TAG_TYPE_INT64} 7
|
|
${TAG_TYPE_UINT64} 8
|
|
${TAG_TYPE_FLOAT} 9
|
|
${TAG_TYPE_DOUBLE} 10
|
|
${TAG_TYPE_BIT} 11
|
|
${TAG_TYPE_BOOL} 12
|
|
${TAG_TYPE_STRING} 13
|
|
${TAG_TYPE_BYTE} 14
|
|
|
|
*** Keywords ***
|
|
Check Error Code
|
|
[Arguments] ${result} ${errcode}
|
|
Integer response body error ${errcode}
|
|
|
|
Check Response Status
|
|
[Arguments] ${result} ${status}
|
|
Integer response status ${status}
|
|
|
|
LOGIN
|
|
POST /api/v2/login {"name": "admin", "pass":"0000"}
|
|
|
|
Integer response status 200
|
|
|
|
${token} String $.token
|
|
${jwt} = Catenate Bearer ${token}[0]
|
|
Set Headers {"Authorization":"${jwt}"}
|
|
|
|
[Return] ${token}[0]
|
|
|
|
Add Node
|
|
[Arguments] ${name} ${plugin}
|
|
POST /api/v2/node {"name": "${name}", "plugin": "${plugin}"}
|
|
${res} Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Del Node
|
|
[Arguments] ${name}
|
|
DELETE /api/v2/node {"name": "${name}"}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Get Nodes
|
|
[Arguments] ${node_type}
|
|
GET /api/v2/node?type=${node_type}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Node Setting
|
|
[Arguments] ${name} ${config}
|
|
POST /api/v2/node/setting {"node": "${name}", "params": ${config}}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Get Node Setting
|
|
[Arguments] ${name}
|
|
GET /api/v2/node/setting?node=${name}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Get Node State
|
|
[Arguments] ${name}
|
|
GET /api/v2/node/state?node=${name}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Node Ctl
|
|
[Arguments] ${node} ${cmd}
|
|
POST /api/v2/node/ctl {"node": "${node}", "cmd": ${cmd}}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Add Group
|
|
[Arguments] ${node} ${group} ${interval}
|
|
POST /api/v2/group {"group": "${group}", "node": "${node}", "interval": ${interval}}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Del Group
|
|
[Arguments] ${node} ${group}
|
|
DELETE /api/v2/group {"node": "${node}", "group": "${group}"}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Get Group
|
|
[Arguments] ${node}
|
|
GET /api/v2/group?node=${node}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Subscribe Group
|
|
[Arguments] ${app} ${driver} ${group}
|
|
POST /api/v2/subscribe {"app": "${app}", "driver": "${driver}", "group": "${group}"}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Unsubscribe Group
|
|
[Arguments] ${app} ${driver} ${group}
|
|
DELETE /api/v2/subscribe {"app": "${app}", "driver": "${driver}", "group": "${group}"}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Get Subscribe Group
|
|
[Arguments] ${app}
|
|
GET /api/v2/subscribe?app=${app}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Add Tags
|
|
[Arguments] ${node} ${group} ${tags}
|
|
POST /api/v2/tags {"node": "${node}", "group": "${group}", "tags": [${tags}]}
|
|
${res} = Object response body
|
|
|
|
[RETURN] ${res}[0]
|
|
|
|
Get Tags
|
|
[Arguments] ${node} ${group}
|
|
GET /api/v2/tags?node=${node}&group=${group}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Update Tags
|
|
[Arguments] ${node} ${group} ${tags}
|
|
Put /api/v2/tags {"node": "${node}", "group": "${group}", "tags": [${tags}]}
|
|
${res} = Object response body
|
|
|
|
[RETURN] ${res}[0]
|
|
|
|
Del Tags
|
|
[Arguments] ${node} ${group} ${tags}
|
|
DELETE /api/v2/tags {"node": "${node}", "group": "${group}", "tags": [${tags}]}
|
|
${res} = Object response body
|
|
|
|
[RETURN] ${res}[0]
|
|
|
|
Read Tags
|
|
[Arguments] ${node} ${group}
|
|
POST /api/v2/read {"node": "${node}", "group": "${group}"}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|
|
|
|
Write Tags
|
|
[Arguments] ${node} ${group} ${tag} ${value}
|
|
POST /api/v2/write {"node": "${node}", "group": "${group}", "tag": "${tag}", "value": ${value}}
|
|
${res} = Object response body
|
|
[RETURN] ${res}[0]
|