本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
步驟 3:設定要測試連線能力的 AWS IoT 裝置用戶端
本節中的程序會設定 AWS IoT 裝置用戶端來從 Raspberry Pi 發佈 MQTT 訊息。
建立組態檔
此程序會建立組態檔來測試 AWS IoT 裝置用戶端。
建立組態檔來測試 AWS IoT 裝置用戶端
-
在連接至 Raspberry Pi 本機主機電腦上的終端機視窗中:
-
輸入下列命令來建立組態檔的目錄,並設定目錄的許可:
mkdir ~/dc-configs chmod 745 ~/dc-configs
開啟文字編輯器,例如
nano
。-
複製此 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": "" } } -
使用在 在 AWS IoT Core 上佈建裝置 中找到的 AWS 帳戶 裝置資料端點取代
端點
值。 -
將文字編輯器中的檔案儲存為
~/dc-configs/dc-testconn-config.json
。 -
執行此命令來設定新組態檔的許可。
chmod 644 ~/dc-configs/dc-testconn-config.json
-
儲存檔案之後,您就可以繼續進行 開啟 MQTT 測試用戶端。
開啟 MQTT 測試用戶端
此程序會準備 AWS IoT 主控台中的 MQTT test client (MQTT 測試用戶端) 來訂閱 MQTT 訊息,AWS IoT 裝置用戶端會在執行時發佈訊息。
準備 MQTT test client (MQTT 測試用戶端) 來訂閱所有 MQTT 訊息
在 AWS IoT 主控台
的本機主機電腦上,選擇 MQTT test client (MQTT 測試用戶端)。 在 Subscribe to a topic (訂閱主題) 索引標籤的 Topic filter (主題篩選條件) 中,輸入
#
(單個井字符號),然後選擇 Subscribe (訂閱),即可訂閱每個 MQTT 主題。-
在 Subscriptions (訂閱) 標籤下方,請確認看到
#
(單個井字符號)。
在繼續進行 執行 AWS IoT 裝置用戶端 時,請讓有 MQTT test client (MQTT 測試用戶端) 的視窗保持開啟。
執行 AWS IoT 裝置用戶端
此程序會執行 AWS IoT 裝置用戶端,使其發佈 MQTT test client (MQTT 測試用戶端) 可接收和顯示的單則 MQTT 訊息。
從 AWS IoT 裝置用戶端傳送 MQTT 訊息
-
請確保這兩個連接到 Raspberry Pi 的終端機視窗和有 MQTT test client (MQTT 測試用戶端) 的視窗會在您執行此程序時顯示出來。
-
在終端機視窗中輸入這些命令,使用在 建立組態檔 中建立的組態檔來執行 AWS IoT 裝置用戶端。
cd ~/aws-iot-device-client/build ./aws-iot-device-client --config-file ~/dc-configs/dc-testconn-config.json
在終端機視窗中,AWS IoT 裝置用戶端會顯示資訊訊息和執行時所發生的任何錯誤。
如果終端機視窗中未顯示任何錯誤,請檢閱 MQTT test client (MQTT 測試用戶端)。
-
在 MQTT test client (MQTT 測試用戶端) 的 Subscriptions (訂閱) 視窗中,請參閱傳送至
test/dc/pubtopic
訊息主題的 Hello World! 訊息。 -
如果 AWS IoT 裝置用戶端未顯示任何錯誤,您會在 MQTT test client (MQTT 測試用戶端) 中看到傳送至
test/dc/pubtopic
訊息的 Hello World!,這表示您已經示範了一次成功的連線。 -
在終端機視窗中輸入
^C
(Ctrl-C),即可停止 AWS IoT 裝置用戶端。
在示範 AWS IoT 裝置用戶端正在 Raspberry Pi 上正常運作並可以與 AWS IoT 通訊之後,您就可以繼續進行 教學課程:示範 MQTT 訊息與 AWS IoT 裝置用戶端通訊。