使用 建立兩個狀態的 AWS IoT Events 偵測器 CLI - AWS IoT Events

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 建立兩個狀態的 AWS IoT Events 偵測器 CLI

在此範例中,我們使用 AWS CLI 命令呼叫 AWS IoT Events APIs來建立偵測器,以建立引擎的兩種狀態模型:正常狀態和過壓條件。

當引擎中測量到的壓力超過特定閾值時,模型會轉換到過壓狀態,並傳送 Amazon Simple Notification Service (AmazonSNS) 訊息,提醒技術人員注意 條件。當壓力降至連續三個壓力讀數的閾值以下時,模型會返回正常狀態,並傳送另一個 Amazon SNS 訊息,以確認條件已清除。我們需要連續三個低於壓力閾值的讀數,以消除在非線性復原階段或一次性異常復原讀取的情況下,可能發生的過壓/正常訊息間斷。

以下是建立偵測器的步驟概觀。

建立輸入

若要監控您的裝置和程序,它們必須能夠將遙測資料匯入 AWS IoT Events。方法是將訊息作為輸入傳送到 AWS IoT Events。您可以數種方式來執行此動作:

  • 使用 BatchPutMessage操作。這種方法很簡單,但需要您的裝置或程序能夠透過 SDK或 存取 AWS IoT Events API AWS CLI。

  • 在 中 AWS IoT Core,為將訊息資料轉送至 的 AWS IoT Core 規則引擎撰寫AWS IoT Events 動作規則 AWS IoT Events。這會依名稱識別輸入。如果您的裝置或程序可以或已經透過 傳送訊息,請使用此方法 AWS IoT Core。此方法通常需要較少的裝置運算能力。

  • 在 中 AWS IoT Analytics,使用 CreateDataset操作建立具有 的資料集contentDeliveryRules,以指定 AWS IoT Events 輸入,其中資料集內容會自動傳送。如果您想要根據 中彙總或分析的資料來控制裝置或程序,請使用此方法 AWS IoT Analytics。

在您的裝置以這種方式傳送資料之前,您必須定義一或多個輸入。若要這麼做,請為每個輸入命名,並指定輸入監控的傳入訊息資料中的哪些欄位。

建立偵測器模型

使用狀態 建立偵測器模型 (設備或程序的模型)。針對每個狀態,定義評估傳入輸入的條件式 (布林) 邏輯,以偵測重大事件。偵測到事件時,它可以變更狀態,或使用其他服務啟動自訂建置或預先定義的動作 AWS 。您可以定義其他事件,這些事件會在進入或退出狀態時啟動動作,也可以在符合條件時選擇性地啟動動作。

監控數個裝置或程序

如果您正在監控多個裝置或程序,並且想要分別追蹤每個裝置或程序,請在每個輸入中指定一個欄位,以識別輸入來源的特定裝置或程序。請參閱 中的 key 欄位CreateDetectorModel。識別新裝置時 (在 識別的輸入欄位中看到新值key),會建立偵測器執行個體。新的偵測器執行個體會繼續回應來自該特定裝置的輸入,直到更新或刪除偵測器模型為止。您擁有多達 個唯一的偵測器 (執行個體),因為輸入key欄位中有唯一的值。

監控單一裝置或程序

如果您正在監控單一程序 (即使多個裝置或子程序正在傳送輸入),也不會指定唯一的識別key欄位。在此情況下,會在第一個輸入到達時建立單一偵測器 (執行個體)。例如,您可能在房屋的每個房間都有溫度感測器,但只有一個HVAC單位來加熱或冷卻整個房屋。因此,即使每個房間佔用者都希望投票 (輸入) 勝出,您仍然只能以單一程序控制。

從裝置或程序傳送訊息,作為偵測器模型的輸入

我們描述了從裝置或程序傳送訊息的幾種方法,作為輸入 中 AWS IoT Events 偵測器的輸入。在您建立輸入並建置偵測器模型之後,即可開始傳送資料。

注意

當您建立偵測器模型或更新現有模型時,新或更新的偵測器模型開始接收訊息和建立偵測器 (執行個體) 之前,需要幾分鐘的時間。如果偵測器模型已更新,在此期間,您可能會繼續看到以先前版本為基礎的行為。