連接您的 Sidewalk 裝置並檢視上行中繼資料格式 - AWS IoT Wireless

連接您的 Sidewalk 裝置並檢視上行中繼資料格式

於本教學課程中,您將會使用 MQTT 測試用戶端來測試連線,並查看在您終端裝置和 AWS 雲端 之間的訊息交換。如要接收訊息,請於 MQTT 測試用戶端中訂閱在建立目的地的 IoT 規則時所指定的主題。您還可使用 SendDataToWirelessDevice API 操作,將下行訊息從適用於 Amazon Sidewalk 的 AWS IoT Core 傳送至您的裝置。您可啟用訊息傳遞狀態事件通知,確認訊息已傳遞。

注意

如需連接硬體平台並進行設定的相關資訊,請參閱《Amazon Sidewalk 文件》中的佈建和註冊終端裝置設定硬體開發套件 (HDK)

使用 SendDataToWirelessDevice API 操作或 send-data-to-wireless-device CLI 指令,將下行訊息從適用於 Amazon Sidewalk 的 AWS IoT Core 傳送至您的 Sidewalk 終端裝置。下列顯示如何執行此命令的範例。承載資料是要傳送的二進位,以 base64 編碼。

aws iotwireless send-data-to-wireless-device \ --id "<Wireless_Device_ID>" \ --payload-data "SGVsbG8gVG8gRGV2c2lt" \ --wireless-metadata Sidewalk={Seq=1,AckModeRetryDurationSecs=10}

下列顯示執行此命令的範例輸出,這是傳送至裝置的下行訊息 ID。

{ MessageId: "6011dd36-0043d6eb-0072-0008" }
注意

SendDataToWirelessDevice API 可以傳回訊息 ID,但該訊息可能無法成功傳遞。如要檢查傳送至裝置的訊息狀態,您可為 Sidewalk 帳戶和裝置啟用訊息傳遞狀態事件。如需如何啟用這些事件的詳細資訊,請參閱 Sidewalk 資源的事件通知。如需此事件類型的詳細資訊,請參閱訊息傳遞事件

在連接至您的裝置後,您可訂閱主題 (例如,project/sensor/observed),此主題是您在建立目的地規則,並從裝置觀察上行訊息時所指定的。

若您在建立目的地時指定了主題名稱,則可訂閱從您終端裝置監控上行訊息的主題。請移至 AWS IoT 主控台之測試頁面上的 MQTT 測試用戶端,輸入主題名稱 (例如,project/sensor/observed),接著選擇訂閱

下列範例顯示從 Sidewalk 裝置傳送至 AWS IoT 之上行訊息的格式。WirelessMetadata 包含有關訊息請求的中繼資料。

{ "PayloadData":"ZjRlNjY1ZWNlNw==", "WirelessDeviceId":"wireless_device_id", "WirelessMetadata":{ "Sidewalk":{ "CmdExStatus":"Cmd", "SidewalkId":"device_id", "Seq":0, "MessageType":"messageType" } } }

下表顯示上行中繼資料中不同參數的定義。此 device-id 是無線裝置的 ID,如 ABCDEF1234,而 messageType 是從裝置所接收之上行訊息的類型。

Sidewalk 上行中繼資料參數
參數 描述 類型 必要
PayloadData

從無線裝置傳送之訊息承載。

字串
WirelessDeviceID 發送資料的無線裝置識別符 字串
Sidewalk.CmdExStatus

命令執行時間狀態。回應類型訊息應該包含狀態碼 COMMAND_EXEC_STATUS_SUCCESS。不過,通知可能未包含狀態碼。

列舉
Sidewalk.NackExStatus

回應未確認狀態,可以是 RADIO_TX_ERRORMEMORY_ERROR

字串陣列