全部產品
Search
文件中心

IoT Platform:裝置身份註冊

更新時間:Jun 30, 2024

裝置上線之前您需要對裝置進行身份註冊,標識您的裝置。

概述

接入物聯網平台的裝置身份註冊有兩種方式:

子裝置的MQTT動態註冊

  • 請求Topic:/sys/${productKey}/${deviceName}/thing/sub/register

  • 響應Topic:/sys/${productKey}/${deviceName}/thing/sub/register_reply

請求資料格式:

{
  "id": "123",
  "version": "1.0",
  "sys":{
      "ack":0
  },
  "params": [
    {
      "deviceName": "deviceName1234",
      "productKey": "a1234******"
    }
  ],
  "method": "thing.sub.register"
}

響應資料格式:

{
  "id": "123",
  "code": 200,
  "data": [
    {
      "iotId": "12344",
      "productKey": "a1234******",
      "deviceName": "deviceName1234",
      "deviceSecret": "xxxxxx"
    }
  ]
}

參數說明如下表。

參數

類型

說明

id

String

訊息ID號。String類型的數字,取值範圍0~4294967295,且每個訊息ID在當前裝置中具有唯一性。

version

String

協議版本號碼,目前協議版本號碼唯一取值為1.0。

sys

Object

擴充功能的參數,其下包含各功能欄位。

說明

使用裝置端SDK開發時,如果未設定擴充功能,則無此參數,相關功能保持預設配置。

ack

Integer

sys下的擴充功能欄位,表示是否返迴響應資料。

  • 1:雲端返迴響應資料。

  • 0:雲端不返迴響應資料。

重要

該功能配置說明,請參見物模型使用樣本

如果未配置該功能,則無此參數,雲端預設返迴響應資料。

params

List

子裝置動態註冊的參數。

deviceName

String

子裝置的名稱。

productKey

String

子裝置的產品ProductKey。

iotId

String

裝置的唯一標識ID。

deviceSecret

String

裝置密鑰。

method

String

要求方法,取值thing.sub.register

code

Integer

結果資訊。

錯誤碼說明如下表。

錯誤碼

訊息

描述

460

request parameter error

請求參數錯誤。

6402

topo relation cannot add by self

裝置不能將自己添加為自己的子裝置。

401

request auth error

簽名校正失敗。

直連裝置的HTTPS動態註冊

  • URL模板:https://iot-auth.${YourRegionId}.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=a1234******&deviceName=deviceName1234&random=567345&sign=adfv123hdfdh&signMethod=HmacMD5

    響應資料格式:

    {
      "code": 200,
      "data": {
        "productKey": "a1234******",
        "deviceName": "deviceName1234",
        "deviceSecret": "adsfw******"
      },
      "message": "success"
    }

    參數說明如下表。

    參數

    類型

    說明

    Method

    String

    要求方法,只支援POST。

    Host

    String

    HTTPS動態註冊的裝置接入地址,格式為iot-auth.${YourRegionId}.aliyuncs.com

    ${YourRegionId}:請替換為您的物聯網平台裝置所在地區的Region ID。

    • 支援HTTPS動態註冊的地區:除華北2(北京)、華南1(深圳)以外的所有地區。

    • Region ID表達方法,請參見支援的地區

    Content-Type

    String

    裝置發送給物聯網平台的上行資料的編碼格式。

    productKey

    String

    產品唯一標識。

    deviceName

    String

    裝置名稱。

    random

    String

    隨機數。

    sign

    String

    簽名。

    加簽方法:

    1. 將所有提交給伺服器的參數(signsignMethod除外)按照字母順序排序,然後將參數和值依次拼接(無拼接符號)。

    2. 通過signMethod指定的加簽演算法,使用產品的ProductSecret,對加簽內容進行加簽。

    加簽計算樣本如下:

    hmac_sha1(productSecret, deviceNamedeviceName1234productKeya1234******random123)

    signMethod

    String

    簽名方法,目前支援hmacmd5、hmacsha1、hmacsha256。

    code

    Integer

    結果資訊。

    deviceSecret

    String

    裝置密鑰。