FROM 句 - AWS IoT Core

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

FROM 句

FROM 句はルールをトピックトピックのフィルターに受信登録します。トピックまたはトピックフィルタは、一重引用符 (') で囲みます。ここで指定されたトピックフィルタに一致する MQTT トピックに送信されるメッセージごとに、ルールがトリガーされます。トピックのフィルタを使って、類似のトピックのグループにサブスクライブできます。

例:

トピックに公開された受信ペイロード 'topic/subtopic': {temperature: 50}

トピックに公開された受信ペイロード 'topic/subtopic-2': {temperature: 50}

SQL: "SELECT temperature AS t FROM 'topic/subtopic'"

ルールが 'topic/subtopic' に受信登録されるため、受信ペイロードがルールに渡されます。ルールアクションに渡される発信ペイロードは、{t: 50} です。ルールが 'topic/subtopic-2' に受信登録されていないので、ルールは 'topic/subtopic-2' で公開されるメッセージにトリガーされません。

# ワイルドカードの例:

「#」(複数レベル) ワイルドカード文字を使用して、1 つ以上の特定のパス要素に一致させることができます。

トピックに公開された受信ペイロード 'topic/subtopic': {temperature: 50}

トピックに公開された受信ペイロード 'topic/subtopic-2': {temperature: 60}

トピックに公開された受信ペイロード 'topic/subtopic-3/details': {temperature: 70}

トピックに公開された受信ペイロード 'topic-2/subtopic-x': {temperature: 80}

SQL: "SELECT temperature AS t FROM 'topic/#'"

ルールは 'topic' で始まるすべてのトピックにサブスクライブされるため、3 回実行され、{t: 50} (topic/subtopic)、{t: 60} (topic/subtopic-2)、および {t: 70} (topic/subtopic-3/details) の送信ペイロードがアクションに送信されます。'topic-2/subtopic-x' に受信登録されていないので、{temperature: 80} のメッセージにルールはトリガーされません。

+ ワイルドカードの例:

「+」(単数レベル) ワイルドカード文字を使用して、1 つの特定のパス要素に一致させることができます。

トピックに公開された受信ペイロード 'topic/subtopic': {temperature: 50}

トピックに公開された受信ペイロード 'topic/subtopic-2': {temperature: 60}

トピックに公開された受信ペイロード 'topic/subtopic-3/details': {temperature: 70}

トピックに公開された受信ペイロード 'topic-2/subtopic-x': {temperature: 80}

SQL: "SELECT temperature AS t FROM 'topic/+'"

ルールは、2 つのパス要素のあるすべてのトピックに受信登録されていて、最初の要素は 'topic' です。ルールは 'topic/subtopic' および 'topic/subtopic-2'に送信されたメッセージに対して実行されますが、'topic/subtopic-3/details' (トピックフィルターよりも多くのレベルがある) または 'topic-2/subtopic-x' (topic で始まらない) に対しては実行されません。