Wiederveröffentlichen - AWS IoT Core

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Wiederveröffentlichen

Die Aktion neu veröffentlichen (republish) veröffentlicht eine MQTT-Nachricht erneut in einem anderen MQTT-Thema.

Voraussetzungen

Diese Regelaktion hat die folgenden Anforderungen:

  • Eine IAM-Rolle, die die Ausführung des Vorgangs übernehmen AWS IoT kann. iot:Publish Weitere Informationen finden Sie unter Gewähren Sie einer AWS IoT Regel den Zugriff, den sie benötigt.

    In der AWS IoT Konsole können Sie eine Rolle auswählen oder erstellen, um die Ausführung dieser Regelaktion AWS IoT zu ermöglichen.

Parameter

Wenn Sie eine AWS IoT Regel mit dieser Aktion erstellen, müssen Sie die folgenden Informationen angeben:

headers

Header-Informationen für MQTT Version 5.0.

Weitere Informationen finden Sie unter RepublishActionund MqttHeadersin der AWS API-Referenz.

topic

Das MQTT-Thema, für das die Nachricht erneut veröffentlicht werden soll

Um in einem reservierten Thema, das mit $ beginnt, erneut zu veröffentlichen, verwenden Sie stattdessen $$. Um zum Beispiel das Thema Geräteschatten $aws/things/MyThing/shadow/update neu zu veröffentlichen, geben Sie das Thema als $$aws/things/MyThing/shadow/update an.

Anmerkung

Das erneute Veröffentlichen zu reservierten Jobthemen wird nicht unterstützt.

AWS IoT Device Defender Reserve-Themen unterstützen die Veröffentlichung per HTTP nicht.

Unterstützt Ersatzvorlagen: Ja

qos

(Optional) Das QoS (Quality of Service)-Niveau, das verwendet werden soll, wenn Nachrichten erneut veröffentlicht werden. Zulässige Werte: 0, 1. Der Standardwert ist 0. Weitere Informationen zu MQTT QoS finden Sie unter MQTT.

Unterstützt Ersatzvorlagen: Nein

roleArn

Die IAM-Rolle, die das Veröffentlichen im MQTT-Thema ermöglicht AWS IoT . Weitere Informationen finden Sie unter Voraussetzungen.

Unterstützt Ersatzvorlagen: Nein

Beispiele

Das folgende JSON-Beispiel definiert eine Aktion zum erneuten Veröffentlichen in einer Regel. 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" } } ] } }

Das folgende JSON-Beispiel definiert eine Aktion zur erneuten Veröffentlichung mit Ersatzvorlagen in einer Regel. 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" } } ] } }

Das folgende JSON-Beispiel definiert eine Aktion zur erneuten Veröffentlichung mit headers in einer AWS IoT Regel.

{ "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" } ] } } } ] } }
Anmerkung

Die ursprüngliche Quell-IP wird bei der Aktion zur erneuten Veröffentlichung nicht weitergegeben.