

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 设置简单，便于加载和操作设备
<a name="managedintegrations-sdk-v2-cookbook-ss"></a>

通过创建托管设备并将其连接到您的集线器，将您的设备设置为加载到托管集成中心。本节介绍使用简单设置完成设备上线流程的步骤。

## 先决条件
<a name="managedintegrations-sdk-v2-cookbook-ss-prereq"></a>

在尝试加载设备之前，请完成以下步骤：
+ 将集线器设备载入托管集成中心。
+  AWS CLI 从《[托管集成 AWS CLI 命令](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/)参考》中安装最新版本的
+ 订阅 DEVICE\$1L [IFE\$1CYCLE 事件通知](managedintegrations-notifications.md#managedintegrations-notification-setup)。

**Topics**
+ [

## 先决条件
](#managedintegrations-sdk-v2-cookbook-ss-prereq)
+ [

## 步骤 1：创建凭证柜
](#managedintegrations-sdk-v2-cookbook-credential-locker)
+ [

## 第 2 步：将凭证柜添加到您的中心
](#managedintegrations-sdk-v2-cookbook-add-to-hub)
+ [

## 步骤 3：使用凭据创建托管事物。
](#managedintegrations-sdk-v2-cookbook-ss-create-managed-thing)
+ [

## 步骤 4：插入设备并检查其状态。
](#managedintegrations-sdk-v2-cookbook-ss-check-device-status)
+ [

## 步骤 5：获取设备功能
](#managedintegrations-sdk-v2-cookbook-ss-check-device-capabilities)
+ [

## 步骤 6：向托管事物发送命令
](#managedintegrations-sdk-v2-cookbook-ss-control-device)
+ [

## 第 7 步：从集线器中移除托管内容
](#managedintegrations-sdk-v2-cookbook-clean-up)

## 步骤 1：创建凭证柜
<a name="managedintegrations-sdk-v2-cookbook-credential-locker"></a>

为您的设备创建一个凭证柜。

**创建凭证柜**
+ 使用 `create-credential-locker` 命令。执行此命令将触发所有制造资源的创建，包括 Wi-Fi 设置 key pair 和设备证书。

  **create-credential-locker 示例**

  ```
  aws iot-managed-integrations create-credential-locker \
    --name "DEVICE_NAME"
  ```

  **响应：**

  ```
  {    
    "Id": "LOCKER_ID"
    "Arn": "arn:aws:iotmanagedintegrations:AWS_REGION:AWS_ACCOUNT_ID:credential-locker/LOCKER_ID
    "CreatedAt": "2025-06-09T13:58:52.977000+08:00"
  }
  ```

  有关更多信息，请参阅《托管集成[create-credential-locker](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/create-credential-locker.html)命令*参考》中的 AWS CLI 命令*。

## 第 2 步：将凭证柜添加到您的中心
<a name="managedintegrations-sdk-v2-cookbook-add-to-hub"></a>

将凭证柜添加到您的中心。

**向您的中心添加凭证柜**
+ 使用以下命令将凭证储物柜添加到您的集线器。

  ```
  aws iotmi --region AWS_REGION --endpoint AWS_ENDPOINT update-managed-thing \
  --identifier "HUB_MANAGED_THING_ID" --credential-locker-id "LOCKER_ID"
  ```

## 步骤 3：使用凭据创建托管事物。
<a name="managedintegrations-sdk-v2-cookbook-ss-create-managed-thing"></a>

使用设备凭据创建托管事物。每台设备都需要自己的托管设备。

**创建托管事物**
+ 使用`create-managed-thing`命令为您的设备创建托管事物。

  **create-managed-thing 示例**

  ```
  #ZWAVE: 
  aws iot-managed-integrations create-managed-thing --role DEVICE \
  --authentication-material '900137947003133...' \ #auth material from zwave qr code
  --authentication-material-type ZWAVE_QR_BAR_CODE \
  --credential-locker-id ${locker_id}
  
  #ZIGBEE:
  aws iot-managed-integrations create-managed-thing --role DEVICE \
  --authentication-material 'Z:286...$I:A4DC00.' \ #auth material from zigbee qr code
  --authentication-material-type ZIGBEE_QR_BAR_CODE \
  --credential-locker-id ${locker_id}
  ```
**注意**  
Z-Wave 和 Zigbee 设备有不同的命令。

  **响应：**

  ```
  {    
    "Id": "DEVICE_MANAGED_THING_ID"
    "Arn": "arn:aws:iotmanagedintegrations:AWS_REGION:AWS_ACCOUNT_ID:managed-thing/DEVICE_MANAGED_THING_ID"
    "CreatedAt": "2025-06-09T13:58:52.977000+08:00"
  }
  ```

  有关更多信息，请参阅《托管集成[create-managed-thing](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/create-managed-thing.html)命令*参考》中的 AWS CLI 命令*。

## 步骤 4：插入设备并检查其状态。
<a name="managedintegrations-sdk-v2-cookbook-ss-check-device-status"></a>

**接通设备电源并检查其状态。**
+ 使用`get-managed-thing`命令检查设备的状态。必须激活您的托管事物。 ProvisioningStatus 有关的更多信息 ProvisioningStatus，请参阅[设备配置](https://docs.aws.amazon.com/iot-mi/latest/devguide/device-provisioning.html)。

  **get-managed-thing 示例**

  ```
  #KINESIS NOTIFICATION:
  {
      "version": "1.0.0",
      "messageId": "4ac684bb7f4c41adbb2eecc1e7991xxx",
      "messageType": "DEVICE_LIFE_CYCLE",
      "source": "aws.iotmanagedintegrations",
      "customerAccountId": "12345678901",
      "timestamp": "2025-06-10T05:30:59.852659650Z",
      "region": "us-east-1",
      "resources": ["XXX"],
      "payload": {
          "deviceDetails": {
              "id": "1e84f61fa79a41219534b6fd57052XXX",
              "arn": "XXX",
              "createdAt": "2025-06-09T06:24:34.336120179Z",
              "updatedAt": "2025-06-10T05:30:59.784157019Z"
          },
          "status": "ACTIVATED"
      }
  }
  aws iot-managed-integrations get-managed-thing \
  --identifier :"DEVICE_MANAGED_THING_ID"
  ```

  **响应：**

  ```
  {    
    "Id": "DEVICE_MANAGED_THING_ID"
    "Arn": "arn:aws:iotmanagedintegrations:AWS_REGION:AWS_ACCOUNT_ID:managed-thing/MANAGED_THING_ID"
    "CreatedAt": "2025-06-09T13:58:52.977000+08:00"
  }
  ```

  有关更多信息，请参阅《托管集成[get-managed-thing](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/get-managed-thing.html)命令*参考》中的 AWS CLI 命令*。

## 步骤 5：获取设备功能
<a name="managedintegrations-sdk-v2-cookbook-ss-check-device-capabilities"></a>

使用`get-managed-thing-capabilities`命令获取您的终端节点 ID 并查看设备可能执行的操作列表。

**获取设备的功能**
+ 使用`get-managed-thing-capabilities`命令并记下端点 ID。

  **get-managed-thing-capabilties 示例**

  ```
  aws iotmi get-managed-thing-capabilities \
  --identifier "DEVICE_MANAGED_THING_ID"
  ```

  **响应：**

  ```
  {    
      "ManagedThingId": "1e84f61fa79a41219534b6fd57052cbc",
      "CapabilityReport": {
          "version": "1.0.0",
          "nodeId": "zw.FCB10009+06",
          "endpoints": [
              {
                  "id": "ENDPOINT_ID"
                  "deviceTypes": [
                      "On/Off Switch"
                  ],
                  "capabilities": [
                      {
                          "id": "matter.OnOff@1.4",
                          "name": "On/Off",
                          "version": "6",
                          "properties": [
                              "OnOff"
                          ],
                          "actions": [
                              "Off",
                              "On"
                          ],
                          "events": []
                      }
                      ...
  }
  ```

  有关更多信息，请参阅《托管集成[get-managed-thing-capabilities](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/get-managed-thing-capabilities.html)命令*参考》中的 AWS CLI 命令*。

## 步骤 6：向托管事物发送命令
<a name="managedintegrations-sdk-v2-cookbook-ss-control-device"></a>

使用该`send-managed-thing-command`命令向您的托管事物发送切换操作命令。

**向你的托管事物发送命令**
+ 使用`send-managed-thing-command`命令向您的托管事物发送命令。

  **send-managed-thing-command 示例**

  ```
  json=$(jq -cr '.|@json') <<EOF
  [
    {
      "endpointId": "1",
      "capabilities": [
        {
          "id": "matter.OnOff@1.4",
          "name": "On/Off",
          "version": "1",
          "actions": [
            {
              "name": "Toggle",
              "parameters": {}
            }
          ]
        }
      ]
    }
  ]
  EOF
  aws iot-managed-integrations send-managed-thing-command \
  --managed-thing-id "DEVICE_MANAGED_THING_ID" --endpoints "ENDPOINT_ID"
  ```
**注意**  
这个例子使用了 jq cli，但你也可以传递整个字符串 `endpointId`

  **响应：**

  ```
  {    
  "TraceId": "TRACE_ID"
  }
  ```

  有关更多信息，请参阅《托管集成[send-managed-thing-command](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/send-managed-thing-command.html)命令*参考》中的 AWS CLI 命令*。

## 第 7 步：从集线器中移除托管内容
<a name="managedintegrations-sdk-v2-cookbook-clean-up"></a>

通过移除托管的东西来清理集线器。

**删除托管事物**
+ 使用`delete-managed-thing`命令从设备中心移除托管内容。

  **delete-managed-thing 示例**

  ```
  aws iot-managed-integrations delete-managed-thing \
  --identifier "DEVICE_MANAGED_THING_ID"
  ```

  有关更多信息，请参阅《托管集成[delete-managed-thing](https://docs.aws.amazon.com/cli/latest/reference/iot-managed-integrations/delete-managed-thing.html)命令*参考》中的 AWS CLI 命令*。
**注意**  
如果设备处于某种`DELETE_IN_PROGRESS`状态，请将该`--force`标志附加到。`delete-managed-thing command`
**注意**  
对于 Z-Wave 设备，您需要在执行命令后将设备置于配对模式。