API 功能服务

    Neuron平台的MQTT主题

    订阅(Subscribe): Neuron/Request/%UUID%

    发布(Publish): Neuro/Response/%UUID%

    IIoT平台的MQTT主题

    订阅(Subscribe): Neuron/Response/%UUID%

    发布(Publish): Neuron/Request/%UUID%

    MQTT主题字符串列表

    Neuron/Broadcast

    Neuron/Heartbeat/%UUID%

    Neuron/Telemetry/%UUID%

    Neuron/Request/%UUID%

    Neuron/Response/%UUID%

    其中%UUID%是Neuron的36个字符的UUID字符串。

    Neuron网关订阅主题

    Neuron/Broadcast

    Neuron/Request/%UUID%

    Neuron网关发布主题

    Neuron/Broadcast

    Neuron/Heartbeat/%UUID%

    Neuron/Telemetry/%UUID%

    Neuron/Request/%UUID%

    Neuron/Response/%UUID%

    IIoT平台订阅主题

    Neuron/Broadcast

    Neuron/Heartbeat/%UUID%

    Neuron/Telemetry/%UUID%

    Neuron/Response/%UUID%

    IIoT平台发布主题

    Neuron/Request/%UUID%

    api-services-on-websockets

    HTTP API Header

    (GET)

    Resource Path: /api/v1/funcno10

    Content-Type: application/json

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    响应body的句式

    1. "func": 10,
    2. "wtrm": "DEMO-Neuron-1001_1532421778824_1",
    3. "errc": 0,
    4. "tout": 15,
    5. "defl": -1,
    6. "nalw": 3,
    7. "alwl": [
    8. {
    9. "atxt": "VIEW",
    10. "anum": 0
    11. },
    12. {
    13. "atxt": "MANAGER",
    14. "anum": 1
    15. },
    16. {
    17. "atxt": "ALL",
    18. "anum": -1
    19. }
    20. ]
    21. }
    响应 字段说明
    func 功能代码 10
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    tout 超时时间(分钟)
    defl 默认登录级别
    nalw 允许的级别数
    alwl 允许的等级
    atxt 允许的文本
    ALL(-1)
    VIEW(0)
    OPERATOR(1)
    FOREMAN(2)
    MAINTENANCE(3)
    SUPERVISOR(4)
    ENGINEER(5)
    DESIGNER(6)
    MANAGER(7)
    anum 允许序号
    -1
    0
    1
    2
    3
    4
    5
    6
    7
    功能 允许的等级
    退出 4,5,7
    重启/重新启动/关机 2,3,4,5,6,7
    登录/注销 0,1,2,3,4,5,6,7
    新密码 0,1,2,3,4,5,6,7
    用户管理 4,5,7
    浏览系统ID 4,5,7
    状态控制 2,3,4,5,7
    向对象写入值 4,5,7
    读取实例列表 4,5,7
    设置配置 4,5,7
    读取配置 4,5,7
    读取全局变量 4,5,7
    列出所有子程序 4,5,7
    读取一个子程序 4,5,7
    创建一个子程序 4,5,7
    删除一个子程序 4,5,7
    编译一个子程序 4,5,7
    在子程序中搜索字符串 4,5,7
    检查报警状态 1,2,3,4,5,7
    报警确认 2,3,4,5,7
    改变报警模式 2,3,4,5,7
    报警日志报告 4,5,7
    读取趋势数据 2,3,4,5,7
    读取对象屏幕 2,3,4,5,7
    读取许可证信息 4,5,7

    Function 11 注销

    HTTP API Header

    (GET)

    Resource Path: /api/v1/funcno11

    Content-Type: application/json

    Authorization: Bearer \

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 11,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "name": "admin"
    5. }

    响应body的句式

    1. {
    2. "func": 11,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 11
    wtrm 复制到响应信息的水印信息
    name 用户名
    响应 字段说明
    func 功能代码 11
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 12 新密码

    HTTP API Header

    (POST)

    Resource Path: /api/v1/funcno12

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 12,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "name": "admin",
    5. "pass": "0000",
    6. "npwd": "1234"
    7. }

    响应body的句式

    1. {
    2. "func": 12,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 12
    wtrm 复制到响应信息的水印信息
    name 用户名
    pass 用户密码
    npwd 新密码
    响应 字段说明
    func 功能代码 12
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 13 读用户列表

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno13

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 13,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240"
    4. }

    响应body的句式

    1. {
    2. "func": 13,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "errc": 0,
    5. "nusr": 3,
    6. "user": [
    7. "joey",
    8. "peter",
    9. "ruby"
    10. ]
    11. }
    请求 字段说明
    func 功能代码 13
    wtrm 复制到响应信息的水印信息
    响应 字段说明
    func 功能代码 13
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    nusr 用户数
    user 用户名称列表

    Function 14 读用户信息

    HTTP API header

    (PUT)

    Resource Path: /api/v1/funcno14

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 14,
    3. "wtrm": "DEMO-Neuron-1001_1532421778824_1",
    4. "name": "joey"
    5. }

    响应body的句式

    1. {
    2. "func": 14,
    3. "wtrm": "DEMO-Neuron-1001_1532421778824_1",
    4. "errc": 0,
    5. "usrn": "joey",
    6. "tout": 15,
    7. "defl": -1,
    8. "nalw": 3,
    9. "alwl": [
    10. {
    11. "atxt": "VIEW",
    12. "anum": 0
    13. },
    14. {
    15. "atxt": "MANAGER",
    16. "anum": 1
    17. },
    18. {
    19. "atxt": "ALL",
    20. "anum": -1
    21. }
    22. ]
    23. }
    请求 字段说明
    func 功能代码 14
    wtrm 复制到响应信息的水印信息
    name 用户名
    响应 字段说明
    func 功能代码 14
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    usrn 用户名
    tout 超时时间(分钟)
    defl 默认登录级别
    nalw 允许的级别数
    alwl 允许的等级
    atxt 允许的文本
    ALL(-1)
    VIEW(0)
    OPERATOR(1)
    FOREMAN(2)
    MAINTENANCE(3)
    SUPERVISOR(4)
    ENGINEER(5)
    DESIGNER(6)
    MANAGER(7)
    anum 允许序号
    -1
    0
    1
    2
    3
    4
    5
    6
    7

    Function 15 保存用户信息

    HTTP API Header

    (POST)

    Resource Path: /api/v1/funcno15

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 15,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "cusr": 1,
    5. "name": "joey",
    6. "pass": "0000",
    7. "tout": 15,
    8. "defl": 7,
    9. "nalw": 3,
    10. "alwl": [
    11. 0,
    12. 6,
    13. 7
    14. ]
    15. }

    响应body的句式

    1. {
    2. "func": 15,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 15
    wtrm 复制到响应信息的水印信息
    cusr 检查用户是否已经存在,如果存在,返回错误
    name 用户名 User name
    pass 新密码 New password
    tout 超时时间 (0-999(分钟),0表示永不超时
    defl 默认登录级别
    nalw 允许等级数
    alwl 允许等级的序号
    响应 字段说明
    func 功能代码 15
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 16 移除用户

    HTTP API Header

    (DELETE)

    Resource Path: /api/v1/funcno16

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 16,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "name": "user"
    5. }

    响应body的句式

    1. {
    2. "func": 16,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 16
    wtrm 复制到响应信息的水印信息
    name 用户名
    响应 字段说明
    func 功能代码 16
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 21 配置

    HTTP API Header

    (POST)

    Resource Path: /api/v1/funcno21

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func":21,
    3. "wtrm":"neuron",
    4. "chnl":[
    5. {
    6. "chdv":"mbstcp",
    7. "tcph":"192.168.50.177",
    8. "tcpp":502,
    9. "ttyc":"",
    10. "ttyb":0,
    11. "ttyd":0,
    12. "ttys":"",
    13. "ttyp":"N",
    14. "parm":[
    15. {
    16. "vars":"TCPSERVER",
    17. "pars":"0"
    18. },
    19. {
    20. "vars":"BYTEORDER",
    21. "pars":"1"
    22. },
    23. {
    24. "vars":"DLYCRESOCKAFTCLOSE",
    25. "pars":"50"
    26. },
    27. {
    28. "vars":"TORECEIVETCP",
    29. "pars":"1000"
    30. },
    31. {
    32. "vars":"NAPTIMEREAD",
    33. "pars":"10"
    34. },
    35. {
    36. "vars":"NAPTIMEWRITE",
    37. "pars":"10"
    38. }
    39. ]
    40. },
    41. {
    42. "chdv":"pahomq",
    43. "tcph":"broker.emqx.io",
    44. "tcpp":1883,
    45. "ttyc":"",
    46. "ttyb":0,
    47. "ttyd":0,
    48. "ttys":"",
    49. "ttyp":"N",
    50. "parm":[
    51. {
    52. "vars":"TOPICHEADER",
    53. "pars":"Neuron"
    54. },
    55. {
    56. "vars":"USERNAME",
    57. "pars":""
    58. },
    59. {
    60. "vars":"PASSWORD",
    61. "pars":""
    62. },
    63. {
    64. "vars":"CLIENTID",
    65. "pars":""
    66. },
    67. {
    68. "vars":"TOPIC",
    69. "pars":""
    70. },
    71. {
    72. "vars":"CERTIFICATE",
    73. "pars":""
    74. },
    75. {
    76. "vars":"KEYFILE",
    77. "pars":""
    78. }
    79. ]
    80. }
    81. ],
    82. "objd":[
    83. {
    84. "objn":"test",
    85. "obsz":1,
    86. "updt":10,
    87. "logt":1,
    88. "disp":1,
    89. "logs":1,
    90. "tstd":1,
    91. "oatt":[
    92. {
    93. "attn":"t",
    94. "attt":"word",
    95. "deci":3,
    96. "attr":"R",
    97. "rtim":10,
    98. "achg":1,
    99. "adis":1,
    100. "aadd":[
    101. {
    102. "obix":0,
    103. "pref":"",
    104. "suff":"",
    105. "addr":"1!400001"
    106. }
    107. ]
    108. },
    109. {
    110. "attn":"t2",
    111. "attt":"word",
    112. "deci":0,
    113. "attr":"R",
    114. "rtim":10,
    115. "achg":1,
    116. "adis":1,
    117. "aadd":[
    118. {
    119. "obix":0,
    120. "pref":"",
    121. "suff":"",
    122. "addr":"1!400005"
    123. }
    124. ]
    125. }
    126. ]
    127. },
    128. {
    129. "objn":"my",
    130. "obsz":1,
    131. "updt":10,
    132. "logt":1,
    133. "disp":1,
    134. "logs":1,
    135. "tstd":1,
    136. "oatt":[
    137. {
    138. "attn":"m",
    139. "attt":"word",
    140. "deci":0,
    141. "attr":"R",
    142. "rtim":10,
    143. "achg":1,
    144. "adis":1,
    145. "aadd":[
    146. {
    147. "obix":0,
    148. "pref":"",
    149. "suff":"",
    150. "addr":"1!400010"
    151. }
    152. ]
    153. }
    154. ]
    155. }
    156. ],
    157. "msgd":[
    158. {
    159. "subr":0,
    160. "sobj":"test",
    161. "satt":"t",
    162. "msgt":">",
    163. "cobj":"test",
    164. "catt":"t2",
    165. "acat":"alarm"
    166. }
    167. ]
    168. }

    响应body的句式

    1. {
    2. "func": 21,
    3. "wtrm": "neuron",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 21
    wtrm 复制到响应信息的水印信息
    chnl 通道信息
    chdv 通道驱动程序名称
    tcph PLC/硬件设备的主机名或IP地址
    tcpp 设备端口号
    ttyc Linux设备文件名(ttyS0, ttyS1)
    ttyb 波特率
    4800
    9600
    19200
    38400
    57600
    115200
    ttyd 数据位
    5
    6
    7
    8
    ttys 停止位(string)
    1
    1.5
    2
    ttyp 奇偶校验位(char)
    E - Even
    O - Odd
    N - None
    parm 参数列表详细信息
    vars 变量名称
    pars 参数值
    objd 一个对象的详情
    objn 对象名称
    obsz 相同对象的数量
    updt 数据传输到云平台的时间间隔
    logt 数据被记录到文件的时间
    disp 是否需要显示所有对象属性
    0 (不显示)
    1 (显示)
    logs 是否需要记录一次连续下降的情况
    0 (不需要)
    1 (需要)
    tstd 是否需要显示时间戳
    0 (不显示)
    1 (显示))
    oatt 对象属性列表详情
    attn 属性名称
    attt 属性值的类型:
    word
    uword
    dword
    udword
    float
    double
    bit
    deci 小数点位数
    attr 属性读/写标志
    R
    W
    R/W
    S
    SW
    rtim 读的时间间隔 (只针对读属性)
    achg 属性是否可以被改变
    0 (不允许)
    1 (允许)
    adis 属性是否需要被传到平台
    0 (不需要)
    1 (需要)
    aadd 属性地址详情
    obix 从0开始的索引号
    pref 对象名称前缀
    suff 对象名称后缀
    addr 标签地址 (设备地址)
    注意:对于内部寄存器tagaddr和tagattr都用”-“
    msgd 报警信息详情
    subr 子程序编号 (1-999)
    sobj 源对象名称
    satt 源属性名称
    msgt 信息比较类型
    <
    <=
    >
    >=
    ==
    !=
    &
    \^
    \
    cobj 被比较对象的名称
    catt 被比较属性名称
    acat 报警类型
    critical
    alarm
    warning
    event
    view
    响应 字段说明
    func 功能代码 21
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 22 读配置

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno22

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 22,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240"
    4. }

    响应body的句式

    1. {
    2. "func": 22,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "errc": 0
    5. // The structure is same as Function 21 request message
    6. // Not repeat here
    7. }

    Function 23 读驱动程序

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno23

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 23,
    3. "wtrm": "DEMO-Neuron-1001_1532421778824_1",
    4. "type": 1
    5. }

    响应body的句式

    1. {
    2. "func": 23,
    3. "wtrm": "DEMO-Neuron-1001_1532421778824_1",
    4. "errc": 0,
    5. "nrow": 3,
    6. "rows": [
    7. {
    8. "name": "mbsrtu",
    9. "desc": "Modbus RTU",
    10. "type": "tty",
    11. "attr": [
    12. "R",
    13. "W",
    14. "RW"
    15. ]
    16. },
    17. {
    18. "name": "mbstcp",
    19. "desc": "Modbus TCP",
    20. "type": "tcp",
    21. "attr": [
    22. "R",
    23. "W",
    24. "RW"
    25. ]
    26. },
    27. {
    28. "name": "mbsrot",
    29. "desc": "Modbus RTU over TCP",
    30. "type": "tcp",
    31. "attr": [
    32. "R",
    33. "W",
    34. "RW"
    35. ]
    36. },
    37. {
    38. "name": "opcua",
    39. "desc": "OPC UA",
    40. "type": "tcp",
    41. "attr": [
    42. "R",
    43. "W",
    44. "RW"
    45. "S",
    46. "SW"
    47. ]
    48. }
    49. ]
    50. }
    请求 字段说明
    func 功能代码 23
    wtrm 复制到响应信息的水印信息
    type 1: 驱动程序通道
    2: 服务器通道
    响应 字段说明
    func 功能代码 23
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    nrow 行数
    name 驱动程序的缩写
    desc 驱动程序的完整描述
    type 驱动程序的类型
    tty表示串行驱动
    tcp表示网络驱动
    attr 属性读/写指示器
    R
    W
    RW
    S
    SW

    Function 24 读驱动程序参数

    (PUT)

    Resource Path: /api/v1/funcno24

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 24,
    3. "wtrm": "DEMO-Neuron-1001_1532421778824_1",
    4. "drvn": "i61850"
    5. }

    响应body的句式

    1. {
    2. "func": 24,
    3. "wtrm": "DEMO-Neuron-1001_1532421778824_1",
    4. "errc": 0,
    5. "parm": [
    6. {
    7. "vars": "DLYCRESOCKAFTCLOSE",
    8. "pars": "300"
    9. },
    10. {
    11. "vars": "TORECEIVETCP",
    12. "pars": "300"
    13. },
    14. {
    15. "vars": "NAPTIMEREAD",
    16. "pars": "40"
    17. },
    18. {
    19. "vars": "NAPTIMEWRITE",
    20. "pars": "20"
    21. },
    22. {
    23. "vars": "USERNAME",
    24. "pars": ""
    25. },
    26. {
    27. "vars": "PASSWORD",
    28. "pars": ""
    29. },
    30. {
    31. "vars": "CERTIFICATE",
    32. },
    33. {
    34. "vars": "KEYFILE",
    35. "pars": ""
    36. },
    37. {
    38. "vars": "ADDRSUFFIX",
    39. "pars": ""
    40. }
    41. ]
    42. }
    请求 字段说明
    func 功能代码 24
    wtrm 从请求信息中复制的水印
    drvn 驱动器名称
    响应 字段说明
    func 功能代码 24
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    drvn 驱动器名称
    parm 参数数组
    vars 变量名称
    pars 参数值

    Function 25 检查PLC地址

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno25

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 25,
    3. "wtrm": "d0fdb943-cff1-44bc-887d-0a3b3ba856b0",
    4. "chdv": "mbtcp",
    5. "attt": "word",
    6. "deci": 0,
    7. "attr": "R",
    8. "addr": "1!400002"
    9. }

    响应body的句式

    1. {
    2. "func": 25,
    3. "wtrm": "d0fdb943-cff1-44bc-887d-0a3b3ba856b0",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 25
    wtrm 从请求信息中复制的水印
    chdv 通道驱动器名称 Channel driver name
    attt 属性值的数据类型,允许的数据类型:
    word
    uword
    dword
    udword
    float
    double
    bit
    deci 小数位数
    attr 属性读/写指示器,允许的标志:
    R
    W
    R/W
    addr 标签地址(设备地址)
    注:对于内部寄存器,tagaddr和tagattr都用”-“
    响应 字段说明
    func 功能代码 25
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 26 读设备列表

    HTTP API Header

    (GET)

    Resource Path: /api/v1/funcno25

    Content-Type: application/json

    Authorization: Bearer \

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 26,
    3. "wtrm": "d0fdb943-cff1-44bc-887d-0a3b3ba856b0"
    4. }

    响应body的句式

    请求 字段说明
    func 功能代码 26
    wtrm 从请求信息中复制的水印
    响应 字段说明
    func 功能代码 26
    wtrm 从请求信息中复制的水印
    rows 设备列表
    name 设备名称
    fdrw 文件描述符的读写权限
    0: 获得许可,
    -1: 没有许可
    errc 编译器错误代码

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno30

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 30,
    3. "wtrm": "DEMO-Neuron-1001_1532421778824_1"
    4. }

    响应body的句式

    1. {
    2. "func": 30,
    3. "wtrm": "DEMO-Neuron-1001_1532421778824_1",
    4. "errc": 0,
    5. "nrow": 7,
    6. "rows": [
    7. {
    8. "glov": "time",
    9. "leng": 1,
    10. "comt": "unix timestamp"
    11. },
    12. {
    13. "glov": "year",
    14. "leng": 1,
    15. "comt": "current year"
    16. },
    17. {
    18. "glov": "month",
    19. "leng": 1,
    20. "comt": "current month"
    21. },
    22. {
    23. "glov": "day",
    24. "leng": 1,
    25. "comt": "day of the month"
    26. },
    27. {
    28. "glov": "hour",
    29. "leng": 1,
    30. "comt": "hour of the day"
    31. },
    32. {
    33. "glov": "min",
    34. "leng": 1,
    35. "comt": "minute of the hour"
    36. },
    37. {
    38. "glov": "dayofweek",
    39. "leng": 1,
    40. "comt": "day of the week"
    41. }
    42. ]
    43. }
    响应 字段说明
    func 功能代码 30
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    nrow 行数
    rows 行数组
    glov 全局变量名称
    leng 变量大小
    comt 注释

    Function 31 保存全局变量

    HTTP API Header

    (POST)

    Resource Path: /api/v1/funcno31

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 31,
    3. "wtrm": "DEMO-Neuron-1001_1532421778824_1",
    4. "nrow": 7,
    5. "rows": [
    6. {
    7. "glov": "time",
    8. "leng": 1,
    9. "comt": "unix timestamp"
    10. },
    11. {
    12. "glov": "year",
    13. "leng": 1,
    14. "comt": "current year"
    15. },
    16. {
    17. "glov": "month",
    18. "leng": 1,
    19. "comt": "current month"
    20. },
    21. {
    22. "glov": "day",
    23. "leng": 1,
    24. "comt": "day of the month"
    25. },
    26. {
    27. "glov": "hour",
    28. "leng": 1,
    29. "comt": "hour of the day"
    30. },
    31. {
    32. "glov": "min",
    33. "leng": 1,
    34. "comt": "minute of the hour"
    35. },
    36. {
    37. "glov": "dayofweek",
    38. "leng": 1,
    39. "comt": "day of the week"
    40. }
    41. ]
    42. }

    响应body的句式

    1. {
    2. "func": 31,
    3. "wtrm": "DEMO-Neuron-1001_1532421778824_1",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 31
    wtrm 复制到响应信息的水印信息
    nrow 行数
    glov 全局变量名称
    leng 变量大小
    comt 注释
    响应 字段说明
    func 功能代码 31
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 32 读子程序列表

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno32

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 32,
    3. "wtrm": "DEMO-Neuron-1001_1532421778823_1"
    4. }

    响应body的句式

    1. {
    2. "func": 32,
    3. "wtrm": "DEMO-Neuron-1001_1532421778823_1",
    4. "errc": 0,
    5. "nsub": 3,
    6. "msub": 999,
    7. "rows": [
    8. {
    9. "subr": 200,
    10. "name": "SR200 TEMPERATURE ALARM HANDLER"
    11. },
    12. {
    13. "subr": 201,
    14. "name": "SR201 TEMPERATURE ALARM HANDLER"
    15. },
    16. {
    17. "subr": 202,
    18. "name": "SR202 TEMPERATURE ALARM HANDLER"
    19. }
    20. ]
    21. }
    请求 字段说明
    func 功能代码 32
    wtrm 复制到响应信息的水印信息
    响应 字段说明
    func 功能代码 32
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    nsub 子程序的数量
    msub 子程序数最大值
    subr 子程序编号
    name 子程序名称

    Function 33 读子程序

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno33

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 33,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "subr": 200
    5. }

    响应body的句式

    1. {
    2. "func": 33,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "errc": 0,
    5. "subr": 200,
    6. "name": "SR200 TEMPERATURE ALARM TIRGGER HANDLER",
    7. "nrow": 5,
    8. "rows": [
    9. {
    10. "stmt": "COMMENT",
    11. "expr": "TEMPERATURE HANDLER"
    12. },
    13. {
    14. "stmt": "",
    15. "expr": ""
    16. },
    17. {
    18. "stmt": "IF",
    19. "expr": "Tank[0].buzzer == 0"
    20. },
    21. {
    22. "stmt": "THEN",
    23. "expr": "Tank[0].buzzer = 1;"
    24. },
    25. {
    26. "stmt": "",
    27. "expr": ""
    28. }
    29. ]
    30. }
    请求 字段说明
    func 功能代码 33
    wtrm 复制到响应信息的水印信息
    subr 子程序编号
    响应 字段说明
    func 功能代码 33
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    subr 子程序编号
    MAIN是-10
    MANUAL是-20
    AUTO是-22
    name 子程序名称
    nrow 行数
    stmt 语句
    expr 表达式

    Function 34 保存子程序

    HTTP API Header

    (POST)

    Resource Path: /api/v1/funcno34

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 34,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "csub": 0,
    5. "subr": 200,
    6. "name": "SR200 TEMPERATURE ALARM TIRGGER HANDLER",
    7. "nrow": 5,
    8. "rows": [
    9. {
    10. "stmt": "COMMENT",
    11. "expr": "TEMPERATURE HANDLER"
    12. },
    13. {
    14. "stmt": "",
    15. "expr": ""
    16. },
    17. {
    18. "stmt": "IF",
    19. "expr": "Tank[0].buzzer == 0"
    20. },
    21. {
    22. "stmt": "THEN",
    23. "expr": "Tank[0].buzzer = 1;"
    24. },
    25. {
    26. "stmt": "",
    27. "expr": ""
    28. }
    29. ]
    30. }

    响应body的句式

    1. {
    2. "func": 34,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 34
    wtrm 复制到响应信息的水印信息
    csub 保存前检查子程序是否存在 (0:不检查,1:检查)
    subr 子程序编号
    MAIN是-10
    MANUAL是-20
    AUTO是-22
    或者是任何数字(1-999)的子程序编号
    name 子程序名称
    nrow 行数
    stmt 语句
    expr 表达式
    响应 字段说明
    func 功能代码 34
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 35 移除子程序

    HTTP API Header

    (DELETE)

    Resource Path: /api/v1/funcno35

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 35,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "subr": 200
    5. }

    响应body的句式

    1. {
    2. "func": 35,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 35
    wtrm 复制到响应信息的水印信息
    subr 子程序编号
    响应 字段说明
    func 功能代码 35
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 36 测试子程序

    HTTP API Header

    (POST)

    Resource Path: /api/v1/funcno36

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 36,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "nrow": 5,
    5. "rows": [
    6. {
    7. "stmt": "COMMENT",
    8. "expr": "TEMPERATURE HANDLER"
    9. },
    10. {
    11. "stmt": "",
    12. "expr": ""
    13. },
    14. {
    15. "stmt": "IF",
    16. "expr": "Tank[0].buzzer == 0"
    17. },
    18. {
    19. "stmt": "THEN",
    20. "expr": "Tank[0].buzzer = 1;"
    21. },
    22. {
    23. "stmt": "",
    24. "expr": ""
    25. }
    26. ]
    27. }

    响应body的句式

    1. {
    2. "func": 36,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 36
    wtrm 复制到响应信息的水印信息
    nrow 行数
    stmt 语句
    expr 表达式
    响应 字段说明
    func 功能代码 36
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 37 在子程序中搜索

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno37

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 37,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "srhm": "main",
    5. "upca": 0,
    6. "wwrd": 0,
    7. "srhs": "temperature"
    8. }

    响应body的句式

    1. {
    2. "func": 37,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "errc": 0,
    5. "rows": [
    6. {
    7. "modu": "main",
    8. "line": 1,
    9. "chnu": 8,
    10. "desc": "COMMENT MAIN - TEMPERATURE CONTROL"
    11. },
    12. {
    13. "modu": "main",
    14. "line": 7,
    15. "chnu": 9,
    16. "desc": "IF Tank[i].temperature > Temp[0].high && Tank[i].switch == 1"
    17. },
    18. {
    19. "modu": "main",
    20. "line": 9,
    21. "chnu": 9,
    22. "desc": "ELSE IF Tank[i].temperature < Temp[0].low && Tank[i].switch == 0"
    23. }
    24. ]
    25. }
    请求 字段说明
    func 功能代码 37
    wtrm 复制到响应信息的水印信息
    srhm 以全局变量模式搜索子程序
    main
    man
    auto
    upca 是否需要匹配大小写 (1:匹配, 0:不匹配)
    wwrd 是否需要匹配整个单词(1:匹配整体, 0:匹配部分)
    srhs 搜索字符串
    响应 字段说明
    func 功能代码 37
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    rows 行号索引
    modu 全局变量子程序模块
    main
    man
    auto
    subr 子程序编号
    line 行号
    chnu 字符开始位置
    desc 描述

    Function 38 执行脚本

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno38

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 38,
    3. "wtrm": "d0fdb943-cff1-44bc-887d-0a3b3ba856b0",
    4. "subr": 200
    5. }

    响应body的句式

    1. {
    2. "func": 38,
    3. "wtrm": "d0fdb943-cff1-44bc-887d-0a3b3ba856b0",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 38
    wtrm 从请求信息中复制的水印
    subr 子程序编号 (1-999)
    响应 字段说明
    func 功能代码 38
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 50 读寄存器

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno50

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 50,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "srcn": "test"
    5. }

    响应body的句式

    1. {
    2. "func": 50,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "erroc": 0,
    5. "tele": [
    6. {
    7. "objn": "test",
    8. "tstp": 1643180286,
    9. "data1": 123,
    10. "data2": 789,
    11. "data3": 3,
    12. "data4": 4,
    13. "data5": 5,
    14. "data6": 6,
    15. "data7": 7,
    16. "data8": 8,
    17. "data9": 9,
    18. "data10": 10
    19. }
    20. ]
    21. }
    请求 字段说呢
    func 功能代码 50
    wtrm 复制到响应信息的水印信息
    srcn 带有前缀和后缀的对象名称
    响应 字段说明
    func 功能代码 50
    wtrm 从请求信息中复制的水印
    errc 错误编码
    tele 遥测阵列
    objn 对象名称
    tstp 时间戳

    Function 51 写寄存器

    HTTP API Header

    (POST)

    Resource Path: /api/v1/funcno51

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 51,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "srcn": "Temp",
    5. "attn": "high",
    6. "valn": 860
    7. }
    1. {
    2. "func": 51,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 51
    wtrm 复制到响应信息的水印信息
    srcn 带有前缀和后缀的对象名称
    attn 属性名称
    valn
    响应 字段说明
    func 功能代码 51
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 60 对象列表

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno60

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 60,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1"
    4. }

    响应body的句式

    1. {
    2. "func": 60,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "errc": 0,
    5. "tele": [
    6. {
    7. "objn": "Tank_1",
    8. "logs": 0,
    9. "temperature": 0,
    10. "energy": 0,
    11. "switch": 1,
    12. "buzzer": 1
    13. },
    14. {
    15. "objn": "Tank_2",
    16. "logs": 0,
    17. "temperature": 0,
    18. "energy": 0,
    19. "switch": 1,
    20. "buzzer": 1
    21. },
    22. {
    23. "objn": "Tank_3",
    24. "logs": 0,
    25. "temperature": 0,
    26. "energy": 0,
    27. "switch": 1,
    28. "buzzer": 1
    29. },
    30. {
    31. "objn": "Temp",
    32. "logs": 1,
    33. "temp1": 0,
    34. "temp2": 0,
    35. "temp3": 0,
    36. "low": 1
    37. },
    38. {
    39. "objn": "Energy",
    40. "logs": 1,
    41. "energy1": 0,
    42. "energy2": 0,
    43. "energy3": 0
    44. }
    45. ]
    46. }
    请求 字段说明
    func 功能代码 60
    wtrm 复制到响应信息的水印信息
    响应 字段说明
    func 功能代码 60
    wtrm 从请求信息中复制的水印
    errc 错误编码
    tele 遥测对象屏幕描述
    objn 对象名称
    logs 是否记录 (Y/N)

    Function 61 系统状态

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno61

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    响应body的句式

    1. "func": 61,
    2. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    3. "errc": 0,
    4. "tstp": 1581515618,
    5. "comm": "UP",
    6. "mach": "MANU",
    7. "mode": "ACTIVE",
    8. "mqcn": "MQCONNECT",
    9. "dalm": "NON-EXIST",
    10. "galm": "UNACKNOWLEDGE",
    11. "ngal": 4,
    12. "grow": [
    13. {
    14. "acat": "alarm",
    15. "astt": "OFF",
    16. "amod": "UNACKALARM",
    17. "atim": 1581513580,
    18. "alid": 1,
    19. "comt": "temp1@Temp (812) < low@Temp (800)"
    20. },
    21. {
    22. "acat": "alarm",
    23. "astt": "ON",
    24. "amod": "UNACKALARM",
    25. "atim": 1581515415,
    26. "alid": 3,
    27. "comt": "temp2@Temp (791) < low@Temp (800)"
    28. },
    29. {
    30. "acat": "critical",
    31. "astt": "ON",
    32. "amod": "UNACKALARM",
    33. "atim": 1581515415,
    34. "alid": 4,
    35. "comt": "temp3@Temp (864) > high@Temp (850)"
    36. },
    37. {
    38. "acat": "alarm",
    39. "astt": "OFF",
    40. "amod": "UNACKALARM",
    41. "atim": 1581513592,
    42. "alid": 5,
    43. "comt": "temp3@Temp (864) < low@Temp (800)"
    44. }
    45. ]
    46. }

    act_en:主动启用的警报
    act_unack:主动撤消警报
    act_all:激活所有警报
    all_alm:所有警报
    all_en:所有启用的警报器
    all_dis:所有禁用的警报 |

    响应 字段说明
    func 功能代码 61
    wtrm 从请求信息中复制的水印
    errc 错误编码
    tstp 时间戳
    comm PLC或者硬件设备通信状态
    UP
    DOWN
    mach 机器模式
    AUTO
    MANU
    SERV
    mode 请参考部分状态模式:
    Inactive Mode(不活动模式)
    Standby Mode / Semi-Standby Mode(待机/半待机模式)
    Active Mode / Semi-Active Mode(活动/半活动模式)
    mqcn MQTT代理连接状态
    MQCONNECT(已连接)
    MQDISCONNECT(未连接)
    dalm 设备报警,指定哪个设备有通信问题
    galm 用户可以定义自己的一般报警和触发器
    ngal 一般报警的数量
    grow 一般报警的行数
    acat 报警类别
    critical
    alarm
    warning
    event
    view
    astt 报警状态
    ON
    OFF
    amod 报警模式
    UNACKALARM(撤消报警)
    DISABLE(禁用报警)
    atim 报警时间戳
    alid 当用户使用80接口功能确认报警时,报警ID必须被复制下来
    comt 报警条件描述
    ndal 设备报警的数量
    drow 设备报警的行数
    chnl 设备的通道数
    addr 设备地址

    HTTP API Header

    (GET)

    Resource Path: /api/v1/funcno62

    Content-Type: application/json

    Authorization: Bearer \

    Function 70 网关控制

    HTTP API header

    (POST)

    Resource Path: /api/v1/funcno70

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 70,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "acts": "restartnew"
    5. }

    响应body的句式

    1. {
    2. "func": 70,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 70
    wtrm 复制到响应信息的水印信息
    acts 请求的行为:
    restart:重新启动网关y
    restartnew:用新的配置重新启动网关
    shutdown:关闭网关
    响应 字段说明
    func 功能代码 70
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 71 状态控制

    HTTP API Header

    (POST)

    Resource Path: /api/v1/funcno71

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 71,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "stat": "standby"
    5. }

    响应body的句式

    1. {
    2. "func": 71,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 71
    wtrm 复制到响应信息的水印信息
    stat 请求的行为:
    standby:待机模式(遥测将停止)
    active:主动模式
    响应 字段说明
    func 功能代码 71
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 73 实例信息

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno73

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 73,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240"
    4. }

    响应body的句式

    1. {
    2. "func": 73,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "errc": 0,
    5. "agts": [
    6. {
    7. "uuid": "16538d28-4592-11e9-a787-00e067109f12",
    8. "time": "2019/11/10 13:42:17",
    9. "expd": "2070/01/01 08:00:00",
    10. "rest": "00:00:00:00",
    11. "data": "2.113112",
    12. "natt": "34",
    13. "nalr": "10",
    14. "tatt": "50",
    15. "talr": "102",
    16. "tusg": "10.3426",
    17. "matt": "100",
    18. "malr": "500",
    19. "musg": "1000",
    20. "self": "Y"
    21. },
    22. {
    23. "uuid": "87244d28-4592-11e9-a787-00e097109f12",
    24. "time": "2019/11/10 13:42:17",
    25. "expd": "2070/01/01 08:00:00",
    26. "rest": "00:00:00:00",
    27. "data": "0.1276532",
    28. "natt": "19",
    29. "nalr": "13",
    30. "tatt": "50",
    31. "talr": "102",
    32. "tusg": "10.3426",
    33. "matt": "100",
    34. "malr": "500",
    35. "musg": "1000",
    36. "self": "N"
    37. },
    38. {
    39. "uuid": "11133d28-4592-11e9-a787-00e077109f12",
    40. "time": "2019/11/10 13:42:17",
    41. "expd": "2070/01/01 08:00:00",
    42. "rest": "00:00:00:00",
    43. "data": "1.2367209",
    44. "natt": "21",
    45. "nalr": "8",
    46. "tatt": "50",
    47. "talr": "102",
    48. "tusg": "10.3426",
    49. "matt": "100",
    50. "malr": "500",
    51. "musg": "1000",
    52. "self": "N"
    53. }
    54. ],
    55. "nagt": 3
    56. }
    请求 字段说明
    func 功能代码 73
    wtrm 复制到响应信息的水印信息
    响应 字段说明
    func 功能代码 73
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    agts Neuron实例列表
    uuid UUID
    time 最后信息更新的时间
    expd 系统过期时间
    rest 系统不活动的时间间隔
    data 数据使用情况
    natt 属性的数量
    nalr 报警点的数量
    tatt 总的属性数
    talr 总的报警数
    tusg 总的数据使用量
    matt 最大的属性数
    malr 最大的报警数
    musg 最大的数据使用量
    self 自身标志 (Y/N)
    nagt 实例的数量 Number of instances

    Function 74 关于信息

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno74

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 74,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240"
    4. }

    响应body的句式

    1. {
    2. "func": 74,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "errc": 0,
    5. "sysn": "NEURON SYSTEM v1.1.1",
    6. "cpyr": "Copyright (C) 2020, EMQ Technologies Co., Ltd. All rights</br>reserved.",
    7. "modl": "ENT-x86_64-1-0101",
    8. "srno": "SN010101200227",
    9. "bver": " 1.1.1",
    10. "pver": 1,
    11. "host": "Instance 0",
    12. "expd": "2020/12/30 11:59:00",
    13. "rest": "306:23:03:07",
    14. "tatt": 2,
    15. "matt": 10000,
    16. "talr": 2,
    17. "malr": 1600,
    18. "tusg": 0.00010799,
    19. "musg": 100000000,
    20. "cont": "Joey Cheung (joey@emqx.io)",
    21. "uuid": "16538d28-4592-11e9-a787-00e067109f12"
    22. }
    请求 字段说明
    func 功能代码 74
    wtrm 复制到响应信息的水印信息
    响应 字段说明
    func 功能代码 74
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    sysn 系统名称
    cpyr 版权信息
    modl 系统型号
    modl 系统序列号
    srno 序列号
    bver 软件构建版本
    pver 协议号
    host 主机名
    expd 过期时间
    rest 剩余可用时间
    tatt 使用中的属性总数
    matt 允许的最大属性数
    talr 使用中的报警总数
    malr 允许的最大报警数
    tusg 总的数据使用量
    musg 允许使用的最大数据使用量
    cont 联系信息
    uuid UUID

    Function 79 显示报警

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno79

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 79,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "actn": "act_en"
    5. }

    响应body的句式

    1. {
    2. "func": 79,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 79
    wtrm 复制到响应信息的水印信息
    actn 可以是以下任意一种操作:
    act_en:主动启用警报
    act_unack:主动解除警报
    act_all:激活所有警报
    all_alm:所有警报
    all_en:所有启用的警报
    all_dis:
    响应 字段说明
    func 功能代码 79
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 80 报警确认

    HTTP API Header

    (POST)

    Resource Path: /api/v1/funcno80

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 80,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "alid": 0,
    5. "actn": "acknowledge"
    6. }

    响应body的句式

    1. {
    2. "func": 80,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 80
    wtrm 复制到响应信息的水印信息
    alid 这个ID是由网关在心跳信息中给出的。复制正在确认的报警的ID。
    actn 可以是以下任意一种操作:
    acknowledge(确认)
    enable(启用)
    disable(禁用)
    响应 字段说明
    func 功能代码 80
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 81 读历史报警

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno81

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 81,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "srch": "FromFirst",
    5. "sett": "",
    6. "tokn": "",
    7. "ofst": 0,
    8. "frti": 1607335939,
    9. "toti": 1607335950,
    10. "cate": "alarm",
    11. "patn": "Temp"
    12. }

    响应body的句式

    1. {
    2. "func": 81,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "errc": 0,
    5. "frti": 1577930400,
    6. "toti": 1582552859,
    7. "nalm": 10,
    8. "ordr": "ascending",
    9. "rows": [
    10. {
    11. "anum": 1,
    12. "tstp": 1581482963,
    13. "uack": "",
    14. "cate": "alarm",
    15. "stat": "on",
    16. "comt": "temp2@Temp (791) < low@Temp (800)"
    17. },
    18. {
    19. "anum": 2,
    20. "tstp": 1581484493,
    21. "uack": "",
    22. "cate": "alarm",
    23. "stat": "off",
    24. "comt": "temp2@Temp (0) < low@Temp (0)"
    25. },
    26. {
    27. "anum": 3,
    28. "tstp": 1581485070,
    29. "uack": "",
    30. "cate": "alarm",
    31. "stat": "ack",
    32. "comt": "temp2@Temp (791) < low@Temp (790)"
    33. },
    34. {
    35. "anum": 4,
    36. "tstp": 1581513521,
    37. "uack": "",
    38. "cate": "alarm",
    39. "stat": "on",
    40. "comt": "temp1@Temp (0) < low@Temp (790)"
    41. },
    42. {
    43. "anum": 5,
    44. "tstp": 1581513521,
    45. "uack": "",
    46. "cate": "alarm",
    47. "stat": "on",
    48. "comt": "temp2@Temp (0) < low@Temp (790)"
    49. },
    50. {
    51. "anum": 6,
    52. "tstp": 1581513521,
    53. "uack": "",
    54. "cate": "alarm",
    55. "stat": "on",
    56. "comt": "temp3@Temp (0) < low@Temp (790)"
    57. },
    58. {
    59. "anum": 7,
    60. "tstp": 1581513580,
    61. "uack": "",
    62. "cate": "alarm",
    63. "stat": "off",
    64. "comt": "temp1@Temp (0) < low@Temp (0)"
    65. },
    66. {
    67. "anum": 8,
    68. "tstp": 1581513584,
    69. "uack": "",
    70. "cate": "alarm",
    71. "stat": "off",
    72. "comt": "temp2@Temp (0) < low@Temp (0)"
    73. },
    74. {
    75. "anum": 9,
    76. "tstp": 1581513592,
    77. "uack": "",
    78. "cate": "alarm",
    79. "stat": "off",
    80. "comt": "temp3@Temp (0) < low@Temp (0)"
    81. },
    82. {
    83. "anum": 10,
    84. "tstp": 1581515415,
    85. "uack": "",
    86. "cate": "alarm",
    87. "stat": "on",
    88. "comt": "temp2@Temp (791) < low@Temp (800)"
    89. }
    90. ],
    91. "tokn": "5e44029700000003"
    92. }
    请求 字段说明
    func 功能代码 81
    wtrm 复制到响应信息的水印信息
    srch 搜索方法 Search Method
    FromFirst — 表示向前搜索
    FromLast — 表示向后搜索
    UseID — 用于连续搜索
    Blank — 表示使用FromYear
    sett Today
    Yesterday
    ThisWeek
    LastWeek
    ThisMonth
    LastMonth
    如果使用下面的FromYear或者是ToYear,则为空,且只能与UseID的搜索方法一起使用,或在上面的搜索方法中的第一个为空
    tokn 前一次请求的ID字符串,用于下次搜索。(仅与UseID的搜索方法一起使用)
    ofst 下次搜索的偏移量。正向或者负向,仅与UseID的搜索方法一起使用,仍使用下面的搜索模式
    frti 开始日期(时间戳)
    toti 结束日期(时间戳)
    cate 报警类别
    patn 搜索模式-在报警文本的任何地方检查匹配字符串。
    响应 字段说明
    func 功能代码 81
    wtrm 从请求信息复制的水印A string that copied from the request message
    errc 编译器错误代码
    frti 开始日期 (时间戳)
    toti 结束日期 (时间戳)
    nalm Total number of alarms found
    ordr Order
    ascending
    descending
    anum Alarm index number
    tstp Alarm happening time
    uack User who acknowledge this alarm
    cate Alarm Category
    stat Status
    on — alarm on time
    off — alarm off time
    ack — alarm ack time
    comt Alarm message
    tokn ID string for next search

    Function 82 读历史趋势

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno82

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 82,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "scrn": "test",
    5. "attn": "data1",
    6. "fend": 0,
    7. "tokn": -1,
    8. "frti": 1632978564,
    9. "toti": 1632982164
    10. }

    响应body的句式

    1. {
    2. "func": 82,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "errc": 0,
    5. "frti": 1632978564,
    6. "toti": 1632982164,
    7. "npts": 500,
    8. "itvl": 1,
    9. "tokn": 500,
    10. "ntps": 500,
    11. "tele": [
    12. {
    13. "objn": "test",
    14. "tstp": 1632980285,
    15. "t": 1
    16. },
    17. {
    18. "objn": "test",
    19. "tstp": 1632980286,
    20. "t": 1
    21. },
    22. {
    23. "objn": "test",
    24. "tstp": 1632980287,
    25. "t": 1
    26. }
    27. ]
    28. }
    请求 字段说明
    func 功能代码 82
    wtrm 复制到响应信息的水印信息
    srcn 带前缀和后缀的对象名称
    attn 属性名称(空着表示所有属性)
    fend 是否包含最后一个点
    1 — 包含
    0 — 不包含
    tokn 用于下次搜索的文件索引号
    frti 开始时间(时间戳)
    toti 结束时间(时间戳)
    响应 字段说明
    func 功能代码 82
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码
    frti 开始时间(时间戳)
    toti 结束时间(时间戳)
    itvl 趋势点之间的时间间隔
    npts 找到趋势点的数量
    tokn 根据Token去实现下一次的搜索
    tele 遥测数组
    objn 对象名称
    tstp 时间戳

    Function 83 读日志

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno83

    Content-Type: application/json

    Authorization: Bearer \

    HTTP API 或者 Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 83,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "logl": "all",
    5. "srtt": 1604311512,
    6. "stpt": 1604311517,
    7. "srtl": 0,
    8. "proc": "all"
    9. }

    响应body的句式

    1. {
    2. "func": 83,
    3. "wtrm": "DEMO-Neuron-1001_1532419775357_240",
    4. "nrow": 500,
    5. "rows": [
    6. {
    7. "tstp": 1532419775,
    8. "logl": "warning",
    9. "proc": "CORE",
    10. "data": "extractlicense: loading certificate into memory"
    11. },
    12. {
    13. "tstp": 1532419775,
    14. "logl": "debug",
    15. "proc": "DRVR",
    16. "data": "debuglog: Cannot connect"
    17. },
    18. {
    19. "tstp": 1532419775,
    20. "logl": "err",
    21. "proc": "SERV",
    22. "data": "serverdisconnect: send disconnection request failed return code -3"
    23. },
    24. {
    25. "tstp": 1532419775,
    26. "logl": "warning",
    27. "proc": "CORE",
    28. "data": "update_process: process /home/neuron/ /bin/neuron_o_mbstcp was killed by uncaught signal 9 "
    29. }
    30. ],
    31. "last": 400,
    32. "errc": 0
    33. }
    请求 字段说明
    func 功能代码 83
    wtrm 复制到响应信息的水印信息
    logl 日志等级,
    允许等级 :
    all,
    debug,
    info,
    warning,
    err
    srtt 开始的时间戳,默认为无。 Sart timestamp(s), default none
    stpt 结束的时间戳,默认为无。如果”stpt”设置了值,则必须有一个非空的”srtt”。
    srtl 日志文件的起始行号,也可以从响应信息的 “last “中获取,默认为0。
    proc 进程名称
    响应 字段说明
    func 功能代码 83
    wtrm 从请求信息中复制的水印
    nrow 行数, 值 <= 500
    rows 日志内容的行数,json数组
    tstp 日志时间戳(s)
    logl 日志等级
    proc 进程名称
    data 日志字符串数组
    last 最后的行号,对请求信息的”strl”很有用
    errc 编译器错误代码

    Function 84 日志切换

    Websockets or MQTT Communication

    请求body的句式

    1. {
    2. "func": 84,
    3. "wtrm": "DEMO-Neuron-1002_1532419775357_240",
    4. "logn": "SCRIPTLOG",
    5. "vars": 100
    6. }

    响应body的句式

    1. {
    2. "func": 84,
    3. "wtrm": "DEMO-Neuron-1002_1532419775357_240",
    4. "errc": 0
    5. }
    请求 字段说明
    func 功能代码 84
    wtrm 复制到响应信息的水印信息
    logn 日志名称:
    SCRIPTLOG
    DRIVERLOG
    SERVICELOG
    vars 可报告的最大日志行数的变量
    响应 字段说明
    func 功能代码 84
    wtrm 从请求信息中复制的水印
    errc 编译器错误代码

    Function 93 读属性

    HTTP API Header

    (PUT)

    Resource Path: /api/v1/funcno93

    Content-Type: application/json

    Authorization: Bearer \

    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    HTTP API 或者Websockets 或者 MQTT 通信

    请求body的句式

    1. {
    2. "func": 93,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "srcn": "object1",
    5. "attn": "data1"
    6. }

    响应body的句式

    1. {
    2. "func": 93,
    3. "wtrm": "DEMO-Neuron-1001_1532421778827_1",
    4. "erroc": 0,
    5. "tele": [
    6. {
    7. "objn": "object1",
    8. "tstp": 1643177359,
    9. "data1": 0
    10. }
    11. ]
    12. }
    请求 字段说明
    func 功能代码 93
    wtrm 复制到响应信息的水印信息
    srcn 带有前缀和后缀的对象名称
    attn 属性名称
    响应 字段说明
    func 功能代码 93
    wtrm 从请求信息中复制的水印
    erroc 错误编码
    tele 遥测阵列
    objn 对象名称
    tstp 时间戳

    仅限文件更新HTTP API

    (POST)

    Resource Path: /api/v1/{NAME}

    Content-Type: multipart/form-data

    Authorization: Bearer \

    名称 描述
    许可证 neuron 许可证文件
    标志 neuron 前端标志文件
    HTTP状态代码 说明
    200 操作成功
    400 无效操作

    The above gateway responses are assumed the request function are successfully handled. In case of failure to process the request, the gateway will return the following error message to the response topic.

    1. {
    2. "func": 14,
    3. "wtrm": "DEMO-Neuron-1001_1532419203896_239",
    4. "errc": 1001,
    5. }
    Response Compiler Error
    func 功能代码
    wtrm 从请求信息复制的字符串
    errc 编译器错误代码
    emsg 错误代码 Error text
    0 , “No Error”
    2 , “Function no has not found!”
    3 , “Missing JSON item”
    4 , “Invalid JSON structure”
    10 , “Object locked”
    11 , “Object not found”
    12 , “Attribute locked”
    13 , “Attribute not found”
    14 , “Object number invalid”
    15 , “Modification not allowed”
    16 , “Attribute type invalid”
    20 , “Operation not allowed”
    21 , “Wrong password”
    22 , “Wrong user name”
    23 , “Not super user account”
    24 , “System function error”
    25 , “User not found”
    26 , “Time out”
    27 , “Default level”
    28 , “Wrong number of levels”
    29 , “User already exist”
    30 , “Too many users”
    40 , “Alarm not found”
    41 , “Report empty”
    42 , “Data format error”
    43 , “Wrong revision”
    44 , “Need rebuild file”
    50 , “Too many global variables”
    51 , “Global variable name length exceed”
    52 , “Duplicated Global variables found”
    53 , “Subroutine number not found”
    54 , “Subroutine already exist”
    55 , “No disk space for subroutine”
    56 , “Search program number error”
    57 , “No search string”
    70 , “Wrong status change request”
    71 , “Wrong gateway control request”
    72 , “Wrong key”
    73 , “Function not allowed in SEMI mode”
    80 , “Attribute read only”
    81 , “Object name error”
    82 , “Data range error”
    502 , “Too many channels”
    503 , “Channel driver length size exceed maximum”
    504 , “Channel driver invalid”
    505 , “Channel driver type invalid”
    506 , “Too many dummy variables”
    507 , “Hostname length exceed maximum”
    508 , “Port number is invalid”
    509 , “Device file length too long”
    510 , “Baud rate number is invalid”
    511 , “Data bit invalid”
    512 , “Stop bit invalid”
    513 , “Parity bit invalid”
    514 , “Too many objects”
    515 , “Object ID length exceed maximum”
    516 , “Object name length exceed maximum”
    517 , “Duplicated object ID found”
    518 , “Duplicated object name found”
    519 , “Object size incorrect”
    520 , “Update time incorrect”
    521 , “Logging time incorrect”
    522 , “Object status invalid”
    523 , “Too many attributes”
    524 , “Attribute status invalid”
    525 , “Attribute type incorrect”
    526 , “Attribute ID length exceed maximum”
    527 , “Attribute name length exceed maximum”
    528 , “Duplicated attribute ID found”
    529 , “Duplicated attribute name found”
    530 , “Decimal value invalid”
    531 , “Attribute R/W length exceed maximum”
    532 , “Attribute object number is not match”
    533 , “Attribute object index is not match”
    534 , “Prefix length exceed maximum”
    535 , “Suffix length exceed maximum”
    536 , “Prefix and Suffix string empty”
    537 , “Tag address length exceed maximum”
    538 , “Tag address invalid”
    539 , “Tag address delimiter invalid”
    540 , “Dummy sign invalid”
    541 , “Tag address overlap”
    542 , “Tag RW direction invalid”
    543 , “Tag attribute is not match”
    544 , “Tag bit type is not match”
    545 , “Tag bit type error”
    546 , “Tag ix exceed limit”
    547 , “Tag array member invalid”
    548 , “Alarm object name length exceed”
    549 , “Alarm attribute name length exceed”
    550 , “Alarm subroutine number not found”
    551 , “Alarm category not found”
    552 , “Alarm attribute not match”
    553 , “Alarm ID not found”
    554 , “Alarm type not found”
    555 , “Alarm object name not found”
    556 , “Tag name length exceed maximum”
    557 , “Tag name invalid”
    558 , “Duplicated tag name found”
    559 , “Attribute tag length exceed”
    560 , “Attribute tag not found”
    561 , “Attribute tag index invalid”
    562 , “Tag array invalid”
    563 , “Tag type invalid”
    564 , “Tag R/W direction invalid”
    1001, “Statement expected for this row”
    1002, “Statement does not exist”
    1003, “INIT follows a normal statement (except REM, INIT)”
    1004, “THEN expected after test statement”
    1005, “Unexpected THEN, not a test above”
    1006, “Unexpected ELIF/ELSE, not a THEN above”
    1007, “Unknown statement”
    1008, “GOTO undefined position (POSxxx)”
    1009, “Error in POSxxx statement”
    1010, “FATAL! Cannot solve all jump instruction”
    2001, “Too many local variables in one file”
    2002, “Syntax error in INIT (only assign local vars)”
    2003, “INIT: assign (=) expected”
    2004, “INIT: assign value expected”
    2005, “INIT: expression delimiter (;) expected”
    2006, “Syntax error in token”
    2007, “Too long local variable name”
    2008, “Syntax error in local variable”
    2009, “Syntax error in constant”
    2010, “Too long DB variable name”
    2011, “Syntax error in [..] construction”
    2012, “Syntax error in DB variable”
    2013, “Syntax error in object variable”
    2014, “Illegal label number”
    2015, “Illegal subroutine number”
    2016, “Too long global variable name”
    2017, “Syntax error in global variable”
    2018, “Syntax error in [index] construction”
    2019, “Too long [index] name”
    2020, “Syntax error in GOTO POSxxx instruction”
    2021, “Syntax error in CALL SRxxx instruction”
    2023, “Declaring a control variable”
    2024, “Declaring too many local variables”
    2025, “Local variable not declared/not a control variable”
    2029, “Too long object name”
    2030, “Too long field name”
    2101, “Not an executable instruction/variable”
    2102, “; expected after instruction”
    2103, “No statement should follow RETURN/GOTO”
    2104, “= expected after variable for assign”
    2105, “; not allowed in test or inside parenthesis”
    2106, “Instruction not allowed in test or inside parenthesis”
    2107, “Operand expected”
    2108, “Instruction should be first token in expression”
    2109, “Operand/expression not expected”
    2110, “Assign not allowed after test”
    2111, “Assign variable is read-only”
    2112, “) unexpected”
    2113, “Object variable does not exist”
    2114, “Index of Object variable not inside array”
    2115, “Tag variable does not exist”
    2116, “Index of Tag variable not inside array”
    2117, “Unary used twice on same operand”
    2118, “Unrecognized operator”
    2119, “Application part for station does not exist”
    2120, “Global variable does not exist”
    2121, “Index of global variable not inside array”
    2122, “, expected after variable declaration”
    2123, “Index must be used on variable array”
    2124, “Index cannot be used on single variable”
    2125, “Operator is not allowed in double calculation”
    2132, “Local variable as index is not used before”
    2201, “Expression not completed”
    2202, “Expression ended before resolving last parenthesis”
    2300, “Global variable name too long”
    2301, “Global variable name have capital letter”
    2302, “Global variable length too large < 1000”
    2303, “Global variable comment too long”