当前位置:   article > 正文

“物联网透传工具”HTTP API文档(一)_http 透传工具

http 透传工具
  • 1. 登录

功能

调用方登录,获取TOKEN

方法

POST

请求地址

https://domain/api/v1/auth

请求参数

  • appId      

调用方ID

  • appSecret

调用方密码

举例

https://domain/api/v1/auth?appId=xxxxx&appSecret=xxxxx

返回结果示例

{

  "code": 200,   //非200表示失败

  "msg": "成功",

  "data": {

    "token": "66B35B049CEA45DEABFD808DDCF45A1B"

  }

}

备注

token有效期可定制

2. 获取终端ID

功能

可根据终端的硬件序列号获取在服务端保存的终端ID号

方法

POST

请求地址

https://domain/api/v1/terminal-id

请求参数

  • token

   token。

  • deviceId      

终端硬件序列号。(涉及特殊字符,不能在URL中)

举例

https://domain/api/v1/terminal-id?token=xxxxx

{

"deviceId"="xxxxx"

}

返回结果示例

{

  "code": 200,

  "msg": "成功",

  "data": {

    "id": 50  //终端ID号

  }

}

备注

3. 查询终端是否在线

  1. 功能

    查询终端是否在线,只有在线才能下达指令

    方法

    POST

    请求地址

    https://domain/api/v1/terminal-online

    请求参数

    token

       token。

    terminalId      

       终端ID。

    举例

    https://domain/api/v1/terminal-id?token=xxxxx&terminalId=xxxx

    返回结果示例

    {

      "code": 200,

      "msg": "成功",

      "data": {

        "id": 50  

        "online": "false"

    }

    }

    备注

4. 下达指令给外部设备(以太网/WIFI)

功能

终端与外部设备通过以太网或WIFI连接

方法

POST

请求地址

https://domain/api/v1/cmd-via-network

请求参数

  • token

   token。

  • terminalId      

终端ID。

  • 指令相关

ip:ip地址

port:端口

timeout:超时时间,豪秒

cmdContent:数组,每个元素代表一个字节

upload:是否上传结果

举例

https://domain/api/v1/cmd-via-network?token=xxxxx&terminalId=xxxx

{

  "ip": "192.168.2.41",

  "port": 8899,

  "timeout": 500,

  "cmdContent": [

    1,3,5    //十进制

  ],

  "upload": true

}

返回结果示例

{

  "code": 200,

  "msg": "成功",

  "data": {

    "serialNumber": "1657177271193"  

//每条指令下达后有一个序列号,用于后期获取结果

}

}

备注

5. 下达指令给外部设备(RS232/485)

功能

终端与外部设备通过rs232/485连接

方法

POST

请求地址

https://domain/api/v1/cmd-via-serial

请求参数

  • token

   token。

  • terminalId      

终端ID。

  • 指令相关

serialId:串口id,例如windows下COM1,这里只写1

parity:奇偶校验位数

dataBit:数据位数

stopBit:停止位数

baudRate:波特率

timeout:超时时间,豪秒

cmdContent:数组,每个元素代表一个字节

upload:是否上传结果

举例

https://domain/api/v1/cmd-via-serial?token=xxxxx&terminalId=xxxx

{

  "serial": 2,

  "parity": 1,

    "dataBit": 8,

    "stopBit": 1,

    "baudRate": 9600,

  "timeout": 500,

  "cmdContent": [

    1,3,5    //十进制

  ],

  "upload": true

}

返回结果示例

{

  "code": 200,

  "msg": "成功",

  "data": {

    "serialNumber": "1657177271193"  

//每条指令下达后有一个序列号,用于后期获取结果

}

}

备注

6. 获得指令结果

功能

在下达指令稍后片刻后获取指令的结果

方法

POST

请求地址

https://domain/api/v1/cmd-result

请求参数

  • token

   token。

  • terminalId      

终端ID。

  • serialNumber

指令的序列号。

举例

https://domain/api/v1/cmd-result?token=xxxxx&terminalId=xxxxx&serialNumber=xxxxxxxx

返回结果示例

{

  "code": 200,

  "msg": "成功",

  "data": {

"success": true,

"result": [1,2],

"terminalId": 1,

"serialNumber": "1657179754618"

}

}

备注

下达指令时需要指定upload=true。

有些硬件设备例如WIFI继电器并不反馈结果,就应该设置upload=false。

7. 下达循环指令

功能

要求终端进行循环执行指令

方法

POST

请求地址

https://domain/api/v1/cmd-loop-start

请求参数

  • token

   token。

  • terminalId      

终端ID。

  • 循环指令需要的参数

commType:1网络,2串口

timeout:超时,

cmdContent:指令数组。同上。

validNum:有效数的数量。0-5。

例如温度传感器只返回1个温度值,也有复合传感器返回2个值(1个温度1个湿度)。

checksum://0无需校验,1表示CRC16校验算法

ip:ip地址

port:端口

"serialId": 串口id 

"parity": 奇偶校验

"dataBit": 数据位

"stopBit": 停止位

"baudRate": 波特率

fbData[]:监测外设反馈结果。

fbData中每一个元素,有如下属性:

   startIndex:返回数据中,有效数据的起始索引,从1开始。

   dataLength:数据数量。

   signedVald:当前有效数据是否带符号。0无符号1带正负

   transform:0不需要,1加,2减,3乘,4除

   transValue:变换值

   signedTrans:变换值是否带符号。0无符号1带正负

   triggerType:0不触发,
                   单目:1 >,2 >=,3 ==,4 <=,5 <,6 !=
                   双目:10 >A && <B,11 >=A && <=B,

12 >A || <B,13 >=A || <=B。

trigger1Value:第1触发值

  trigger1Point:第1触发值小数位数

signedTrigger1:0无符号,1带正负。
trigger2Value:第2触发值

trigger2Point:第2触发值小数位数

signedTrigger2:0无符号,1带正负。

举例

https://domain/api/v1/cmd-loop-start?token=xxxxx&terminalId=xxxxx

{

  "commType": 1,

  "timeout": 1000,

  "cmdContent": [

    1,3,5

  ],

  "validNum": 1,

  "checksum": 1,

  "serialId": null,

  "parity": null,

  "dataBit": null,

  "stopBit": null,

  "baudRate": null,

  "ip": "192.168.2.41",

  "port": 8899,

  "fbData": [

      {

     "startIndex":2,

     "dataLength": 1,

     "signedValid": 0,

     "transform": 3,

     "transValue": 100,

     "signedTrans": 0,

     "triggerType": 13,

     "trigger1Value": 400,

     "trigger1Point": 0,

     "signedTrigger1":0,

     "trigger2Value": 100,

     "trigger3Point": 0,

     "signedTrigger2":0

  }

  ]

}

返回结果示例

{

  "code": 200,

  "msg": "成功",

  "data": {

"serialNumber": "1657179754618"

}

}

备注

启动循环指令后,两种情况可以停止循环:

一是外设返回的结果符合条件,自动停止循环,并把结果上报。

二是下达停止循环指令。

8. 停止循环指令

功能

在下达循环指令后可以取消

方法

POST

请求地址

https://domain/api/v1/cmd-loop-stop

请求参数

  • token

   token。

  • terminalId      

终端ID。

举例

https://domain/api/v1/cmd-loop-stop?token=xxxxx&terminalId=xxxxxx

返回结果示例

{

  "code": 200,

  "msg": "成功",

"data": null

}

备注

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/677940
推荐阅读
相关标签
  

闽ICP备14008679号