翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
でディテクターモデルをテストするための入力の送信 AWS IoT Events
でテレメトリデータを受信する方法はいくつかあります AWS IoT Events (「」を参照でデータを受信してアクションをトリガーするためのサポートされているアクション AWS IoT Events)。このトピックでは、ディ AWS IoT Events テクターへの入力としてメッセージを転送する AWS IoT ルールを AWS IoT コンソールで作成する方法について説明します。 AWS IoT コンソールのMQTTクライアントを使用してテストメッセージを送信できます。この方法を使用して、デバイスが AWS IoT メッセージブローカーを使用してMQTTメッセージを送信できる AWS IoT Events ときにテレメトリデータを取得できます。
ディテクターモデルをテストするための入力を送信するには
-
AWS IoT Core コンソール
を開きます。左側のナビゲーションペインの [管理] で [メッセージルーティング] を選択し、[ルール] を選択します。 -
右上の [ルールを作成] を選択します。
-
[ルールを作成] ページで、次の手順を完了します。
-
ステップ 1 ルールプロパティを指定します。以下のフィールドに値を入力します。
-
ルール名。
MyIoTEventsRule
などのルールの名前を入力します。注記
空白は使用しないでください。
-
ルールの説明 これはオプションです。
-
[Next (次へ)] を選択します。
-
-
ステップ 2 SQL ステートメント を設定します。以下のフィールドに値を入力します。
-
SQL バージョン 。リストから適切なオプションを選択します。
-
SQL ステートメント。
SELECT *, topic(2) as motorid FROM 'motors/+/status'
と入力します。
[次へ] を選択します。
-
-
ステップ 3 ルールアクションをアタッチします。「ルールアクション」セクションで、以下を完了します。
-
アクション 1 IoT イベントを選択します。次のフィールドが表示されます。
-
入力名 リストから適切なオプションを選択します。自分の入力が表示されない場合は、[更新] を選択します。
新しい入力を作成するには、[IoT イベント入力を作成] を選択します。以下のフィールドに値を入力します。
-
入力名
PressureInput
と入力します。 -
説明。これはオプションです。
-
JSON ファイル をアップロードします。JSON ファイルのコピーをアップロードします。ファイルがない場合は、この画面上のサンプルファイルへのリンクが表示されます。コードには以下が含まれます。
{ "motorid": "Fulton-A32", "sensorData": { "pressure": 23, "temperature": 47 } }
-
入力属性を選択します。適切なオプションを選択します。
-
タグ これはオプションです。
[作成] を選択します。
[ルールを作成] 画面に戻り、[入力名] フィールドを更新します。 作成したばかりの入力を選択します。
-
-
バッチモード これはオプションです。ペイロードがメッセージの配列の場合は、このオプションを選択します。
-
メッセージ ID これはオプションですが推奨されます。
-
IAM ロール 。リストから適切なロールを選択します。ロールがリストにない場合は、[新しいロールを作成] を選択します。
ロール名を入力し、[作成] を選択します。
別のルールを追加するには、[ルールアクションを追加] を選択します。
-
-
エラーアクション このセクションはオプションです。アクションを追加するには、[エラーアクションを追加] を選択し、リストから適切なアクションを選択します。
表示されるフィールドに入力します。
-
[Next (次へ)] を選択します。
-
-
ステップ 4 確認して作成します。画面上の情報を確認し、[作成] を選択します。
-
-
左側のナビゲーションペインのテスト で、MQTTテストクライアント を選択します。
-
[トピックに発行] を選択します。以下のフィールドに値を入力します。
-
トピック名
motors/Fulton-A32/status
などのメッセージを識別する名前を入力します。 -
メッセージのペイロード。次のように入力します。
{ "messageId": 100, "sensorData": { "pressure": 39 } }
注記
新しいメッセージを発行するたびに、
messageId
を変更します。
-
-
発行の場合、トピックは同じままにしますが、ペイロードの
"pressure"
を、ディテクターモデルで指定したしきい値 (85
など) よりも大きい値に変更します。 -
[発行] を選択します。
作成したディテクターインスタンスは Amazon SNS メッセージを生成して送信します。圧力しきい値 (この例では 70) を超えるまたは下回る圧力測定値を含むメッセージを送信し続けて、ディテクターがオペレーションしていることを確認します。
この例では、通常状態に戻すには、圧力読み取り値がしきい値を下回る 3 つのメッセージを送信し、過圧状態がクリアされたことを示す Amazon SNS メッセージを受信する必要があります。正常状態に戻ると、圧力測定値が制限を超えるメッセージが 1 つあると、ディテクターは危険状態になり、その状態を示す Amazon SNS メッセージを送信します。
簡単な入力とディテクターモデルを作成したので、次のことを試してください。
-
コンソールで他のディテクターモデルの例 (テンプレート) を参照してください。
-
の手順に従ってを使用して 2 つの状態の AWS IoT Events ディテクターを作成する CLI、 を使用して入力モデルとディテクターモデルを作成します。 AWS CLI
-
イベントで使用される イベントデータをフィルタリング、変換、処理する式 の詳細を学びます。
-
でデータを受信してアクションをトリガーするためのサポートされているアクション AWS IoT Events についてはこちら。
-
何かが機能していない場合は、トラブルシューティング AWS IoT Events を参照してください。