Republish - AWS IoT Core

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

Republish

再発行 (republish) アクションは、MQTT メッセージを別の MQTT トピックに再発行します。

要件

このルールアクションには、以下の要件があります。

  • オペレーションを実行するために が引き受け AWS IoT ることができる IAM ロールiot:Publish。詳細については、「AWS IoT ルールに必要なアクセス許可を付与する」を参照してください。

    AWS IoT コンソールで、 AWS IoT がこのルールアクションを実行できるようにするロールを選択または作成できます。

パラメータ

このアクションで AWS IoT ルールを作成するときは、次の情報を指定する必要があります。

headers

MQTT バージョン 5.0 のヘッダー情報。

詳細については、「AWS API リファレンス」の「RepublishAction」および「MqttHeaders」を参照してください。

topic

メッセージの再発行先として指定する MQTT トピック。

$ で始まる予約済みトピックに再発行するには、代わりに $$ を使用します。例えば、デバイスシャドウトピック $aws/things/MyThing/shadow/update に再発行する場合は、トピックを $$aws/things/MyThing/shadow/update として指定します。

注記

予約済みのジョブトピックへの再発行はサポートされていません。

AWS IoT Device Defender 予約トピックは HTTP パブリッシュをサポートしていません。

置換テンプレートをサポート: はい

qos

(オプション) メッセージを再発行するときに使用する Quality of Service (QoS) レベル。有効な値: 01。デフォルト値は 0 です。MQTT QoS の詳細については、「MQTT」を参照してください。

置換テンプレートをサポート: いいえ

roleArn

が MQTT トピック AWS IoT に発行することを許可する IAM ロール。詳細については、「要件」を参照してください。

置換テンプレートをサポート: いいえ

次の JSON 例では、 AWS IoT ルールで再発行アクションを定義します。

{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "republish": { "topic": "another/topic", "qos": 1, "roleArn": "arn:aws:iam::123456789012:role/aws_iot_republish" } } ] } }

次の JSON 例では、 AWS IoT ルール内の置換テンプレートを使用して再発行アクションを定義します。

{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "republish": { "topic": "${topic()}/republish", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_republish" } } ] } }

次の JSON 例では、 AWS IoT ルールの headers で再発行アクションを定義しています。

{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "republish": { "topic": "${topic()}/republish", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_republish", "headers": { "payloadFormatIndicator": "UTF8_DATA", "contentType": "rule/contentType", "correlationData": "cnVsZSBjb3JyZWxhdGlvbiBkYXRh", "userProperties": [ { "key": "ruleKey1", "value": "ruleValue1" }, { "key": "ruleKey2", "value": "ruleValue2" } ] } } } ] } }
注記

元の送信元 IP は Republish アクションには渡されません。