

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

# 配置 Amazon IoT 设备客户端以测试连通性
配置 Device Client 并测试连接

本节中的步骤将 Amazon IoT 设备客户端配置为从您的 Raspberry Pi 发布 MQTT 消息。

**Topics**
+ [

## 创建配置文件
](#iot-dc-install-dc-configure-step1)
+ [

## 打开 MQTT 测试客户端
](#iot-dc-install-dc-configure-step2)
+ [

## 运行 Amazon IoT 设备客户端
](#iot-dc-install-dc-configure-step3)

## 创建配置文件


此过程创建配置文件来测试 Amazon IoT 设备客户端。

**创建用于测试 Amazon IoT 设备客户端的配置文件**
+ 在连接到 Raspberry Pi 的本地主机的终端窗口中：

  1. 输入这些命令为配置文件创建目录并设置对该目录的权限：

     ```
     mkdir ~/dc-configs
     chmod 745 ~/dc-configs
     ```

  1. 打开文本编辑器，例如 `nano`。

  1. 复制此 JSON 文档并将其粘贴到打开的文本编辑器中。

     ```
     {
       "endpoint": "a3qEXAMPLEaffp-ats.iot.us-west-2.amazonaws.com",
       "cert": "~/certs/testconn/device.pem.crt",
       "key": "~/certs/testconn/private.pem.key",
       "root-ca": "~/certs/AmazonRootCA1.pem",
       "thing-name": "DevCliTestThing",
       "logging": {
         "enable-sdk-logging": true,
         "level": "DEBUG",
         "type": "STDOUT",
         "file": ""
       },
       "jobs": {
         "enabled": false,
         "handler-directory": ""
       },
       "tunneling": {
         "enabled": false
       },
       "device-defender": {
         "enabled": false,
         "interval": 300
       },
       "fleet-provisioning": {
         "enabled": false,
         "template-name": "",
         "template-parameters": "",
         "csr-file": "",
         "device-key": ""
       },
       "samples": {
         "pub-sub": {
           "enabled": true,
           "publish-topic": "test/dc/pubtopic",
           "publish-file": "",
           "subscribe-topic": "test/dc/subtopic",
           "subscribe-file": ""
         }
       },
       "config-shadow": {
         "enabled": false
       },
       "sample-shadow": {
         "enabled": false,
         "shadow-name": "",
         "shadow-input-file": "",
         "shadow-output-file": ""
       }
     }
     ```

  1. 将该*endpoint*值替换为您在中找到的设备数据端点[在中配置您的设备 Amazon IoT Core](iot-dc-install-provision.md#iot-dc-install-dc-provision)。 Amazon Web Services 账户 

  1. 将文本编辑器中的文件保存为 **\$1/dc-configs/dc-testconn-config.json**。

  1. 运行这个命令在新文件上设置权限

     ```
     chmod 644 ~/dc-configs/dc-testconn-config.json
     ```

保存文件后，您已准备就绪继续 [打开 MQTT 测试客户端](#iot-dc-install-dc-configure-step2)。

## 打开 MQTT 测试客户端


此过程使 Amazon IoT 控制台中的 **MQTT 测试客户端**做好订阅 Amazon IoT 设备客户端运行时发布的 MQTT 消息的准备。

**准备 **MQTT 测试客户端**订阅所有 MQTT 消息**

1. 在本地主机上，在[Amazon IoT 控制台](https://console.amazonaws.cn//iot/home#/test)，选择**MQTT 测试客户端**。

1. 在**订阅主题**选项卡的**主题筛选条件**中输入 **\$1**（单个井号），然后选择**订阅**来订阅每个 MQTT 主题。

1. 在**订阅**标签下，确认您看见 **\$1**（单个井号）。

让窗口的 **MQTT 测试客户端** 保持打开，继续 [运行 Amazon IoT 设备客户端](#iot-dc-install-dc-configure-step3)。

## 运行 Amazon IoT 设备客户端


此过程运行 Amazon IoT 设备客户端，以便它发布一条 MQTT **测试客户端接收并显示的 MQTT** 消息。

**从 Amazon IoT 设备客户端发送 MQTT 消息**

1. 在执行此步骤时，确保连接到 Raspberry Pi 的终端窗口和带 **MQTT 测试客户端**可见。

1. 在终端窗口中，输入这些命令以使用中创建的配置文件运行 Amazon IoT 设备客户端[创建配置文件](#iot-dc-install-dc-configure-step1)。

   ```
   cd ~/aws-iot-device-client/build
   ./aws-iot-device-client --config-file ~/dc-configs/dc-testconn-config.json
   ```

   在终端窗口中， Amazon IoT 设备客户端显示信息消息以及运行时出现的任何错误。

   如果终端窗口中没有显示错误，请查看 **MQTT 测试客户端**。

1. 在 **MQTT 测试客户端**的“订阅”窗口中，查看发送到 `test/dc/pubtopic` 消息主题的 *Hello World\$1* 消息。

1. 如果 Amazon IoT 设备客户端没有显示任何错误并且你看到 *Hello World！* 发送到 **MQTT 测试客户端**中的`test/dc/pubtopic`消息时，您已演示连接成功。

1. 在终端窗口中，输入 **^C** (Ctrl-C) 以停止 Amazon IoT 设备客户端。

在您证明 Amazon IoT 设备客户端在 Raspberry Pi 上运行正常，并且可以与之通信之后 Amazon IoT，您可以继续[教程：演示与 Amazon IoT 设备客户端的 MQTT 消息通信](iot-dc-testconn.md)。