常用Alink协议总结

1. 子设备的动态注册

  • 数据上行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/sub/register
  • 响应Topic: /sys/{productKey}/{deviceName}/thing/sub/register_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": [
    {
      "deviceName": "deviceName1234",
      "productKey": "1234556554"
    }
  ],
  "method": "thing.sub.register"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": [
    {
      "iotId": "12344",
      "productKey": "1234556554",
      "deviceName": "deviceName1234",
      "deviceSecret": "xxxxxx"
    }
  ]
}
  • 参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且每个消息ID在当前设备中具有唯一性。
versionString协议版本号,目前协议版本号为1.0。
paramsList设备动态注册的参数
deviceNameString子设备的名称。
productKeyString子设备的产品Key。
iotIdString设备的唯一标识ID。
methodString请求方法,取值thing.sub.register。
codeInteger结果信息。
  • 错误码说明
错误码消息描述
460request parameter error请求参数错误。
6402topo relation cannot add by self设备不能将自己添加为自己的子设备。
401request auth error签名校验失败。

2. 直连设备的动态注册

  • 直连设备动态注册,通过HTTP发送请求。
  • URL模板:https://iot-auth.cn-shanghai.aliyuncs.com/auth/register/device
  • HTTP方法: POST
  • 请求数据格式
POST /auth/register/device  HTTP/1.1
Host: iot-auth.cn-shanghai.aliyuncs.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 123
productKey=1234556554&deviceName=deviceName1234&random=567345&sign=adfv123hdfdh&signMethod=HmacMD5
  • 响应数据格式:
{
  "code": 200,
  "data": {
    "productKey": "1234556554",
    "deviceName": "deviceName1234",
    "deviceSecret": "adsfweafdsf"
  },
  "message": "success"
}
  • 参数说明
参数类型说明
MethodStringPOST
HostStringEndpoint地址:iot-auth.cn-shanghai.aliyuncs.com。
Content-TypeString设备发送给物联网平台的上行数据的编码格式。
productKeyString产品唯一标识。
productKeyString子设备的产品Key。
deviceNameString设备名称。
randomString随机数。
signString加签方法:将所有提交给服务器的参数(sign、signMethod除外)按照字母顺序排序,然后将参数和值依次拼接(无拼接符号)。通过signMethod指定的加签算法,使用产品的ProductSecret,对加签内容进行加签。示例:hmac_sha1(productSecret, deviceNamedeviceName1234productKey1234556554random123)
signMethodString签名方法, 目前支持hmacmd5、hmacsha1、hmacsha256。
codeInteger结果信息。
deviceSecretString设备密钥。

3. 添加设备拓扑关系

  • 数据上行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/topo/add
  • 响应Topic:sys/{productKey}/{deviceName}/thing/topo/add_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": [
    {
      "deviceName": "deviceName1234",
      "productKey": "1234556554",
      "sign": "xxxxxx",
      "signmethod": "hmacSha1",
      "timestamp": "1524448722000",
      "clientId": "xxxxxx"
    }
  ],
  "method": "thing.topo.add"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
paramsList请求入参。
deviceNameString子设备的名称。
productKeyString子设备的产品Key。
signString加签算法:将所有提交给服务器的参数(sign,signMethod除外)按照字母顺序排序,然后将参数和值依次拼接(无拼接符号)。对加签内容,需通过signMethod指定的加签算法,使用设备的DeviceSecret值,进行签名计算。示例:sign= hmac_md5(deviceSecret, clientId123deviceNametestproductKey123timestamp1524448722000)
signmethodString签名方法,支持hmacSha1、hmacSha256、hmacMd5、Sha256。
timestampString时间戳。
clientIdString设备本地标记,非必填。可以设置为具体的productKey&deviceName。
methodString请求方法,取值:thing.topo.add。
  • 响应参数说明
错误码消息描述
idString消息ID,String类型的数字。
codeInteger返回结果,200代表成功。
dataObject请求成功时的返回结果。
  • 错误码说明
错误码消息描述
460request parameter error请求参数错误。
6402topo relation cannot add by self设备不能将自己添加为自己的子设备。
401request auth error签名校验失败。

4. 删除设备的拓扑关系

  • 数据上行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/topo/delete
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/topo/delete_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": [
    {
      "deviceName": "deviceName1234",
      "productKey": "1234556554"
    }
  ],
  "method": "thing.topo.delete"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
paramsList请求入参。
deviceNameString子设备的名称。
productKeyString子设备的产品Key。
methodString请求方法。取值thing.topo.delete。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger返回结果,200代表成功。
dataObject请求成功时的返回结果。
  • 错误码说明
错误码消息描述
460request parameter error请求参数错误。
6100device not found设备不存在。

5. 获取设备的拓扑关系

  • 数据上行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/topo/get
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/topo/get_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": {},
  "method": "thing.topo.get"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": [
    {
      "deviceName": "deviceName1234",
      "productKey": "1234556554"
    }
  ]
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
paramsList请求入参。
methodString请求方法,取值thing.topo.get。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger返回结果,200代表成功。
dataObject请求成功时的返回结果。
deviceNameString子设备的名称。
productKeyString子设备的产品Key。
  • 错误码说明
错误码消息描述
460request parameter error请求参数错误。

6. 发现设备列表上报

  • 数据上行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/list/found
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/list/found_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": [
    {
      "deviceName": "deviceName1234",
      "productKey": "1234556554"
    }
  ],
  "method": "thing.list.found"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data":{}
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
paramsList请求入参。
methodString请求方法,取值thing.list.found。
deviceNameString子设备的名称。
productKeyString子设备的产品Key。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger返回结果,200代表成功。
dataObject请求成功时的返回结果。
  • 错误码说明
错误码消息描述
460request parameter error请求参数错误。
6250product not found上报的子设备产品不存在。
6280devicename not meet specs上报的子设备的名称不符规范,设备名称支持英文字母、数字、连接号(-)、at符号(@)、_点号(.)和冒号(:),长度限制4~32。

7. 通知网关添加设备拓扑关系

  • 数据下行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/topo/add/notify
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/topo/add/notify_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": [
    {
      "deviceName": "deviceName1234",
      "productKey": "1234556554"
    }
  ],
  "method": "thing.topo.add.notify"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
paramsList请求入参。
methodString请求方法,取值thing.list.found。
deviceNameString子设备的名称。
productKeyString子设备的产品Key。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger返回结果,200代表成功。
dataObject请求成功时的返回结果。

8. 通知网关拓扑关系变化

  • 将拓扑关系变化通知网关。
  • 网关订阅Topic: /sys/{productKey}/{deviceName}/thing/topo/change
  • 请求数据格式:
{
    "id":"123",
    "version":"1.0",
    "params":{
        "status":0,  //0-创建  1-删除 2-恢复禁用  8-禁用
        "subList":[{
            "productKey":"a1hRrzD****",
            "deviceName":"abcd"
        }]
    }, 
  "method":"thing.topo.change"  
}
  • 响应数据格式:
{
    "id":"123",
    "code":200,
    "message":"success",
    "data":{}
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
paramsObject请求参数,包含参数status(拓扑关系状态)和sublist(子设备列表)。
methodString请求方法,取值thing.topo.change。
statusInteger0:创建、1:删除、2:解除禁用(启用)、8:禁用
deviceNameString子设备的名称。
productKeyString子设备的产品Key。

9. 子设备主动上线

  • 数据上行
  • 请求Topic:/ext/session/ p r o d u c t K e y / {productKey}/ productKey/{deviceName}/combine/login
  • 响应Topic:/ext/session/ p r o d u c t K e y / {productKey}/ productKey/{deviceName}/combine/login_reply
  • 请求数据格式:
{
  "id": "123",
  "params": {
    "productKey": "al123455655",
    "deviceName": "device1234",
    "clientId": "al123455655&device1234",
    "timestamp": "1581417203000",
    "signMethod": "hmacmd5",
    "sign": "9B9C732412A4F84B981E1AB97CAB****",
    "cleanSession": "true"
  }
}
  • 响应数据格式:
{
  "id":"123",
  "code":200,
  "message":"success"
  "data":{
      "deviceName": "device1234",
      "productKey": "al123455655"
    }
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
paramsObject请求入参,包含的具体参数见下表params。
  • param参数说明
参数类型说明
deviceNameString子设备的设备名称。
productKeyString子设备所属的产品的ProductKey。
signString签名方法与直连设备签名方法相同。
signMethodString签名方法,支持hmacSha1、hmacSha256、hmacMd5和Sha256
timestampString毫秒级时间戳。
signString签名方法与直连设备签名方法相同。
clientIdString设备端标识。可以为productKey&deviceName。
cleanSessionString如果取值是true,则清理所有子设备离线时的消息,即所有未接收的QoS1消息将被清除。如果取值是false,则不清理子设备离线时的消息。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger返回结果,200代表成功。
messageString结果信息。
dataObject请求成功时的返回结果。
  • data参数说明
参数类型说明
deviceNameString子设备的设备名称。
productKeyString子设备所属的产品的ProductKey。
  • 错误码说明
错误码消息描述
460request parameter error请求参数错误。
429rate limit, too many subDeviceOnline msg in one minute单个设备认证过于频繁被限流。
428too many subdevices under gateway网关下同时在线子设备过多。
6401topo relation not exist网关和子设备没有拓扑关系。
6100device not found子设备不存在。
521device deleted子设备已被删除。
522device forbidden子设备已被禁用。

10. 子设备主动下线

  • 数据上行
  • 请求Topic:/ext/session/{productKey}/{deviceName}/combine/logout
  • 响应Topic:/ext/session/{productKey}/{deviceName}/combine/logout_reply
  • 请求数据格式:
{
  "id": 123,
  "params": {
    "productKey": "al123455655",
    "deviceName": "device1234"
  }
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "message": "success",
  "data": {
      "deviceName": "device1234",
      "productKey": "al123455655"
    }
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
paramsObject请求入参,包含的具体参数见下表params。
  • param参数说明
参数类型说明
deviceNameString子设备的设备名称。
productKeyString子设备所属的产品的ProductKey。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger返回结果,200代表成功。
messageString结果信息。
dataObject请求成功时的返回结果。
  • data参数说明
参数类型说明
deviceNameString子设备的设备名称。
productKeyString子设备所属的产品的ProductKey。
  • 错误码说明
错误码消息描述
460request parameter error请求参数错误。
520device no session子设备会话不存在。

11. 设备上报属性

  • 数据上行(alink json ,不是透传)
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/event/property/post
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/event/property/post_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": {
    "Power": {
      "value": "on",
      "time": 1524448722000
    },
    "WF": {
      "value": 23.6,
      "time": 1524448722000
    }
  },
  "method": "thing.event.property.post"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
methodString请求方法。取值:thing.event.property.post。
paramsObject请求参数。如以上示例中,设备上报了的两个属性Power和WF。具体属性信息,包含属性上报时间(time)和上报的属性值(value)。
timeLong属性上报时间。该参数为可选字段。根据您的业务场景决定消息中是否带时间戳。如果消息频繁,需根据时间戳判断消息顺序,建议消息中带有时间戳。
valueobject上报的属性值。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger结果状态码。 具体参考设备端通用code
dataObject请求成功时的返回结果。
  • 错误码说明
错误码消息描述
460request parameter error请求参数错误。
6106map size must less than 200一次最多只能上报200条属性。
6313tsl service not available物模型校验服务不可用。

12. 设置设备属性

  • 数据下行(alink json ,不是透传)
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/service/property/set
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/service/property/set_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": {
    "temperature": "30.5"
  },
  "method": "thing.service.property.set"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 请求参数说明
参数类型说明
idString消息ID号,由物联网平台生成。
versionString协议版本号,目前协议版本号为1.0。
methodString请求方法,取值thing.service.property.set。
paramsObject属性设置参数。如以上示例中,设置属性:{ “temperature”: “30.5” }。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger结果状态码。 具体参考设备端通用code
dataObject请求成功时的返回结果。

13. 设备事件上报

  • 数据上行(alink json ,不是透传)
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/event/{tsl.event.identifier}/post
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/event/{tsl.event.identifier}/post_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": {
    "value": {
      "Power": "on",
      "WF": "2"
    },
    "time": 1524448722000
  },
  "method": "thing.event.{tsl.event.identifier}.post"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
methodString请求参数。取值:thing.event.{tsl.event.identifier}.post。
paramsList上报事件的参数。
valueObject具体的事件信息。如:{ “Power”: “on”, “WF”: “2”}
timeLong事件生成的时间戳,类型为UTC毫秒级时间。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger结果状态码。 具体参考设备端通用code
dataObject请求成功时的返回结果。

14. 设备服务异步调用

  • 数据下行(alink json ,不是透传)
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/service/{tsl.service.identifier}
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/service/{tsl.service.identifier}_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": {
    "Power": "on",
    "WF": "2"
  },
  "method": "thing.service.{tsl.service.identifier}"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 请求参数说明
参数类型说明
idString消息ID号,由物联网平台生成。
versionString协议版本号,目前协议版本号为1.0。
paramsMap服务调用参数。如:{ “Power”: “on”, “WF”: “2”}
methodString请求方法:thing.service.{tsl.service.identifier}。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger结果状态码。 具体参考设备端通用code
dataObject请求成功时的返回结果。

15. 网关批量上报数据

  • 数据上行(alink json ,不是透传)
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/event/property/pack/post
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/event/property/pack/post_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": {
    "properties": {
      "Power": {
        "value": "on",
        "time": 1524448722000
      },
      "WF": {
        "value": { },
        "time": 1524448722000
      }
    },
    "events": {
      "alarmEvent1": {
        "value": {
          "param1": "on",
          "param2": "2"
        },
        "time": 1524448722000
      },
      "alertEvent2": {
        "value": {
          "param1": "on",
          "param2": "2"
        },
        "time": 1524448722000
      }
    },
    "subDevices": [
      {
        "identity": {
          "productKey": "",
          "deviceName": ""
        },
        "properties": {
          "Power": {
            "value": "on",
            "time": 1524448722000
          },
          "WF": {
            "value": { },
            "time": 1524448722000
          }
        },
        "events": {
          "alarmEvent1": {
            "value": {
              "param1": "on",
              "param2": "2"
            },
            "time": 1524448722000
          },
          "alertEvent2": {
            "value": {
              "param1": "on",
              "param2": "2"
            },
            "time": 1524448722000
          }
        }
      }
    ]
  },
  "method": "thing.event.property.pack.post"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
methodString请求参数。取值:thing.event.property.pack.post。
paramsMap请求参数。
propertiesObject属性,包含属性标识符、属性值value 和属性生成的时间time。
eventsObject事件,包含事件标识符、事件输出参数value和事件生成的时间time。
subDevicesString子设备信息。
productKeyString子设备产品key。
deviceNameString子设备名称。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger返回结果,200代表成功。
dataObject请求成功时的返回结果。

16. 物模型历史数据上报

  • 数据上行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/event/property/history/post
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/event/property/history/post_reply
  • 请求数据格式:
{
  "id": 123, 
  "version": "1.0", 
  "method": "thing.event.property.history.post", 
  "params": [
    {
      "identity": {
        "productKey": "", 
        "deviceName": ""
      }, 
      "properties": [
        {
          "Power": {
            "value": "on", 
            "time": 123456
          }, 
          "WF": {
            "value": "3", 
            "time": 123456
          }
        }, 
        {
          "Power": {
            "value": "on", 
            "time": 123456
          }, 
          "WF": {
            "value": "3", 
            "time": 123456
          }
        }
      ], 
      "events": [
        {
          "alarmEvent": {
            "value": {
              "Power": "on", 
              "WF": "2"
            }, 
            "time": 123456
          }, 
          "alertEvent": {
            "value": {
              "Power": "off", 
              "WF": "3"
            }, 
            "time": 123456
          }
        }
      ]
    }, 
    {
      "identity": {
        "productKey": "", 
        "deviceName": ""
      }, 
      "properties": [
        {
          "Power": {
            "value": "on", 
            "time": 123456
          }, 
          "WF": {
            "value": "3", 
            "time": 123456
          }
        }
      ], 
      "events": [
        {
          "alarmEvent": {
            "value": {
              "Power": "on", 
              "WF": "2"
            }, 
            "time": 123456
          }, 
          "alertEvent": {
            "value": {
              "Power": "off", 
              "WF": "3"
            }, 
            "time": 123456
          }
        }
      ]
    }
  ]
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
methodString请求方法,取值thing.event.property.history.post。
paramsMap请求参数。
identityString数据所属设备的身份证书信息,包含参数productKey和deviceName。
propertiesObject属性,包含属性标识符、属性值value 和属性生成的时间time。
eventsString事件,包含事件标识符、事件输出参数value和事件生成的时间time。

17. 获取期望属性值

  • 数据上行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/property/desired/get
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/property/desired/get_reply
  • 请求数据格式:
{
    "id" : "123",
    "version":"1.0",
    "params" : [
        "power",
        "temperature"
    ],
    "method":"thing.property.desired.get"
}
  • 响应数据格式:
{
    "id":"123",
    "code":200,
    "data":{
        "power": {
            "value": "on",
            "version": 2
        }
    }
}

  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
paramsList要获取期望值的属性标识符(Identifier)列表。如:[“power”,“temperature”]
methodString请求方法,取值thing.property.desired.get。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger结果状态码。 具体参考设备端通用code
dataObject返回的期望值信息。如:{ “power”:{“value”: “on”, “version”: 2}}
  • data参数说明
参数类型说明
keyStringkey即属性的标识符。如示例中为power。
valueO​bject期望属性值。
versionInteger当前期望属性值的版本。

18. 清空期望属性值

  • 数据上行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/property/desired/delete
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/property/desired/delete_reply
  • 请求数据格式:
{
    "id": "123",
    "version": "1.0",
    "params": {
        "power": {
            "version": 1
        },
        "temperature": { }
    },
    "method":"thing.property.desired.delete"  
}
  • 响应数据格式:
{
    "id": "123",
    "code": 200,
    "data": { }
}

  • 请求参数说明
参数类型说明
idString消息ID号。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
paramsList要清除期望值的属性信息列表。传入数据包含属性的标识符和期望值版本version。如:{ “power”: { “version”: 1},“temperature”: { }}
methodString请求方法,取值thing.property.desired.delete。
  • params说明
参数类型说明
keyStringkey即属性的标识符。如示例中,列出了power和temperature两个属性标识符。
versionInteger要删除期望属性值的版本号。
  • 响应参数说明
参数类型说明
idString消息ID,String类型的数字。
codeInteger结果状态码。 具体参考设备端通用code
dataString返回数据。
  • data参数说明
参数类型说明
keyStringkey即属性的标识符。如示例中为power。
valueO​bject期望属性值。
versionInteger当前期望属性值的版本。

19. 网关禁用子设备

  • 数据下行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/disable
  • 响应Topic: /sys/{productKey}/{deviceName}/thing/disable_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": {},
  "method": "thing.disable"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 参数说明
参数类型说明
idString消息ID号,由物联网平台生成
versionString协议版本号,目前协议版本号为1.0。
paramsObject请求参数, 为空即可。
methodString请求方法,取值thing.disable。
codeInteger结果状态码。 具体参考设备端通用code

20. 网关解除禁用子设备

  • 数据下行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/enable
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/enable_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": {},
  "method": "thing.enable"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 参数说明
参数类型说明
idString消息ID号,由物联网平台生成
versionString协议版本号,目前协议版本号为1.0。
paramsObject请求参数, 为空即可。
methodString请求方法,取值thing.enable。
codeInteger结果状态码。 具体参考设备端通用code

21. 网关删除子设备

  • 数据下行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/delete
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/delete_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": {},
  "method": "thing.delete"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 参数说明
参数类型说明
idString消息ID号,由物联网平台生成
versionString协议版本号,目前协议版本号为1.0。
paramsObject请求参数, 为空即可。
methodString请求方法,取值thing.delete。
codeInteger结果状态码。 具体参考设备端通用code

22. 设备标签信息上报

  • 数据上行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/deviceinfo/update
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/deviceinfo/update_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": [
    {
      "attrKey": "Temperature",
      "attrValue": "36.8"
    }
  ],
  "method": "thing.deviceinfo.update"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 参数说明
参数类型说明
idString消息ID号。上行消息ID需您自定义。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
paramsObject请求参数,包含标签的键attrKey和值attrValue。params元素个数不超过200个。
attrKeyString标签Key。
attrValueString标签的值。
methodString请求方法,取值thing.deviceinfo.update。
codeInteger结果信息, 200表示成功。
  • 错误码
错误码消息描述
460request parameter error请求参数错误。
6100device not found设备不存在。

23. 删除标签信息

  • 数据上行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/deviceinfo/delete
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/deviceinfo/delete_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": [
    {
      "attrKey": "Temperature"
    }
  ],
  "method": "thing.deviceinfo.delete"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 参数说明
参数类型说明
idString消息ID号。上行消息ID需您自定义。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
paramsString请求参数,包含要删除的标签键attrKey参数。
attrKeyString要删除标签的Key。
methodString请求方法,取值thing.deviceinfo.delete。
codeInteger结果信息, 200表示成功。
  • 错误码
错误码消息描述
460request parameter error请求参数错误。
6100device not found设备不存在。

24. 设备主动请求配置信息

  • 数据上行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/config/get
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/config/get_reply
  • 请求数据格式:
{
  "id": 123,
  "version": "1.0",
  "params": {
    "configScope": "product",
    "getType": "file"
  },
"method": "thing.config.get"
}
  • 响应数据格式:
{
  "id": "123",
  "version": "1.0",
  "code": 200,
  "data": {
    "configId": "123dagdah",
    "configSize": 1234565,
    "sign": "123214adfadgadg",
    "signMethod": "Sha256",
    "url": "https://iotx-config.oss-cn-shanghai.aliyuncs.com/nopoll_0.4.4.tar.gz?Expires=1502955804&OSSAccessKeyId=XXXXXXXXXXXXXXXXXXXX&Signature=XfgJu7P6DWWejstKJgXJEH0qAKU%3D&security-token=CAISuQJ1q6Ft5B2yfSjIpK6MGsyN1Jx5jo6mVnfBglIPTvlvt5D50Tz2IHtIf3NpAusdsv03nWxT7v4flqFyTINVAEvYZJOPKGrGR0DzDbDasumZsJbo4f%2FMQBqEaXPS2MvVfJ%2BzLrf0ceusbFbpjzJ6xaCAGxypQ12iN%2B%2Fr6%2F5gdc9FcQSkL0B8ZrFsKxBltdUROFbIKP%2BpKWSKuGfLC1dysQcO1wEP4K%2BkkMqH8Uic3h%2Boy%2BgJt8H2PpHhd9NhXuV2WMzn2%2FdtJOiTknxR7ARasaBqhelc4zqA%2FPPlWgAKvkXba7aIoo01fV4jN5JXQfAU8KLO8tRjofHWmojNzBJAAPpYSSy3Rvr7m5efQrrybY1lLO6iZy%2BVio2VSZDxshI5Z3McKARWct06MWV9ABA2TTXXOi40BOxuq%2B3JGoABXC54TOlo7%2F1wTLTsCUqzzeIiXVOK8CfNOkfTucMGHkeYeCdFkm%2FkADhXAnrnGf5a4FbmKMQph2cKsr8y8UfWLC6IzvJsClXTnbJBMeuWIqo5zIynS1pm7gf%2F9N3hVc6%2BEeIk0xfl2tycsUpbL2FoaGk6BAF8hWSWYUXsv59d5Uk%3D",
    "getType": "file"
  }
}
  • 参数说明
参数类型说明
idString消息ID号。上行消息ID需您自定义。需定义为String类型的数字,且设备维度唯一。
versionString协议版本号,目前协议版本号为1.0。
configScopeString配置范围, 目前只支持产品维度配置。 取值:product。。
getTypeString获取配置类型。 目前支持文件类型,取值:file。
methodString请求方法,取值:thing.config.get。
configIdString配置文件的ID
configSizeLong配置文件大小,按字节计算。
signString签名。
signMethodString签名方法,仅支持Sha256。
urlString存储配置文件的对象存储(OSS)地址。
codeInteger结果码。返回200表示成功,返回其他状态码,表示失败。
  • 错误码
错误码消息描述
6713thing config function is not available产品的远程配置功能不可用,需要在控制台,远程配置页面打开配置开关。
6710no data没有配置的数据。

25. 配置信息推送下发

  • 数据下行
  • 请求Topic:/sys/{productKey}/{deviceName}/thing/config/push
  • 响应Topic:/sys/{productKey}/{deviceName}/thing/config/push_reply
  • 请求数据格式:
{
  "id": "123",
  "version": "1.0",
  "params": {
    "configId": "123dagdah",
    "configSize": 1234565,
    "sign": "123214adfadgadg",
    "signMethod": "Sha256",
    "url": "https://iotx-config.oss-cn-shanghai.aliyuncs.com/nopoll_0.4.4.tar.gz?Expires=1502955804&OSSAccessKeyId=XXXXXXXXXXXXXXXXXXXX&Signature=XfgJu7P6DWWejstKJgXJEH0qAKU%3D&security-token=CAISuQJ1q6Ft5B2yfSjIpK6MGsyN1Jx5jo6mVnfBglIPTvlvt5D50Tz2IHtIf3NpAusdsv03nWxT7v4flqFyTINVAEvYZJOPKGrGR0DzDbDasumZsJbo4f%2FMQBqEaXPS2MvVfJ%2BzLrf0ceusbFbpjzJ6xaCAGxypQ12iN%2B%2Fr6%2F5gdc9FcQSkL0B8ZrFsKxBltdUROFbIKP%2BpKWSKuGfLC1dysQcO1wEP4K%2BkkMqH8Uic3h%2Boy%2BgJt8H2PpHhd9NhXuV2WMzn2%2FdtJOiTknxR7ARasaBqhelc4zqA%2FPPlWgAKvkXba7aIoo01fV4jN5JXQfAU8KLO8tRjofHWmojNzBJAAPpYSSy3Rvr7m5efQrrybY1lLO6iZy%2BVio2VSZDxshI5Z3McKARWct06MWV9ABA2TTXXOi40BOxuq%2B3JGoABXC54TOlo7%2F1wTLTsCUqzzeIiXVOK8CfNOkfTucMGHkeYeCdFkm%2FkADhXAnrnGf5a4FbmKMQph2cKsr8y8UfWLC6IzvJsClXTnbJBMeuWIqo5zIynS1pm7gf%2F9N3hVc6%2BEeIk0xfl2tycsUpbL2FoaGk6BAF8hWSWYUXsv59d5Uk%3D",
    "getType": "file"
  },
  "method": "thing.config.push"
}
  • 响应数据格式:
{
  "id": "123",
  "code": 200,
  "data": {}
}
  • 参数说明
参数类型说明
idString消息ID号,由物联网平台生成。
versionString协议版本号,目前协议版本号为1.0。
configScopeString配置范围, 目前只支持产品维度配置。 取值:product。。
getTypeString获取配置类型。 目前支持文件类型,取值:file。
methodString请求方法,取值:thing.config.push。
configIdString配置文件的ID
configSizeLong配置大小,按字节计算。
signString签名。
signMethodString签名方法,仅支持Sha256。
urlString存储配置文件的对象存储(OSS)地址。
codeInteger结果信息, 具体请参见设备端通用code。
  • 11
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

深度物联网

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值