乐联网TCP长连接反向控制被控端开发指南

2013-05-01 13:56

 

总体说明

 

         本功能是通过保持一个TCP长连接实现在互联网上对无公网IP设备的及时反向控制,并返回控制的结果。

注意:

 如果想保持住链接,请保证在1分钟内有数据发送过去(发送用户网关数据或者上传数据都可以),否则服务器端会主动断开连接。

如果只想反向控制,仅需要定时发送网关数据,并及时响应服务器发来的各种请求即可。

如果需要上传测量设备数据,需要在首次连接时发送网关数据,然后定时上传测量设备数据。

发送和接收都以&^!为结束符来判断是否完整包。

 

手动修改网关的API地址

 

也可以通过API调用自动更新,参照网站的开发者指南

         http://tcp.lewei50.com:9965/?method=send&gatewayNo=你的网关号

         公网IP用:tcp.lewei50.com

 

发送用户网关数据到TCP服务器

 

服务器:tcp.lewei50.com 端口:9960

发送格式

JSON字符串

发送内容

{

    "method": "update",

    "gatewayNo": "你的网关号",

    "userkey": "你的userkey"

}&^!

 

说明

method固定为update

TCP服务器对于1分钟之内未发送数据的客户端主动断开,所以请保证定时间隔小于1分钟。

必须发送该数据才能让TCP服务器识别出用户身份,才能进行下一步的上传数据,每次重新连接都需要重新发送该数据。

 

 

接收TCP服务器推送的控制命令

 

         调用API说明: http://www.lewei50.com/dev/apiinfo/11

 

         乐联网收到控制命令后会像控制端推送数据:

推送格式

JSON字符串

推送内容

{

    "f": "writeserial",

    "p1": "xxx",

    "p2": "xxx"

}&^!

最多支持到p5,分别对应API说明里的参数

说明

根据fp1-p5即可知道用户想控制什么,然后做相应处理返回即可。

        

         需要您处理完之后按如下格式返回:

返回格式

JSON字符串

返回内容

{

    "method": "response",

    "result": {

        "successful": true,

        "message": "xxxx"

    }

}&^!

说明

method固定为response,result根据实际返回

 

通过TCP长连接上传数据

 

发送格式

JSON字符串

发送内容

{

    "method": "upload",

    "data":[

    {

        "Name":"T1",

        "Value":"1"

    },

    {

        "Name":"01H1",

        "Value":"96.2"

    }

]

}&^!

 

说明

method固定为upload

data格式就是之前通过API上传数据时的post数据格式:参照http://www.lewei50.com/dev/apitest/3

 

 

通过TCP长连接控制其他网关

 

 

发送格式

JSON字符串

发送内容

{

    "method": "control",

    "gatewayNo":"02",

    "f":"writeSerial",

    "p1":"hello"

}&^!

 

说明

method固定为control

必须传递gatewayNo(要控制的网关号)和f

具体参数参照:http://www.lewei50.com/dev/apitest/11

支持p1-p5 共5个参数,不需要可以不传

 


 

乐联网针对控制命令的默认方法:

 

接收TCP服务器推送的获取控制设备状态命令

 

         调用API说明: http://www.lewei50.com/dev/apiinfo/11

 

         乐联网收到控制命令后会像控制端推送数据:

推送格式

JSON字符串

推送内容

{

    "f": "getAllSensors"

}&^!

 

说明

f固定为getAllSensors

        

         需要您处理完之后按如下格式返回:

返回格式

JSON字符串

返回内容

{

    "method": "response",

    "result": {

        "successful": true,

        "message": "xxxx",

        "data":[

      {
         "id":"C1",
         "value":"1"
      },
      {
         "id":"C2",
         "value":"2"
      }] 

      

    }

}&^!

说明

method固定为response,result根据实际返回

 

接收TCP服务器推送的设置控制设备状态命令

 

         调用API说明: http://www.lewei50.com/dev/apiinfo/11

 

         乐联网收到控制命令后会像控制端推送数据:

推送格式

JSON字符串

推送内容

{

    "f": "updateSensor",

   "p1": "C1",

 

    "p2": "2"

}&^!

 

说明

f固定为updateSensor

p1为要控制的设备id,p2为要设置的值

        

         需要您处理完之后按如下格式返回:

返回格式

JSON字符串

返回内容

{

    "method": "response",

    "result": {

        "successful": true,

        "message": "xxxx"

    }

}&^!

说明

method固定为response,result根据实际返回